From bb9414494f2dce892dc85cdf4e4d0a03245c86b9 Mon Sep 17 00:00:00 2001 From: Smurf-IV Date: Sun, 2 Jul 2023 14:39:59 +0100 Subject: [PATCH] - Do not let ReSharper loose on nullables any more (Doing it by hand !) - Weekends work on Nullables (Still not complete yet) - Work on some xml intellisense warnings - Add `?` to all event type declarations - Start to work on using `##?.Invoke` for eventhandlers - Replace `new()` with a standard format so that ?## new() is not confusing #1020 --- .../Krypton Toolkit Suite 2022 - VS2022.sln | 12 + ...oolkit Suite 2022 - VS2022.sln.DotSettings | 3 + .../Control Docking/KryptonAutoHiddenGroup.cs | 4 +- .../Control Docking/KryptonAutoHiddenPanel.cs | 10 +- .../KryptonAutoHiddenSlidePanel.cs | 61 +- .../KryptonDockableNavigator.cs | 6 +- .../KryptonDockableWorkspace.cs | 9 +- .../Control Docking/KryptonDockspace.cs | 2 +- .../Control Docking/KryptonFloatingWindow.cs | 47 +- .../Control Docking/KryptonFloatspace.cs | 2 +- .../Control Docking/KryptonSpace.cs | 83 +- .../Dragging/DockingDragManager.cs | 4 +- .../Dragging/DockingDragTargetProvider.cs | 2 +- .../Dragging/DragTargetControlEdge.cs | 7 +- .../Elements Base/DockingElement.cs | 2 +- .../KryptonDockingAutoHiddenGroup.cs | 9 +- .../Elements Impl/KryptonDockingControl.cs | 17 +- .../Elements Impl/KryptonDockingDockspace.cs | 10 +- .../KryptonDockingEdgeAutoHidden.cs | 19 +- .../Elements Impl/KryptonDockingEdgeDocked.cs | 65 +- .../KryptonDockingFloatingWindow.cs | 8 +- .../Elements Impl/KryptonDockingFloatspace.cs | 10 +- .../Elements Impl/KryptonDockingManager.cs | 187 +- .../Elements Impl/KryptonDockingNavigator.cs | 45 +- .../Elements Impl/KryptonDockingSpace.cs | 13 +- .../Elements Impl/KryptonDockingWorkspace.cs | 24 +- .../ButtonSpecNavFixedConverter.cs | 2 +- .../ButtonSpecNavManagerLayoutHeaderBar.cs | 4 +- .../Controller/DragViewController.cs | 6 +- .../Controller/OutlookMiniController.cs | 9 +- .../Controls Navigator/KryptonNavigator.cs | 217 +- .../Controls Visuals/VisualPopupPage.cs | 99 +- .../Converters/BarItemSizingConverter.cs | 10 +- .../Converters/ButtonDisplayConverter.cs | 10 +- .../Converters/ButtonDisplayLogicConverter.cs | 10 +- .../Converters/CloseButtonActionConverter.cs | 10 +- .../ContextButtonActionConverter.cs | 5 +- .../DirectionButtonActionConverter.cs | 9 +- .../MapKryptonPageImageConverter.cs | 24 +- .../Converters/MapKryptonPageTextConverter.cs | 29 +- .../Converters/NavigatorModeConverter.cs | 40 +- .../PaletteButtonSpecStyleConverter.cs | 42 +- .../Converters/PopupPageAllowConverter.cs | 8 +- .../Converters/PopupPagePositionConverter.cs | 28 +- .../Dragging/DragFeedback.cs | 2 +- .../Krypton.Navigator/Dragging/DragManager.cs | 4 +- .../Krypton.Navigator/Dragging/DragTarget.cs | 2 +- .../Dragging/DropDockingIndicatorsRounded.cs | 23 +- .../Dragging/DropDockingIndicatorsSquare.cs | 18 +- .../Dragging/DropSolidWindow.cs | 2 +- .../Krypton.Navigator/General/Definitions.cs | 6 +- .../Navigator/KryptonNavigatorActionList.cs | 8 +- .../Navigator/KryptonNavigatorDesigner.cs | 81 +- .../Navigator/KryptonPageDesigner.cs | 10 +- .../Krypton.Navigator/Page/KryptonPage.cs | 273 +- .../Krypton.Navigator/Palette/NavigatorBar.cs | 4 +- .../Palette/NavigatorButton.cs | 14 +- .../ViewBuilderBarRibbonTabBase.cs | 2 +- .../ViewBuilderBarRibbonTabGroup.cs | 14 +- .../View Builder/ViewBuilderBarTabBase.cs | 2 +- .../View Builder/ViewBuilderBarTabGroup.cs | 11 +- .../View Builder/ViewBuilderBase.cs | 32 +- .../ViewBuilderHeaderBarTabGroup.cs | 19 +- .../View Builder/ViewBuilderHeaderGroup.cs | 2 +- .../View Builder/ViewBuilderItemBase.cs | 12 +- .../View Builder/ViewBuilderOutlookBase.cs | 57 +- .../ViewBuilderStackCheckButtonBase.cs | 14 +- .../View Builder/ViewletHeaderGroup.cs | 4 +- .../View Draw/ViewDrawNavCheckButtonBar.cs | 2 +- .../View Draw/ViewDrawNavCheckButtonBase.cs | 12 +- .../View Draw/ViewDrawNavCheckButtonStack.cs | 2 +- .../View Draw/ViewDrawNavCheckButtonTab.cs | 2 +- .../View Draw/ViewDrawNavOutlookMini.cs | 2 +- .../View Draw/ViewDrawNavOutlookOverflow.cs | 2 +- .../View Draw/ViewDrawNavOutlookStack.cs | 2 +- .../View Draw/ViewDrawNavRibbonTab.cs | 22 +- .../View Layout/ViewLayoutBar.cs | 34 +- .../View Layout/ViewLayoutBarForTabs.cs | 2 +- .../View Layout/ViewLayoutDockerOverlap.cs | 2 +- .../View Layout/ViewLayoutInsetOverlap.cs | 2 +- .../View Layout/ViewLayoutOutlookFull.cs | 2 +- .../View Layout/ViewLayoutOutlookMini.cs | 2 +- .../View Layout/ViewLayoutPageHide.cs | 2 +- .../View Layout/ViewLayoutPageShow.cs | 2 +- .../View Layout/ViewLayoutPopupPage.cs | 2 +- .../Controller/AppButtonController.cs | 6 +- .../Controller/AppTabController.cs | 6 +- .../Controller/CollapsedGroupController.cs | 10 +- .../Controller/ContextClickController.cs | 2 +- .../Controller/GalleryButtonController.cs | 2 +- .../Controller/GalleryItemController.cs | 2 +- .../Controller/GroupButtonController.cs | 6 +- .../Controller/GroupCheckBoxController.cs | 4 +- .../Controller/GroupRadioButtonController.cs | 4 +- .../Controller/LeftDownButtonController.cs | 2 +- .../Controller/LeftUpButtonController.cs | 2 +- .../Controller/QATExtraButtonController.cs | 2 +- .../Controller/RecentDocController.cs | 2 +- .../Controller/RepeatButtonController.cs | 2 +- .../Controller/RibbonTabController.cs | 4 +- .../Controller/RibbonTabsController.cs | 2 +- .../Controller/ViewHighlightController.cs | 4 +- .../Controls Ribbon/KryptonGallery.cs | 30 +- .../Controls Ribbon/KryptonGalleryRange.cs | 2 +- .../Controls Ribbon/KryptonRibbon.cs | 82 +- .../Controls Ribbon/KryptonRibbonContext.cs | 2 +- .../Controls Ribbon/KryptonRibbonGroup.cs | 16 +- .../Controls Ribbon/KryptonRibbonQATButton.cs | 6 +- .../Controls Ribbon/KryptonRibbonRecentDoc.cs | 2 +- .../Controls Ribbon/KryptonRibbonTab.cs | 6 +- .../Controls Visuals/KeyTipControl.cs | 4 +- .../Controls Visuals/VisualPopupAppMenu.cs | 44 +- .../Controls Visuals/VisualPopupGroup.cs | 4 +- .../Controls Visuals/VisualPopupMinimized.cs | 5 +- .../VisualPopupQATOverflow.cs | 6 +- .../Action Lists/KryptonGalleryActionList.cs | 4 +- .../Action Lists/KryptonRibbonActionList.cs | 4 +- .../Designers/KryptonGalleryDesigner.cs | 5 +- .../Designers/KryptonRibbonDesigner.cs | 6 +- .../KryptonRibbonGroupClusterDesigner.cs | 2 +- .../Designers/KryptonRibbonGroupDesigner.cs | 14 +- .../KryptonRibbonGroupLinesDesigner.cs | 10 +- .../KryptonRibbonGroupSeparatorDesigner.cs | 6 +- .../KryptonRibbonGroupTripleDesigner.cs | 12 +- .../Designers/KryptonRibbonTabDesigner.cs | 6 +- .../General/AppButtonMenuProvider.cs | 6 +- .../Krypton.Ribbon/General/Definitions.cs | 6 +- .../Krypton.Ribbon/General/DesignTimeDraw.cs | 6 +- .../KryptonRibbonGroupButton.cs | 18 +- .../KryptonRibbonGroupCheckBox.cs | 10 +- .../KryptonRibbonGroupCluster.cs | 8 +- .../KryptonRibbonGroupClusterButton.cs | 18 +- .../KryptonRibbonGroupClusterColorButton.cs | 58 +- .../KryptonRibbonGroupColorButton.cs | 25 +- .../KryptonRibbonGroupComboBox.cs | 52 +- .../KryptonRibbonGroupCustomControl.cs | 8 +- .../KryptonRibbonGroupDateTimePicker.cs | 28 +- .../KryptonRibbonGroupDomainUpDown.cs | 26 +- .../KryptonRibbonGroupGallery.cs | 18 +- .../Group Contents/KryptonRibbonGroupLabel.cs | 4 +- .../Group Contents/KryptonRibbonGroupLines.cs | 34 +- .../KryptonRibbonGroupMaskedTextBox.cs | 40 +- .../KryptonRibbonGroupNumericUpDown.cs | 22 +- .../KryptonRibbonGroupRadioButton.cs | 8 +- .../KryptonRibbonGroupRichTextBox.cs | 42 +- .../KryptonRibbonGroupSeparator.cs | 4 +- .../KryptonRibbonGroupTextBox.cs | 34 +- .../KryptonRibbonGroupThemeComboBox.cs | 2 +- .../KryptonRibbonGroupTrackBar.cs | 14 +- .../KryptonRibbonGroupTriple.cs | 32 +- .../Krypton.Ribbon/Palette/ContextTabSet.cs | 4 +- .../Palette/RibbonRecentDocsTitleToContent.cs | 2 +- .../Palette/RibbonThemeManager.cs | 7 +- .../Utilities/ExceptionHandler.cs | 8 +- .../View Draw/ViewDrawRibbonAppButton.cs | 9 +- .../View Draw/ViewDrawRibbonAppMenu.cs | 5 +- .../View Draw/ViewDrawRibbonAppMenuDocs.cs | 2 +- .../View Draw/ViewDrawRibbonAppMenuInner.cs | 2 +- .../View Draw/ViewDrawRibbonAppMenuOuter.cs | 2 +- .../ViewDrawRibbonAppMenuRecentDoc.cs | 23 +- .../View Draw/ViewDrawRibbonAppTab.cs | 2 +- .../View Draw/ViewDrawRibbonCaptionArea.cs | 16 +- .../ViewDrawRibbonCompoRightBorder.cs | 6 +- .../View Draw/ViewDrawRibbonComposition.cs | 4 +- .../View Draw/ViewDrawRibbonContextTitle.cs | 40 +- .../View Draw/ViewDrawRibbonDesignBase.cs | 6 +- .../View Draw/ViewDrawRibbonDesignCluster.cs | 6 +- .../View Draw/ViewDrawRibbonDesignGroup.cs | 2 +- .../ViewDrawRibbonDesignGroupContainer.cs | 10 +- .../ViewDrawRibbonDesignGroupLines.cs | 32 +- .../ViewDrawRibbonDesignGroupTriple.cs | 30 +- .../View Draw/ViewDrawRibbonDesignTab.cs | 2 +- .../View Draw/ViewDrawRibbonDropArrow.cs | 2 +- .../View Draw/ViewDrawRibbonGalleryButton.cs | 12 +- .../View Draw/ViewDrawRibbonGalleryItem.cs | 4 +- .../View Draw/ViewDrawRibbonGroup.cs | 22 +- .../View Draw/ViewDrawRibbonGroupButton.cs | 10 +- .../ViewDrawRibbonGroupButtonBackBorder.cs | 106 +- .../ViewDrawRibbonGroupButtonImage.cs | 2 +- .../ViewDrawRibbonGroupButtonText.cs | 2 +- .../View Draw/ViewDrawRibbonGroupCheckBox.cs | 14 +- .../ViewDrawRibbonGroupCheckBoxImage.cs | 6 +- .../ViewDrawRibbonGroupCheckBoxText.cs | 2 +- .../ViewDrawRibbonGroupClusterButton.cs | 6 +- .../ViewDrawRibbonGroupClusterButtonImage.cs | 2 +- .../ViewDrawRibbonGroupClusterButtonText.cs | 2 +- .../ViewDrawRibbonGroupClusterColorButton.cs | 6 +- ...wDrawRibbonGroupClusterColorButtonImage.cs | 10 +- ...ewDrawRibbonGroupClusterColorButtonText.cs | 2 +- .../ViewDrawRibbonGroupClusterEdge.cs | 6 +- .../ViewDrawRibbonGroupClusterSeparator.cs | 2 +- .../ViewDrawRibbonGroupColorButton.cs | 10 +- .../ViewDrawRibbonGroupColorButtonImage.cs | 10 +- .../ViewDrawRibbonGroupColorButtonText.cs | 2 +- .../View Draw/ViewDrawRibbonGroupComboBox.cs | 24 +- .../ViewDrawRibbonGroupCustomControl.cs | 14 +- .../ViewDrawRibbonGroupDateTimePicker.cs | 14 +- .../ViewDrawRibbonGroupDialogButton.cs | 4 +- .../ViewDrawRibbonGroupDomainUpDown.cs | 14 +- .../View Draw/ViewDrawRibbonGroupGallery.cs | 24 +- .../ViewDrawRibbonGroupGalleryImage.cs | 2 +- .../ViewDrawRibbonGroupGalleryText.cs | 2 +- .../View Draw/ViewDrawRibbonGroupImage.cs | 6 +- .../View Draw/ViewDrawRibbonGroupImageBase.cs | 4 +- .../View Draw/ViewDrawRibbonGroupLabel.cs | 10 +- .../ViewDrawRibbonGroupLabelImage.cs | 2 +- .../View Draw/ViewDrawRibbonGroupLabelText.cs | 2 +- .../ViewDrawRibbonGroupMaskedTextBox.cs | 16 +- .../ViewDrawRibbonGroupNumericUpDown.cs | 16 +- .../ViewDrawRibbonGroupRadioButton.cs | 18 +- .../ViewDrawRibbonGroupRadioButtonImage.cs | 6 +- .../ViewDrawRibbonGroupRadioButtonText.cs | 2 +- .../ViewDrawRibbonGroupRichTextBox.cs | 16 +- .../View Draw/ViewDrawRibbonGroupSeparator.cs | 10 +- .../View Draw/ViewDrawRibbonGroupText.cs | 2 +- .../View Draw/ViewDrawRibbonGroupTextBox.cs | 16 +- .../View Draw/ViewDrawRibbonGroupTitle.cs | 6 +- .../View Draw/ViewDrawRibbonGroupTrackBar.cs | 16 +- .../View Draw/ViewDrawRibbonGroupsBorder.cs | 2 +- .../ViewDrawRibbonGroupsBorderSynch.cs | 8 +- .../View Draw/ViewDrawRibbonMinimizeBar.cs | 6 +- .../View Draw/ViewDrawRibbonPanel.cs | 16 +- .../View Draw/ViewDrawRibbonQATBorder.cs | 8 +- .../View Draw/ViewDrawRibbonQATButton.cs | 6 +- .../View Draw/ViewDrawRibbonQATExtraButton.cs | 15 +- .../ViewDrawRibbonQATExtraButtonMini.cs | 2 +- .../View Draw/ViewDrawRibbonQATOverflow.cs | 2 +- .../View Draw/ViewDrawRibbonRecentDocs.cs | 2 +- .../View Draw/ViewDrawRibbonRecentShortcut.cs | 2 +- .../View Draw/ViewDrawRibbonScrollButton.cs | 16 +- .../View Draw/ViewDrawRibbonTab.cs | 44 +- .../View Draw/ViewDrawRibbonTabSep.cs | 9 +- .../View Layout/ViewLayoutRibbonAppButton.cs | 4 +- .../View Layout/ViewLayoutRibbonAppTab.cs | 2 +- .../View Layout/ViewLayoutRibbonCenter.cs | 2 +- .../ViewLayoutRibbonCenterPadding.cs | 2 +- .../ViewLayoutRibbonContextTitles.cs | 6 +- .../ViewLayoutRibbonGalleryButtons.cs | 2 +- .../ViewLayoutRibbonGalleryItems.cs | 2 +- .../ViewLayoutRibbonGroupButton.cs | 2 +- .../ViewLayoutRibbonGroupCluster.cs | 10 +- .../ViewLayoutRibbonGroupContent.cs | 6 +- .../View Layout/ViewLayoutRibbonGroupLines.cs | 16 +- .../ViewLayoutRibbonGroupTriple.cs | 14 +- .../View Layout/ViewLayoutRibbonGroups.cs | 8 +- .../View Layout/ViewLayoutRibbonGroupsArea.cs | 12 +- .../View Layout/ViewLayoutRibbonPadding.cs | 2 +- .../ViewLayoutRibbonQATContents.cs | 28 +- .../View Layout/ViewLayoutRibbonQATMini.cs | 12 +- .../View Layout/ViewLayoutRibbonRowCenter.cs | 2 +- .../View Layout/ViewLayoutRibbonScrollPort.cs | 12 +- .../View Layout/ViewLayoutRibbonScroller.cs | 10 +- .../View Layout/ViewLayoutRibbonSeparator.cs | 6 +- .../View Layout/ViewLayoutRibbonTabs.cs | 12 +- .../View Layout/ViewLayoutRibbonTabsArea.cs | 64 +- .../View Layout/ViewLayoutRibbonTabsSpare.cs | 2 +- .../View Layout/ViewLayoutRibbonTitle.cs | 2 +- .../AccurateText/AccurateText.cs | 30 +- .../Krypton.Toolkit/ButtonSpec/ButtonSpec.cs | 6 +- .../ButtonSpec/ButtonSpecCollection.cs | 10 +- .../ButtonSpec/ButtonSpecFormFixed.cs | 2 +- .../ButtonSpec/ButtonSpecManagerBase.cs | 30 +- .../ButtonSpec/ButtonSpecView.cs | 16 +- .../ContextMenu/KryptonContextMenuCheckBox.cs | 6 +- .../KryptonContextMenuCheckButton.cs | 4 +- .../KryptonContextMenuCollections.cs | 4 +- .../KryptonContextMenuColorColumns.cs | 25 +- .../KryptonContextMenuImageSelect.cs | 6 +- .../ContextMenu/KryptonContextMenuItem.cs | 6 +- .../ContextMenu/KryptonContextMenuItems.cs | 2 +- .../KryptonContextMenuLinkLabel.cs | 2 +- .../KryptonContextMenuMonthCalendar.cs | 8 +- .../KryptonContextMenuRadioButton.cs | 4 +- .../KryptonContextMenuSeparator.cs | 10 +- .../Controller/ButtonController.cs | 28 +- .../Controller/CheckBoxController.cs | 2 +- .../Controller/LinkLabelController.cs | 2 +- .../Controller/MenuCheckBoxController.cs | 4 +- .../Controller/MenuCheckButtonController.cs | 4 +- .../Controller/MenuColorBlockController.cs | 4 +- .../Controller/MenuImageSelectController.cs | 6 +- .../Controller/MenuItemController.cs | 2 +- .../Controller/MenuLinkLabelController.cs | 4 +- .../Controller/MenuRadioButtonController.cs | 4 +- .../Controller/MonthCalendarController.cs | 6 +- .../Controller/RadioButtonController.cs | 2 +- .../Controller/SeparatorController.cs | 3 +- .../Controls Toolkit/KryptonBorderEdge.cs | 2 +- .../Controls Toolkit/KryptonBreadCrumb.cs | 14 +- .../Controls Toolkit/KryptonBreadCrumbItem.cs | 2 +- .../Controls Toolkit/KryptonButton.cs | 34 +- .../Controls Toolkit/KryptonCheckBox.cs | 14 +- .../Controls Toolkit/KryptonCheckButton.cs | 6 +- .../Controls Toolkit/KryptonCheckSet.cs | 2 +- .../Controls Toolkit/KryptonCheckedListBox.cs | 67 +- .../Controls Toolkit/KryptonColorButton.cs | 27 +- .../Controls Toolkit/KryptonComboBox.cs | 104 +- .../Controls Toolkit/KryptonCommand.cs | 4 +- .../Controls Toolkit/KryptonContextMenu.cs | 13 +- .../KryptonCustomPaletteBase.cs | 169 +- .../KryptonCustomPaletteManager.cs | 2 +- .../Controls Toolkit/KryptonDataGridView.cs | 39 +- .../KryptonDataGridViewButtonCell.cs | 6 +- .../KryptonDataGridViewButtonColumn.cs | 4 +- .../KryptonDataGridViewCheckBoxCell.cs | 6 +- .../KryptonDataGridViewCheckBoxColumn.cs | 4 +- .../KryptonDataGridViewComboBoxCell.cs | 5 +- .../KryptonDataGridViewComboBoxColumn.cs | 2 +- .../KryptonDataGridViewDateTimePickerCell.cs | 4 +- ...KryptonDataGridViewDateTimePickerColumn.cs | 2 +- ...ataGridViewDateTimePickerEditingControl.cs | 2 +- .../KryptonDataGridViewDomainUpDownCell.cs | 5 +- .../KryptonDataGridViewDomainUpDownColumn.cs | 2 +- .../KryptonDataGridViewIconColumn.cs | 2 +- .../KryptonDataGridViewLinkCell.cs | 6 +- .../KryptonDataGridViewLinkColumn.cs | 2 +- .../KryptonDataGridViewMaskedTextBoxCell.cs | 5 +- .../KryptonDataGridViewMaskedTextBoxColumn.cs | 2 +- .../KryptonDataGridViewNumericUpDownCell.cs | 5 +- .../KryptonDataGridViewNumericUpDownColumn.cs | 2 +- .../KryptonDataGridViewTextBoxCell.cs | 2 +- .../KryptonDataGridViewTextBoxColumn.cs | 2 +- .../Controls Toolkit/KryptonDateTimePicker.cs | 42 +- .../Controls Toolkit/KryptonDomainUpDown.cs | 56 +- .../Controls Toolkit/KryptonDropButton.cs | 14 +- .../KryptonFolderBrowserDialog.cs | 2 +- .../Controls Toolkit/KryptonForm.cs | 55 +- .../Controls Toolkit/KryptonGroup.cs | 2 +- .../Controls Toolkit/KryptonGroupBox.cs | 4 +- .../Controls Toolkit/KryptonGroupPanel.cs | 14 +- .../Controls Toolkit/KryptonHeader.cs | 4 +- .../Controls Toolkit/KryptonHeaderGroup.cs | 8 +- .../Controls Toolkit/KryptonHelpCommand.cs | 4 +- .../Controls Toolkit/KryptonInputBox.cs | 4 +- .../KryptonIntegratedToolbarCopyCommand.cs | 4 +- .../KryptonIntegratedToolbarCutCommand.cs | 4 +- .../KryptonIntegratedToolbarNewCommand.cs | 4 +- .../KryptonIntegratedToolbarOpenCommand.cs | 4 +- ...ryptonIntegratedToolbarPageSetupCommand.cs | 4 +- .../KryptonIntegratedToolbarPasteCommand.cs | 4 +- .../KryptonIntegratedToolbarPrintCommand.cs | 4 +- ...tonIntegratedToolbarPrintPreviewCommand.cs | 4 +- ...yptonIntegratedToolbarQuickPrintCommand.cs | 4 +- .../KryptonIntegratedToolbarRedoCommand.cs | 4 +- .../KryptonIntegratedToolbarSaveAllCommand.cs | 4 +- .../KryptonIntegratedToolbarSaveAsCommand.cs | 4 +- .../KryptonIntegratedToolbarSaveCommand.cs | 4 +- .../KryptonIntegratedToolbarUndoCommand.cs | 4 +- .../Controls Toolkit/KryptonLabel.cs | 4 +- .../KryptonLanguageManager.cs | 67 +- .../Controls Toolkit/KryptonLinkLabel.cs | 2 +- .../Controls Toolkit/KryptonLinkWrapLabel.cs | 6 +- .../Controls Toolkit/KryptonListBox.cs | 72 +- .../Controls Toolkit/KryptonListItem.cs | 2 +- .../Controls Toolkit/KryptonListView.cs | 10 +- .../Controls Toolkit/KryptonManager.cs | 65 +- .../Controls Toolkit/KryptonMaskedTextBox.cs | 94 +- .../Controls Toolkit/KryptonMessageBox.cs | 31 +- .../Controls Toolkit/KryptonMonthCalendar.cs | 30 +- .../Controls Toolkit/KryptonNumericUpDown.cs | 60 +- .../Controls Toolkit/KryptonOpenFileDialog.cs | 6 +- .../Controls Toolkit/KryptonPrintDialog.cs | 6 +- .../Controls Toolkit/KryptonRadioButton.cs | 10 +- .../Controls Toolkit/KryptonRichTextBox.cs | 50 +- .../Controls Toolkit/KryptonSaveFileDialog.cs | 4 +- .../Controls Toolkit/KryptonScrollBar.cs | 9 +- .../Controls Toolkit/KryptonSeparator.cs | 26 +- .../Controls Toolkit/KryptonSplitContainer.cs | 32 +- .../Controls Toolkit/KryptonSplitterPanel.cs | 14 +- .../KryptonTableLayoutPanel.cs | 2 +- .../Controls Toolkit/KryptonTaskDialog.cs | 6 +- .../Controls Toolkit/KryptonTextBox.cs | 124 +- .../Controls Toolkit/KryptonThemeComboBox.cs | 2 +- .../Controls Toolkit/KryptonTrackBar.cs | 6 +- .../Controls Toolkit/KryptonTreeNode.cs | 2 +- .../Controls Toolkit/KryptonTreeView.cs | 111 +- .../Controls Toolkit/KryptonWebBrowser.cs | 2 +- .../Controls Toolkit/KryptonWrapLabel.cs | 6 +- .../Controls Visuals/CommonDialogHandler.cs | 2 +- .../Controls Visuals/KryptonInputBoxForm.cs | 3 +- .../Controls Visuals/KryptonMessageBoxForm.cs | 8 +- .../KryptonMultilineStringEditorForm.cs | 10 +- .../Controls Visuals/MultilineStringEditor.cs | 4 +- .../Controls Visuals/VisualBlur.cs | 12 +- .../VisualContainerControl.cs | 2 +- .../VisualContainerControlBase.cs | 8 +- .../Controls Visuals/VisualContextMenu.cs | 9 +- .../Controls Visuals/VisualControl.cs | 2 +- .../Controls Visuals/VisualControlBase.cs | 8 +- .../VisualControlContainment.cs | 2 +- .../Controls Visuals/VisualForm.cs | 39 +- .../Controls Visuals/VisualPanel.cs | 38 +- .../Controls Visuals/VisualPopup.cs | 6 +- .../Controls Visuals/VisualPopupManager.cs | 14 +- .../Controls Visuals/VisualPopupTooltip.cs | 17 +- .../Controls Visuals/VisualShadowBase.cs | 10 +- .../Controls Visuals/VisualTaskDialog.cs | 15 +- .../Converters/ButtonStyleConverter.cs | 38 +- .../Converters/DataGridViewStyleConverter.cs | 12 +- .../Converters/GridStyleConverter.cs | 10 +- .../HeaderGroupCollapseTargetConverter.cs | 9 +- .../Converters/HeaderStyleConverter.cs | 18 +- .../Converters/InputControlStyleConverter.cs | 14 +- .../KryptonLinkBehaviorConverter.cs | 6 +- .../Converters/LabelStyleConverter.cs | 30 +- .../Converters/PaletteBackStyleConverter.cs | 206 +- .../Converters/PaletteBorderStyleConverter.cs | 195 +- .../PaletteButtonOrientationConverter.cs | 12 +- .../PaletteButtonSpecStyleConverter.cs | 77 +- .../Converters/PaletteButtonStyleConverter.cs | 36 +- .../PaletteContentStyleConverter.cs | 186 +- .../Converters/PaletteDrawBordersConverter.cs | 2 +- .../Converters/PaletteImageEffectConverter.cs | 22 +- .../Converters/PaletteImageStyleConverter.cs | 30 +- .../Converters/PaletteModeConverter.cs | 104 +- .../Converters/PaletteTextTrimConverter.cs | 14 +- .../Converters/PlacementModeConverter.cs | 22 +- .../Converters/SeparatorStyleConverter.cs | 12 +- .../Converters/TabBorderStyleConverter.cs | 46 +- .../Converters/TabStyleConverter.cs | 18 +- .../KryptonBorderEdgeActionList.cs | 2 +- .../KryptonBreadCrumbActionList.cs | 2 +- .../Action Lists/KryptonButtonActionList.cs | 2 +- .../Action Lists/KryptonCheckBoxActionList.cs | 2 +- .../KryptonCheckButtonActionList.cs | 2 +- .../Action Lists/KryptonCheckSetActionList.cs | 2 +- .../KryptonCheckedListBoxActionList.cs | 2 +- .../KryptonColorButtonActionList.cs | 2 +- .../Action Lists/KryptonComboBoxActionList.cs | 2 +- .../Action Lists/KryptonCommandActionList.cs | 2 +- .../KryptonContextMenuActionList.cs | 2 +- .../KryptonDateTimePickerActionList.cs | 2 +- .../KryptonDomainUpDownActionList.cs | 2 +- .../KryptonDropButtonActionList.cs | 2 +- .../Action Lists/KryptonGroupActionList.cs | 2 +- .../Action Lists/KryptonGroupBoxActionList.cs | 2 +- .../Action Lists/KryptonHeaderActionList.cs | 2 +- .../KryptonHeaderGroupActionList.cs | 2 +- .../Action Lists/KryptonLabelActionList.cs | 2 +- .../KryptonLanguageManagerActionList.cs | 2 +- .../KryptonLinkLabelActionList.cs | 2 +- .../KryptonLinkWrapLabelActionList.cs | 2 +- .../Action Lists/KryptonListBoxActionList.cs | 2 +- .../Action Lists/KryptonListViewActionList.cs | 2 +- .../Action Lists/KryptonManagerActionList.cs | 15 +- .../KryptonMaskedTextBoxActionList.cs | 2 +- .../KryptonMonthCalendarActionList.cs | 2 +- .../KryptonNumericUpDownActionList.cs | 2 +- .../Action Lists/KryptonPaletteActionList.cs | 2 +- .../Action Lists/KryptonPanelActionList.cs | 2 +- .../KryptonPropertyGridActionList.cs | 2 +- .../KryptonRadioButtonActionList.cs | 2 +- .../KryptonRichTextBoxActionList.cs | 2 +- .../KryptonScrollBarActionList.cs | 2 +- .../KryptonSeparatorActionList.cs | 2 +- .../KryptonSplitContainerActionList.cs | 2 +- .../Action Lists/KryptonTextBoxActionList.cs | 21 +- .../Action Lists/KryptonTrackBarActionList.cs | 2 +- .../Action Lists/KryptonTreeViewActionList.cs | 2 +- .../KryptonWrapLabelActionList.cs | 2 +- .../Designers/KryptonBorderEdgeDesigner.cs | 2 +- .../Designers/KryptonBreadCrumbDesigner.cs | 6 +- .../KryptonBreadCrumbItemDesigner.cs | 2 +- .../Designers/KryptonButtonDesigner.cs | 2 +- .../Designers/KryptonCheckBoxDesigner.cs | 2 +- .../Designers/KryptonCheckButtonDesigner.cs | 2 +- .../Designers/KryptonCheckSetDesigner.cs | 2 +- .../KryptonCheckedListBoxDesigner.cs | 2 +- .../Designers/KryptonColorButtonDesigner.cs | 2 +- .../Designers/KryptonComboBoxDesigner.cs | 4 +- .../Designers/KryptonCommandDesigner.cs | 2 +- .../Designers/KryptonContextMenuDesigner.cs | 4 +- .../KryptonContextMenuItemDesigner.cs | 2 +- .../KryptonContextMenuItemsDesigner.cs | 2 +- .../KryptonDateTimePickerDesigner.cs | 4 +- .../Designers/KryptonDomainUpDownDesigner.cs | 4 +- .../Designers/KryptonDropButtonDesigner.cs | 2 +- .../Designers/KryptonGroupBoxDesigner.cs | 2 +- .../Designers/KryptonGroupDesigner.cs | 2 +- .../Designers/KryptonGroupPanelDesigner.cs | 2 +- .../Designers/KryptonHeaderDesigner.cs | 4 +- .../Designers/KryptonHeaderGroupDesigner.cs | 6 +- .../Designers/KryptonLabelDesigner.cs | 2 +- .../KryptonLanguageManagerDesigner.cs | 2 +- .../Designers/KryptonLinkLabelDesigner.cs | 2 +- .../Designers/KryptonLinkWrapLabelDesigner.cs | 2 +- .../Designers/KryptonListBoxDesigner.cs | 2 +- .../Designers/KryptonListViewDesigner.cs | 2 +- .../Designers/KryptonManagerDesigner.cs | 2 +- .../Designers/KryptonMaskedTextBoxDesigner.cs | 4 +- .../Designers/KryptonMonthCalendarDesigner.cs | 6 +- .../Designers/KryptonNumericUpDownDesigner.cs | 4 +- .../Designers/KryptonPaletteDesigner.cs | 2 +- .../Designers/KryptonPanelDesigner.cs | 4 +- .../Designers/KryptonPropertyGridDesigner.cs | 2 +- .../Designers/KryptonRadioButtonDesigner.cs | 2 +- .../Designers/KryptonRichTextBoxDesigner.cs | 4 +- .../Designers/KryptonScrollBarDesigner.cs | 2 +- .../Designers/KryptonSeparatorDesigner.cs | 2 +- .../KryptonSplitContainerDesigner.cs | 2 +- .../Designers/KryptonSplitterPanelDesigner.cs | 2 +- .../Designers/KryptonTextBoxDesigner.cs | 4 +- .../Designers/KryptonTrackBarDesigner.cs | 2 +- .../Designers/KryptonTreeViewDesigner.cs | 2 +- .../Designers/KryptonWrapLabelDesigner.cs | 2 +- .../Editors/KryptonBreadCrumbItemsEditor.cs | 4 +- .../KryptonCheckButtonCollectionEditor.cs | 2 +- .../Editors/PaletteDrawBordersEditor.cs | 2 +- .../Other/KryptonSplitContainerGlyph.cs | 2 +- .../OverrideComboBoxStyleDropDownStyle.cs | 4 +- .../UX/KryptonCheckButtonCollectionForm.cs | 2 +- .../UX/KryptonContextMenuCollectionForm.cs | 14 +- .../Krypton.Toolkit/General/BlurManager.cs | 6 +- .../Krypton.Toolkit/General/CommonHelper.cs | 62 +- .../General/ContextMenuProvider.cs | 6 +- .../Krypton.Toolkit/General/Definitions.cs | 12 +- .../General/GlobalStaticValues.cs | 2 +- .../Krypton.Toolkit/General/PlatformInvoke.cs | 34 +- .../General/Scroll Bars/HScrollSkin.cs | 4 +- .../Scroll Bars/ScrollBarExtendedRenderer.cs | 191 +- .../Scroll Bars/ScrollBarKryptonRenderer.cs | 193 +- .../General/Scroll Bars/VScrollSkin.cs | 4 +- .../Krypton.Toolkit/General/ShadowManager.cs | 14 +- .../Krypton.Toolkit/General/TooltipManager.cs | 2 +- .../General/TypedCollection.cs | 20 +- .../General/WindowStylesHelper.cs | 2 +- .../Krypton.Toolkit/General/XmlHelper.cs | 2 +- .../Palette Base/PaletteBack/PaletteBack.cs | 2 +- .../PaletteBorder/PaletteBorder.cs | 2 +- .../PaletteContent/PaletteContent.cs | 2 +- .../PaletteContent/PaletteContentImage.cs | 2 +- .../PaletteContent/PaletteContentText.cs | 2 +- .../PaletteDouble/PaletteDoubleRedirect.cs | 8 +- .../Palette Base/PaletteTools/PaletteTools.cs | 4 +- .../Palette Builtin/Base/PaletteBase.cs | 31 +- .../Bases/PaletteMicrosoft365Base.cs | 70 +- .../PaletteMicrosoft365BlackDarkMode.cs | 70 +- .../PaletteMicrosoft365BlueDarkMode.cs | 70 +- .../PaletteMicrosoft365BlueLightMode.cs | 70 +- .../PaletteMicrosoft365SilverDarkMode.cs | 70 +- .../PaletteMicrosoft365SilverLightMode.cs | 70 +- .../PaletteMicrosoft365Black.cs | 70 +- .../Bases/PaletteOffice2007Base.cs | 72 +- .../PaletteOffice2007BlackDarkMode.cs | 72 +- .../PaletteOffice2007BlueDarkMode.cs | 72 +- .../PaletteOffice2007BlueLightMode.cs | 72 +- .../PaletteOffice2007SilverDarkMode.cs | 72 +- .../PaletteOffice2007SilverLightMode.cs | 72 +- .../Bases/PaletteOffice2010Base.cs | 70 +- .../PaletteOffice2010BlackDarkMode.cs | 70 +- .../PaletteOffice2010BlueDarkMode.cs | 70 +- .../PaletteOffice2010BlueLightMode.cs | 70 +- .../PaletteOffice2010SilverDarkMode.cs | 70 +- .../PaletteOffice2010SilverLightMode.cs | 70 +- .../Bases/PaletteOffice2013Base.cs | 70 +- .../Official Themes/PaletteOffice2013White.cs | 70 +- .../PaletteVisualStudioBase.cs | 70 +- .../PaletteProfessionalOffice2003.cs | 98 +- .../Professional/PaletteProfessionalSystem.cs | 98 +- .../Sparkle/Base/PaletteSparkleBase.cs | 84 +- .../PaletteSparkleBlueDarkMode.cs | 74 +- .../KryptonPaletteButtonSpecBase.cs | 2 +- .../KryptonPaletteButtonSpecs.cs | 4 +- .../KryptonPaletteCheckButtons.cs | 10 +- .../KryptonPaletteControls.cs | 3 +- .../Palette Component/KryptonPaletteForms.cs | 3 +- .../Palette Component/KryptonPaletteGrids.cs | 2 +- .../KryptonPaletteHeaders.cs | 6 +- .../KryptonPaletteInputControls.cs | 3 +- .../Palette Component/KryptonPaletteLabels.cs | 3 +- .../Palette Component/KryptonPalettePanels.cs | 3 +- .../KryptonPaletteSeparators.cs | 5 +- .../KryptonPaletteTabButtons.cs | 7 +- .../Palette Controls/KryptonColorTable.cs | 5 - .../Palette Controls/PaletteCueHintText.cs | 2 +- .../PaletteDataGridViewContentStates.cs | 2 +- .../PaletteRedirectDropDownButton.cs | 2 +- .../Rendering/KryptonMicrosoft365Renderer.cs | 175 +- .../Rendering/KryptonOffice2007Renderer.cs | 138 +- .../Rendering/KryptonOffice2010Renderer.cs | 179 +- .../Rendering/KryptonOffice2013Renderer.cs | 175 +- .../Rendering/KryptonProfessionalRenderer.cs | 6 +- .../Rendering/KryptonSparkleRenderer.cs | 152 +- .../Krypton.Toolkit/Rendering/RenderBase.cs | 112 +- .../Rendering/RenderExpertHelpers.cs | 19 +- .../Rendering/RenderGlassHelpers.cs | 55 +- .../Rendering/RenderMicrosoft365.cs | 4 +- .../Rendering/RenderOffice2007.cs | 11 +- .../Rendering/RenderOffice2010.cs | 4 +- .../Rendering/RenderOffice2013.cs | 4 +- .../Rendering/RenderSparkle.cs | 19 +- .../Rendering/RenderStandard.cs | 1193 +- .../Krypton.Toolkit/Rendering/ThemeManager.cs | 15 +- .../ShellDialogs/FileDialogWrapper.cs | 2 +- .../ShellDialogs/ShellBrowserDialogTFM.cs | 2 +- .../Tooling/ExceptionHandler.cs | 4 +- .../Converters/PaletteModeStrings.cs | 2 +- .../Krypton.Toolkit/Utilities/BiDictionary.cs | 6 +- .../Utilities/GraphicsExtensions.cs | 2 +- .../Utilities/LanguagePackManager.cs | 2 +- .../Utilities/PaletteImageScaler.cs | 2 +- .../Utilities/RoundedRectangleF.cs | 4 +- .../Krypton.Toolkit/Values/BlurValues.cs | 4 +- .../Krypton.Toolkit/Values/ButtonValues.cs | 4 +- .../Values/ColorButtonValues.cs | 11 +- .../Values/FixedContentValue.cs | 6 +- .../Values/HeaderValuesBase.cs | 2 +- .../Values/IntegratedToolBarValues.cs | 28 +- .../Krypton.Toolkit/Values/LabelValues.cs | 2 +- .../Krypton.Toolkit/Values/ShadowValues.cs | 12 +- .../Krypton.Toolkit/View Base/ViewBase.cs | 19 +- .../View Base/ViewComposite.cs | 2 +- .../View Base/ViewContextMenuManager.cs | 2 +- .../Krypton.Toolkit/View Base/ViewControl.cs | 16 +- .../View Base/ViewDecorator.cs | 2 +- .../Krypton.Toolkit/View Base/ViewLeaf.cs | 2 +- .../Krypton.Toolkit/View Base/ViewManager.cs | 31 +- .../View Decorator/ViewDecoratorFixedSize.cs | 2 +- .../View Draw/ViewDrawBorderEdge.cs | 2 +- .../View Draw/ViewDrawButton.cs | 2 +- .../View Draw/ViewDrawCanvas.cs | 2 +- .../View Draw/ViewDrawCheckBox.cs | 2 +- .../View Draw/ViewDrawContent.cs | 2 +- .../View Draw/ViewDrawDateTimeButton.cs | 8 +- .../View Draw/ViewDrawDateTimeText.cs | 23 +- .../View Draw/ViewDrawDebug.cs | 4 +- .../View Draw/ViewDrawDocker.cs | 2 +- .../View Draw/ViewDrawDropDownButton.cs | 2 +- .../View Draw/ViewDrawEmptyContent.cs | 2 +- .../Krypton.Toolkit/View Draw/ViewDrawForm.cs | 2 +- .../View Draw/ViewDrawGroupBoxDocker.cs | 2 +- .../View Draw/ViewDrawMenuCheckBox.cs | 5 +- .../View Draw/ViewDrawMenuCheckButton.cs | 5 +- .../View Draw/ViewDrawMenuColorBlock.cs | 11 +- .../View Draw/ViewDrawMenuColorColumn.cs | 6 +- .../View Draw/ViewDrawMenuColorColumns.cs | 9 +- .../View Draw/ViewDrawMenuHeading.cs | 2 +- .../View Draw/ViewDrawMenuImageCanvas.cs | 2 +- .../View Draw/ViewDrawMenuImageColumn.cs | 2 +- .../View Draw/ViewDrawMenuImageSelectItem.cs | 4 +- .../View Draw/ViewDrawMenuItem.cs | 7 +- .../View Draw/ViewDrawMenuItemContent.cs | 2 +- .../View Draw/ViewDrawMenuLinkLabel.cs | 5 +- .../View Draw/ViewDrawMenuMonthCalendar.cs | 2 +- .../View Draw/ViewDrawMenuRadioButton.cs | 5 +- .../View Draw/ViewDrawMenuSeparator.cs | 2 +- .../View Draw/ViewDrawMonth.cs | 19 +- .../View Draw/ViewDrawMonthDayNames.cs | 6 +- .../View Draw/ViewDrawMonthDays.cs | 16 +- .../View Draw/ViewDrawMonthUpDown.cs | 8 +- .../Krypton.Toolkit/View Draw/ViewDrawNull.cs | 4 +- .../View Draw/ViewDrawPanel.cs | 4 +- .../View Draw/ViewDrawRadioButton.cs | 2 +- .../View Draw/ViewDrawScrollBar.cs | 4 +- .../View Draw/ViewDrawSeparator.cs | 2 +- .../View Draw/ViewDrawSplitCanvas.cs | 15 +- .../View Draw/ViewDrawToday.cs | 9 +- .../View Draw/ViewDrawTrackBar.cs | 36 +- .../View Draw/ViewDrawTrackPosition.cs | 2 +- .../View Draw/ViewDrawTrackTP.cs | 6 +- .../View Draw/ViewDrawTrackTicks.cs | 2 +- .../View Draw/ViewDrawTrackTrack.cs | 2 +- .../View Draw/ViewDrawWeekNumbers.cs | 16 +- .../View Layout/ViewLayoutCenter.cs | 2 +- .../View Layout/ViewLayoutColorStack.cs | 2 +- .../View Layout/ViewLayoutControl.cs | 6 +- .../View Layout/ViewLayoutCrumbs.cs | 33 +- .../View Layout/ViewLayoutDocker.cs | 4 +- .../View Layout/ViewLayoutFill.cs | 2 +- .../View Layout/ViewLayoutFit.cs | 2 +- .../View Layout/ViewLayoutMenuItemSelect.cs | 2 +- .../View Layout/ViewLayoutMenuItemsPile.cs | 6 +- .../View Layout/ViewLayoutMenuSepGap.cs | 2 +- .../View Layout/ViewLayoutMetricSpacer.cs | 2 +- .../View Layout/ViewLayoutMonths.cs | 15 +- .../View Layout/ViewLayoutNull.cs | 2 +- .../View Layout/ViewLayoutPadding.cs | 2 +- .../View Layout/ViewLayoutPile.cs | 2 +- .../View Layout/ViewLayoutScrollViewport.cs | 4 +- .../View Layout/ViewLayoutSeparator.cs | 6 +- .../View Layout/ViewLayoutStack.cs | 2 +- .../View Layout/ViewLayoutStretch.cs | 2 +- .../View Layout/ViewLayoutViewport.cs | 18 +- .../View Layout/ViewLayoutWeekCorner.cs | 4 +- .../Controls Workspace/KryptonWorkspace.cs | 63 +- .../KryptonWorkspaceCell.cs | 4 +- .../KryptonWorkspaceCollection.cs | 4 +- .../KryptonWorkspaceSequence.cs | 29 +- .../Dragging/DragTargetWorkspace.cs | 2 +- .../Dragging/DragTargetWorkspaceCellEdge.cs | 6 +- .../Dragging/DragTargetWorkspaceEdge.cs | 4 +- .../Krypton.Workspace/General/Definitions.cs | 2 +- .../Krypton.Workspace/General/StarNumber.cs | 4 +- .../Krypton.Workspace/General/StarSize.cs | 6 +- .../View Draw/ViewDrawWorkspaceSeparator.cs | 2 +- .../Workspace/KryptonWorkspaceActionList.cs | 2 +- .../KryptonWorkspaceCollectionEditor.cs | 16 +- .../Workspace/KryptonWorkspaceDesigner.cs | 4 +- .../KryptonWorkspaceSequenceDesigner.cs | 2 +- dictionary-en-gb/index.aff | 205 + dictionary-en-gb/index.d.ts | 28 + dictionary-en-gb/index.dic | 49602 ++++++++++++++++ dictionary-en-gb/index.js | 27 + dictionary-en-gb/license.txt | 347 + dictionary-en-gb/package.json | 34 + dictionary-en-gb/readme.md | 87 + 706 files changed, 56656 insertions(+), 6639 deletions(-) create mode 100644 dictionary-en-gb/index.aff create mode 100644 dictionary-en-gb/index.d.ts create mode 100644 dictionary-en-gb/index.dic create mode 100644 dictionary-en-gb/index.js create mode 100644 dictionary-en-gb/license.txt create mode 100644 dictionary-en-gb/package.json create mode 100644 dictionary-en-gb/readme.md diff --git a/Source/Krypton Components/Krypton Toolkit Suite 2022 - VS2022.sln b/Source/Krypton Components/Krypton Toolkit Suite 2022 - VS2022.sln index e3ca0d27e..9a971bff4 100644 --- a/Source/Krypton Components/Krypton Toolkit Suite 2022 - VS2022.sln +++ b/Source/Krypton Components/Krypton Toolkit Suite 2022 - VS2022.sln @@ -90,6 +90,17 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestForm", "TestForm\TestFo {F9E31BD7-42BE-48E8-92CC-74CA1871B4E6} = {F9E31BD7-42BE-48E8-92CC-74CA1871B4E6} EndProjectSection EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dictionary-en-gb", "dictionary-en-gb", "{CAB40818-55B1-4E1D-AD8E-C94642EA5124}" + ProjectSection(SolutionItems) = preProject + ..\..\dictionary-en-gb\index.aff = ..\..\dictionary-en-gb\index.aff + ..\..\dictionary-en-gb\index.d.ts = ..\..\dictionary-en-gb\index.d.ts + ..\..\dictionary-en-gb\index.dic = ..\..\dictionary-en-gb\index.dic + ..\..\dictionary-en-gb\index.js = ..\..\dictionary-en-gb\index.js + ..\..\dictionary-en-gb\license.txt = ..\..\dictionary-en-gb\license.txt + ..\..\dictionary-en-gb\package.json = ..\..\dictionary-en-gb\package.json + ..\..\dictionary-en-gb\readme.md = ..\..\dictionary-en-gb\readme.md + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Canary|Any CPU = Canary|Any CPU @@ -180,6 +191,7 @@ Global {B1BEF7ED-96F3-4BA3-AD05-428987BC2491} = {511519DD-C887-40E5-8961-658AE4CA5D46} {6C07B04E-D571-4E73-B760-180EA9DD6CC5} = {F59A6624-A207-40B8-8B1B-36FC4F4199CA} {802E9C3A-7D20-452F-B36E-83FBB2897EFD} = {405E4318-4C8A-4DC7-B624-8F7097CDFF60} + {CAB40818-55B1-4E1D-AD8E-C94642EA5124} = {56F1A41E-584B-4F91-9E98-7D8BF678210C} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {C8204ACC-48AA-49AC-8236-6E9C162EC2FA} diff --git a/Source/Krypton Components/Krypton Toolkit Suite 2022 - VS2022.sln.DotSettings b/Source/Krypton Components/Krypton Toolkit Suite 2022 - VS2022.sln.DotSettings index 334416c8c..612fcf57d 100644 --- a/Source/Krypton Components/Krypton Toolkit Suite 2022 - VS2022.sln.DotSettings +++ b/Source/Krypton Components/Krypton Toolkit Suite 2022 - VS2022.sln.DotSettings @@ -5,6 +5,8 @@ QAT <Policy Inspect="True" Prefix="" Suffix="" Style="AA_BB" /> <Policy Inspect="False" Prefix="" Suffix="" Style="AaBb" /> + True + True True True True @@ -25,6 +27,7 @@ True True True + True True False True diff --git a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenGroup.cs b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenGroup.cs index 9c73658ee..5ec75118e 100644 --- a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenGroup.cs +++ b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenGroup.cs @@ -113,10 +113,10 @@ public void StorePages(string[]? uniqueNames) if ((page is { } and not KryptonStorePage)) { // Notify that we are storing a page, so handlers can ensure it will be unique to the auto hidden location - OnStoringPage(new(page.UniqueName)); + OnStoringPage(new UniqueNameEventArgs(page.UniqueName)); // Replace the existing page with a placeholder that has the same unique name - KryptonStorePage placeholder = new(uniqueName, "AutoHiddenGroup"); + var placeholder = new KryptonStorePage(uniqueName, "AutoHiddenGroup"); Pages.Insert(Pages.IndexOf(page), placeholder); Pages.Remove(page); } diff --git a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenPanel.cs b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenPanel.cs index e92c83fa1..aefd1b022 100644 --- a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenPanel.cs +++ b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenPanel.cs @@ -37,16 +37,16 @@ public KryptonAutoHiddenPanel(DockingEdge edge) switch (edge) { case DockingEdge.Left: - Padding = new(0, 0, EXTRA_PADDING, 0); + Padding = new Padding(0, 0, EXTRA_PADDING, 0); break; case DockingEdge.Right: - Padding = new(EXTRA_PADDING, 0, 0, 0); + Padding = new Padding(EXTRA_PADDING, 0, 0, 0); break; case DockingEdge.Top: - Padding = new(0, 0, 0, EXTRA_PADDING); + Padding = new Padding(0, 0, 0, EXTRA_PADDING); break; case DockingEdge.Bottom: - Padding = new(0, EXTRA_PADDING, 0, 0); + Padding = new Padding(0, EXTRA_PADDING, 0, 0); break; default: break; @@ -104,7 +104,7 @@ public override Size GetPreferredSize(Size proposedSize) height += Padding.Vertical; } - return new(width, height); + return new Size(width, height); } #endregion } diff --git a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenSlidePanel.cs b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenSlidePanel.cs index 08339dd7c..65edb6b67 100644 --- a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenSlidePanel.cs +++ b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonAutoHiddenSlidePanel.cs @@ -12,6 +12,8 @@ // ReSharper disable MemberCanBeInternal +using Timer = System.Windows.Forms.Timer; + namespace Krypton.Docking { /// @@ -117,14 +119,14 @@ public KryptonAutoHiddenSlidePanel(Control control, DockingEdge edge, KryptonAut _checkMakeHidden = OnCheckMakeHidden!; // We need to a timer to automate sliding in and out - _slideTimer = new() + _slideTimer = new Timer { Interval = SLIDE_INTERVAL }; _slideTimer.Tick += OnSlideTimerTick!; // Timer used to delay between notification of need to slide inwards and performing actual slide - _dismissTimer = new() + _dismissTimer = new Timer { Interval = DISMISS_INTERVAL }; @@ -132,7 +134,7 @@ public KryptonAutoHiddenSlidePanel(Control control, DockingEdge edge, KryptonAut _dismissRunning = false; // Create inner panel that holds the actual dockspace and separator - _dockspaceSlide = new() + _dockspaceSlide = new KryptonDockspaceSlide { Dock = DockStyle.Fill, AutoHiddenHost = true @@ -141,12 +143,12 @@ public KryptonAutoHiddenSlidePanel(Control control, DockingEdge edge, KryptonAut _dockspaceSlide.PageAutoHiddenClicked += OnDockspacePageAutoHiddenClicked!; _dockspaceSlide.PageDropDownClicked += OnDockspacePageDropDownClicked!; - SeparatorControl = new(edge, true); + SeparatorControl = new KryptonDockspaceSeparator(edge, true); SeparatorControl.SplitterMoving += OnDockspaceSeparatorMoving!; SeparatorControl.SplitterMoved += OnDockspaceSeparatorMoved!; SeparatorControl.SplitterMoveRect += OnDockspaceSeparatorMoveRect!; - _inner = new(); + _inner = new KryptonPanel(); _inner.Controls.AddRange(new Control[] { _dockspaceSlide, SeparatorControl }); Controls.Add(_inner); @@ -154,10 +156,10 @@ public KryptonAutoHiddenSlidePanel(Control control, DockingEdge edge, KryptonAut Visible = false; // Add a Button that is not showing and used to push focus away from the dockspace - _dummyTarget = new() + _dummyTarget = new Button { - Location = new(-200, -200), - Size = new(100, 100) + Location = new Point(-200, -200), + Size = new Size(100, 100) }; Controls.Add(_dummyTarget); @@ -338,11 +340,8 @@ public void SlideOut(KryptonPage? page, KryptonAutoHiddenGroup group, bool selec KryptonWorkspaceCell? cell = DockspaceControl.FirstVisibleCell(); if (cell == null) { - cell = new(); - if (DockspaceControl.Root.Children != null) - { - DockspaceControl.Root.Children.Add(cell); - } + cell = new KryptonWorkspaceCell(); + DockspaceControl.Root.Children?.Add(cell); } // Replace any existing page with the new one @@ -366,7 +365,7 @@ public void SlideOut(KryptonPage? page, KryptonAutoHiddenGroup group, bool selec // Switch to new state and start animation timer _state = DockingAutoHiddenShowState.SlidingOut; - AutoHiddenShowingStateEventArgs args = new(Page, _state); + var args = new AutoHiddenShowingStateEventArgs(Page, _state); _slideTimer?.Start(); // Are we requested to set focus to the sliding in dockspace? @@ -430,7 +429,7 @@ public void UpdateSize(int width, int height) // Update the page with the new size to use in the future if (Page != null) { - Page.AutoHiddenSlideSize = new(Page.AutoHiddenSlideSize.Width + width, Page.AutoHiddenSlideSize.Height); + Page.AutoHiddenSlideSize = new Size(Page.AutoHiddenSlideSize.Width + width, Page.AutoHiddenSlideSize.Height); } break; @@ -443,7 +442,7 @@ public void UpdateSize(int width, int height) // Update the page with the new size to use in the future if (Page != null) { - Page.AutoHiddenSlideSize = new(Page.AutoHiddenSlideSize.Width - width, Page.AutoHiddenSlideSize.Height); + Page.AutoHiddenSlideSize = new Size(Page.AutoHiddenSlideSize.Width - width, Page.AutoHiddenSlideSize.Height); } break; @@ -455,7 +454,7 @@ public void UpdateSize(int width, int height) // Update the page with the new size to use in the future if (Page != null) { - Page.AutoHiddenSlideSize = new(Page.AutoHiddenSlideSize.Width, Page.AutoHiddenSlideSize.Height + height); + Page.AutoHiddenSlideSize = new Size(Page.AutoHiddenSlideSize.Width, Page.AutoHiddenSlideSize.Height + height); } break; @@ -468,7 +467,7 @@ public void UpdateSize(int width, int height) // Update the page with the new size to use in the future if (Page != null) { - Page.AutoHiddenSlideSize = new(Page.AutoHiddenSlideSize.Width, Page.AutoHiddenSlideSize.Height - height); + Page.AutoHiddenSlideSize = new Size(Page.AutoHiddenSlideSize.Width, Page.AutoHiddenSlideSize.Height - height); } break; @@ -558,7 +557,7 @@ public bool PreFilterMessage(ref Message msg) _mouseTrackWindow = msg.HWnd; // This structure needs to know its own size in bytes - PI.TRACKMOUSEEVENTS tme = new() + var tme = new PI.TRACKMOUSEEVENTS { cbSize = (uint)Marshal.SizeOf(typeof(PI.TRACKMOUSEEVENTS)), dwHoverTime = 100, @@ -607,7 +606,7 @@ private void MakeHidden() { // Set state so timer processing does not perform any slide action _state = DockingAutoHiddenShowState.Hidden; - AutoHiddenShowingStateEventArgs args = new(Page, _state); + var args = new AutoHiddenShowingStateEventArgs(Page, _state); // Remove cached references Page = null; @@ -645,7 +644,7 @@ private void MakeSlideIn() { // Switch to sliding inwards by changing state and starting slide timer _state = DockingAutoHiddenShowState.SlidingIn; - AutoHiddenShowingStateEventArgs args = new(Page, _state); + var args = new AutoHiddenShowingStateEventArgs(Page, _state); _slideTimer?.Start(); // If the dockspace has the focus we need to push focus elsewhere @@ -667,7 +666,7 @@ private void CalculateStartAndEnd() { Size dockspacePreferred = Page.AutoHiddenSlideSize; Size separatorPreferred = SeparatorControl.GetPreferredSize(_control.Size); - Size slideSize = new(separatorPreferred.Width + dockspacePreferred.Width, + var slideSize = new Size(separatorPreferred.Width + dockspacePreferred.Width, separatorPreferred.Height + dockspacePreferred.Height); // Find the maximum allowed size based on the owning control client area reduced by a sensible minimum @@ -702,20 +701,20 @@ private void CalculateStartAndEnd() switch (_edge) { case DockingEdge.Left: - _startRect = new(_panel.Width, _panel.Top, 0, _panel.Height); - _endRect = new(_panel.Width, _panel.Height, slideSize.Width, _panel.Height); + _startRect = new Rectangle(_panel.Width, _panel.Top, 0, _panel.Height); + _endRect = new Rectangle(_panel.Width, _panel.Height, slideSize.Width, _panel.Height); break; case DockingEdge.Right: - _startRect = new(_panel.Left, _panel.Top, 0, _panel.Height); - _endRect = new(_panel.Left - slideSize.Width, _panel.Height, slideSize.Width, _panel.Height); + _startRect = new Rectangle(_panel.Left, _panel.Top, 0, _panel.Height); + _endRect = new Rectangle(_panel.Left - slideSize.Width, _panel.Height, slideSize.Width, _panel.Height); break; case DockingEdge.Top: - _startRect = new(_panel.Left, _panel.Height, _panel.Width, 0); - _endRect = new(_panel.Left, _panel.Height, _panel.Width, slideSize.Height); + _startRect = new Rectangle(_panel.Left, _panel.Height, _panel.Width, 0); + _endRect = new Rectangle(_panel.Left, _panel.Height, _panel.Width, slideSize.Height); break; case DockingEdge.Bottom: - _startRect = new(_panel.Left, _panel.Top, _panel.Width, 0); - _endRect = new(_panel.Left, _panel.Top - slideSize.Height, _panel.Width, slideSize.Height); + _startRect = new Rectangle(_panel.Left, _panel.Top, _panel.Width, 0); + _endRect = new Rectangle(_panel.Left, _panel.Top - slideSize.Height, _panel.Width, slideSize.Height); break; } } @@ -804,7 +803,7 @@ private void OnSlideTimerTick(object sender, EventArgs e) { // When finished we no longer need the timer and enter the showing state _state = DockingAutoHiddenShowState.Showing; - AutoHiddenShowingStateEventArgs args = new(Page, _state); + var args = new AutoHiddenShowingStateEventArgs(Page, _state); OnAutoHiddenShowingStateChanged(args); _slideTimer?.Stop(); } diff --git a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockableNavigator.cs b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockableNavigator.cs index 0bd74d109..6227ab69e 100644 --- a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockableNavigator.cs +++ b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockableNavigator.cs @@ -70,16 +70,16 @@ protected virtual void OnPageDropDownClicked(CancelDropDownEventArgs e) private void OnPagesInserting(object sender, TypedCollectionEventArgs e) { // Generate event so the docking element can decide on extra actions to be taken - OnCellPageInserting(new(e.Item, e.Index)); + OnCellPageInserting(new KryptonPageEventArgs(e.Item, e.Index)); } private void OnShowContextMenu(object sender, ShowContextMenuArgs e) { // Make sure we have a menu for displaying - e.KryptonContextMenu ??= new(); + e.KryptonContextMenu ??= new KryptonContextMenu(); // Use event to allow customization of the context menu - CancelDropDownEventArgs args = new(e.KryptonContextMenu, e.Item) + var args = new CancelDropDownEventArgs(e.KryptonContextMenu, e.Item) { Cancel = e.Cancel }; diff --git a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockableWorkspace.cs b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockableWorkspace.cs index 16cd0cf40..487299836 100644 --- a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockableWorkspace.cs +++ b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockableWorkspace.cs @@ -31,7 +31,7 @@ public KryptonDockableWorkspace() /// Gets a string representation of the instance. /// /// String. - public override string ToString() => "KryptonDockableWorkspace " + Dock.ToString(); + public override string ToString() => $"KryptonDockableWorkspace {Dock}"; #endregion @@ -101,12 +101,9 @@ protected override void OnActiveCellChanged(ActiveCellChangedEventArgs e) #region Implementation private void OnCellCloseAction(object sender, CloseActionEventArgs e) { - if (e.Item != null) + if (e.Item?.UniqueName != null) { - if (e.Item.UniqueName != null) - { - OnPageCloseClicked(new(e.Item.UniqueName)); - } + OnPageCloseClicked(new UniqueNameEventArgs(e.Item.UniqueName)); } } #endregion diff --git a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockspace.cs b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockspace.cs index e39e100b6..4aac9966e 100644 --- a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockspace.cs +++ b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonDockspace.cs @@ -30,7 +30,7 @@ public class KryptonDockspace : KryptonSpace public KryptonDockspace() : base(@"Docked") => // Define a sensible default minimum size - base.MinimumSize = new(150, 150); + base.MinimumSize = new Size(150, 150); /// /// Gets a string representation of the class. diff --git a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonFloatingWindow.cs b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonFloatingWindow.cs index 6e99f437e..c95e729c6 100644 --- a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonFloatingWindow.cs +++ b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonFloatingWindow.cs @@ -96,11 +96,10 @@ protected override void WndProc(ref Message m) if (result == PI.HT.CAPTION) { // Extract screen position of the mouse from the message LPARAM - Point screenPos = new(PI.LOWORD(m.LParam), - PI.HIWORD(m.LParam)); + var screenPos = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // Find the mouse offset relative to the top left of the window - Point offset = new(screenPos.X - Location.X, screenPos.Y - Location.Y); + var offset = new Point(screenPos.X - Location.X, screenPos.Y - Location.Y); // Do not intercept message if inside the max/close buttons if (!HitTestMaxButton(offset) && !HitTestCloseButton(offset)) @@ -110,7 +109,7 @@ protected override void WndProc(ref Message m) Activate(); // Use event to notify the request to drag the window - OnWindowCaptionDragging(new(screenPos, offset)); + OnWindowCaptionDragging(new ScreenAndOffsetEventArgs(screenPos, offset)); // Eat the message! return; @@ -179,7 +178,7 @@ protected override void OnClosing(CancelEventArgs e) var uniqueNames = VisibleCloseableUniqueNames(); if (uniqueNames.Any()) { - OnWindowCloseClicked(new(uniqueNames)); + OnWindowCloseClicked(new UniqueNamesEventArgs(uniqueNames)); } base.OnClosing(e); @@ -238,7 +237,7 @@ private void OnFloatspaceCellAdding(object sender, WorkspaceCellEventArgs e) { e.Cell.TabVisibleCountChanged += OnTabVisibleCountChanged!; var childMinSize = e.Cell.GetMinSize(); - MinimumSize = new(Math.Max(MinimumSize.Width, childMinSize.Width) + 20, + MinimumSize = new Size(Math.Max(MinimumSize.Width, childMinSize.Width) + 20, Math.Max(MinimumSize.Height, childMinSize.Height) + 20); ClientSize = MinimumSize; } @@ -250,35 +249,29 @@ private void OnFloatspaceCellRemoved(object sender, WorkspaceCellEventArgs e) private void OnLayoutWorkspace(object sender, EventArgs e) { - if (FloatspaceControl != null) - { - FloatspaceControl.PerformNeedPaint(true); - } + FloatspaceControl?.PerformNeedPaint(true); } private void UpdateCellSettings() { - if (FloatspaceControl != null) + KryptonWorkspaceCell? cell = FloatspaceControl?.FirstVisibleCell(); + if (cell != null) { - KryptonWorkspaceCell? cell = FloatspaceControl.FirstVisibleCell(); - if (cell != null) + // If there is only a single cell inside the floating window + if (FloatspaceControl.CellVisibleCount <= 1) { - // If there is only a single cell inside the floating window - if (FloatspaceControl.CellVisibleCount <= 1) - { - // Cell display mode depends on the number of tabs in the cell - cell.NavigatorMode = cell.Pages.VisibleCount == 1 ? NavigatorMode.HeaderGroup : NavigatorMode.HeaderGroupTab; - } - else + // Cell display mode depends on the number of tabs in the cell + cell.NavigatorMode = cell.Pages.VisibleCount == 1 ? NavigatorMode.HeaderGroup : NavigatorMode.HeaderGroupTab; + } + else + { + do { - do - { - // With multiple cells we always need the tabs showing - cell.NavigatorMode = NavigatorMode.HeaderGroupTab; - cell = FloatspaceControl.NextVisibleCell(cell); - } - while (cell != null); + // With multiple cells we always need the tabs showing + cell.NavigatorMode = NavigatorMode.HeaderGroupTab; + cell = FloatspaceControl.NextVisibleCell(cell); } + while (cell != null); } } diff --git a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonFloatspace.cs b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonFloatspace.cs index 7540529a3..7f46e6de9 100644 --- a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonFloatspace.cs +++ b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonFloatspace.cs @@ -33,7 +33,7 @@ public KryptonFloatspace() /// Gets a string representation of the class. /// /// - public override string ToString() => "KryptonFloatspace " + Dock.ToString(); + public override string ToString() => $"KryptonFloatspace {Dock}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonSpace.cs b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonSpace.cs index b99cbc1ea..3d58a8359 100644 --- a/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonSpace.cs +++ b/Source/Krypton Components/Krypton.Docking/Control Docking/KryptonSpace.cs @@ -137,14 +137,14 @@ protected KryptonSpace(string storeName) // Override default settings in the base ContextMenus.ShowContextMenu = false; ShowMaximizeButton = false; - Size = new(200, 200); + Size = new Size(200, 200); // Create lookup for per-cell cached state - _lookupCellState = new(); + _lookupCellState = new CellToCachedState(); // Create delegates so processing happens sync'd with the message queue - _visibleUpdate = OnVisibleUpdate; - _focusUpdate = OnFocusUpdate; + _visibleUpdate = OnVisibleUpdate!; + _focusUpdate = OnFocusUpdate!; _awaitingFocusUpdate = false; AutoHiddenHost = false; _closeTooltip = "Close"; @@ -289,15 +289,14 @@ public override void WritePageElement(XmlWriter xmlWriter, KryptonPage page) else { // Use event to try and get a newly created page for use - RecreateLoadingPageEventArgs args = new(uniqueName); + var args = new RecreateLoadingPageEventArgs(uniqueName); OnRecreateLoadingPage(args); if (!args.Cancel) { page = args.Page; // Add recreated page to the looking dictionary - if (page.UniqueName != null - && (page != null) + if (page?.UniqueName != null && !existingPages.ContainsKey(page.UniqueName)) { existingPages.Add(page.UniqueName, page); @@ -447,17 +446,17 @@ protected override void NewCellInitialize(KryptonWorkspaceCell cell) } // Hook into cell specific events - cell.ShowContextMenu += OnCellShowContextMenu; - cell.SelectedPageChanged += OnCellSelectedPageChanged; - cell.PrimaryHeaderLeftClicked += OnCellPrimaryHeaderLeftClicked; - cell.PrimaryHeaderRightClicked += OnCellPrimaryHeaderRightClicked; - cell.PrimaryHeaderDoubleClicked += OnCellPrimaryHeaderDoubleClicked; - cell.TabDoubleClicked += OnCellTabDoubleClicked; - cell.TabVisibleCountChanged += OnCellTabVisibleCountChanged; + cell.ShowContextMenu += OnCellShowContextMenu!; + cell.SelectedPageChanged += OnCellSelectedPageChanged!; + cell.PrimaryHeaderLeftClicked += OnCellPrimaryHeaderLeftClicked!; + cell.PrimaryHeaderRightClicked += OnCellPrimaryHeaderRightClicked!; + cell.PrimaryHeaderDoubleClicked += OnCellPrimaryHeaderDoubleClicked!; + cell.TabDoubleClicked += OnCellTabDoubleClicked!; + cell.TabVisibleCountChanged += OnCellTabVisibleCountChanged!; cell.Pages.Inserting += OnCellPagesInserting; // Create and store per-cell cached state - CachedCellState cellState = new() + var cellState = new CachedCellState { Cell = cell }; @@ -478,7 +477,7 @@ protected override void NewCellInitialize(KryptonWorkspaceCell cell) { for (var i = cell.Pages.Count - 1; i >= 0; i--) { - OnCellPageInserting(new(cell.Pages[i], i)); + OnCellPageInserting(new KryptonPageEventArgs(cell.Pages[i], i)); } } } @@ -495,13 +494,13 @@ protected override void ExistingCellDetach(KryptonWorkspaceCell cell) FocusMonitorControl(cell, false); // Unhook from events so the cell can be garbage collected - cell.ShowContextMenu -= OnCellShowContextMenu; - cell.SelectedPageChanged -= OnCellSelectedPageChanged; - cell.PrimaryHeaderLeftClicked -= OnCellPrimaryHeaderLeftClicked; - cell.PrimaryHeaderRightClicked -= OnCellPrimaryHeaderRightClicked; - cell.PrimaryHeaderDoubleClicked -= OnCellPrimaryHeaderDoubleClicked; - cell.TabDoubleClicked -= OnCellTabDoubleClicked; - cell.TabVisibleCountChanged -= OnCellTabVisibleCountChanged; + cell.ShowContextMenu -= OnCellShowContextMenu!; + cell.SelectedPageChanged -= OnCellSelectedPageChanged!; + cell.PrimaryHeaderLeftClicked -= OnCellPrimaryHeaderLeftClicked!; + cell.PrimaryHeaderRightClicked -= OnCellPrimaryHeaderRightClicked!; + cell.PrimaryHeaderDoubleClicked -= OnCellPrimaryHeaderDoubleClicked!; + cell.TabDoubleClicked -= OnCellTabDoubleClicked!; + cell.TabVisibleCountChanged -= OnCellTabVisibleCountChanged!; cell.Pages.Inserting -= OnCellPagesInserting; // Remove the per-cell cached state @@ -523,13 +522,13 @@ protected virtual void UpdateCellActions(KryptonWorkspaceCell cell, CachedCellSt // First time around we need to create the pin button spec if (cellState.DropDownButtonSpec == null) { - cellState.DropDownButtonSpec = new() + cellState.DropDownButtonSpec = new ButtonSpecNavigator { Type = PaletteButtonSpecStyle.DropDown, ToolTipTitle = DropDownTooltip, - KryptonContextMenu = new() + KryptonContextMenu = new KryptonContextMenu() }; - cellState.DropDownButtonSpec.KryptonContextMenu.Opening += OnCellDropDownOpening; + cellState.DropDownButtonSpec.KryptonContextMenu.Opening += OnCellDropDownOpening!; cell.Button.ButtonSpecs.Add(cellState.DropDownButtonSpec); } @@ -543,12 +542,12 @@ protected virtual void UpdateCellActions(KryptonWorkspaceCell cell, CachedCellSt // First time around we need to create the pin button spec if (cellState.PinButtonSpec == null) { - cellState.PinButtonSpec = new() + cellState.PinButtonSpec = new ButtonSpecNavigator { Type = (AutoHiddenHost ? PaletteButtonSpecStyle.PinHorizontal : PaletteButtonSpecStyle.PinVertical), ToolTipTitle = PinTooltip }; - cellState.PinButtonSpec.Click += OnCellAutoHiddenAction; + cellState.PinButtonSpec.Click += OnCellAutoHiddenAction!; cell.Button.ButtonSpecs.Add(cellState.PinButtonSpec); } @@ -569,12 +568,12 @@ protected virtual void UpdateCellActions(KryptonWorkspaceCell cell, CachedCellSt // First time around we need to create the close button spec if (cellState.CloseButtonSpec == null) { - cellState.CloseButtonSpec = new() + cellState.CloseButtonSpec = new ButtonSpecNavigator { Type = PaletteButtonSpecStyle.Close, ToolTipTitle = CloseTooltip }; - cellState.CloseButtonSpec.Click += OnCellCloseAction; + cellState.CloseButtonSpec.Click += OnCellCloseAction!; cell.Button.ButtonSpecs.Add(cellState.CloseButtonSpec); } @@ -652,7 +651,7 @@ private void OnFocusUpdate(object sender, EventArgs e) { _lookupCellState[cell].FocusState = true; cell.Header.HeaderStylePrimary = HeaderStyle.DockActive; - OnCellGainsFocus(new(cell)); + OnCellGainsFocus(new WorkspaceCellEventArgs(cell)); } } else @@ -662,7 +661,7 @@ private void OnFocusUpdate(object sender, EventArgs e) { _lookupCellState[cell].FocusState = false; cell.Header.HeaderStylePrimary = HeaderStyle.DockInactive; - OnCellLosesFocus(new(cell)); + OnCellLosesFocus(new WorkspaceCellEventArgs(cell)); } } @@ -730,10 +729,10 @@ private void OnVisibleUpdate(object sender, EventArgs e) private void OnCellShowContextMenu(object sender, ShowContextMenuArgs e) { // Make sure we have a menu for displaying - e.KryptonContextMenu ??= new(); + e.KryptonContextMenu ??= new KryptonContextMenu(); // Use event to allow customization of the context menu - CancelDropDownEventArgs args = new(e.KryptonContextMenu, e.Item) + var args = new CancelDropDownEventArgs(e.KryptonContextMenu, e.Item) { Cancel = e.Cancel }; @@ -764,8 +763,8 @@ private void OnCellPrimaryHeaderRightClicked(object sender, EventArgs e) cell.SelectedPage.SelectNextControl(cell.SelectedPage, true, true, true, false); // Create and populate a context menu with the drop down set of options - KryptonContextMenu kcm = new(); - CancelDropDownEventArgs args = new(kcm, cell.SelectedPage); + var kcm = new KryptonContextMenu(); + var args = new CancelDropDownEventArgs(kcm, cell.SelectedPage); OnPageDropDownClicked(args); // Do we need to show a context menu @@ -796,7 +795,7 @@ private void OnCellPrimaryHeaderDoubleClicked(object sender, EventArgs e) if (uniqueNames.Count > 0) { - OnPagesDoubleClicked(new(uniqueNames.ToArray())); + OnPagesDoubleClicked(new UniqueNamesEventArgs(uniqueNames.ToArray())); } } } @@ -805,7 +804,7 @@ private void OnCellTabDoubleClicked(object sender, KryptonPageEventArgs e) { if (e.Item != null) { - OnPagesDoubleClicked(new(new[] { e.Item.UniqueName })); + OnPagesDoubleClicked(new UniqueNamesEventArgs(new[] { e.Item.UniqueName })); } } @@ -892,7 +891,7 @@ private void OnCellCloseAction(object sender, EventArgs e) { if (cellState.Cell?.SelectedPage != null) { - OnPageCloseClicked(new(cellState.Cell.SelectedPage.UniqueName)); + OnPageCloseClicked(new UniqueNameEventArgs(cellState.Cell.SelectedPage.UniqueName)); } break; @@ -910,7 +909,7 @@ private void OnCellAutoHiddenAction(object sender, EventArgs e) { if (cellState.Cell?.SelectedPage != null) { - OnPageAutoHiddenClicked(new(cellState.Cell.SelectedPage.UniqueName)); + OnPageAutoHiddenClicked(new UniqueNameEventArgs(cellState.Cell.SelectedPage.UniqueName)); } break; @@ -932,7 +931,7 @@ private void OnCellDropDownOpening(object sender, CancelEventArgs e) { if (cellState.DropDownButtonSpec != null) { - OnPageDropDownClicked(new(cellState.DropDownButtonSpec.KryptonContextMenu, + OnPageDropDownClicked(new CancelDropDownEventArgs(cellState.DropDownButtonSpec.KryptonContextMenu, cellState.Cell.SelectedPage)); } } @@ -945,7 +944,7 @@ private void OnCellDropDownOpening(object sender, CancelEventArgs e) private void OnCellPagesInserting(object sender, TypedCollectionEventArgs e) { // Generate event so the docking element can decide on extra actions to be taken - OnCellPageInserting(new(e.Item, e.Index)); + OnCellPageInserting(new KryptonPageEventArgs(e.Item, e.Index)); } private void UpdateTooltips() diff --git a/Source/Krypton Components/Krypton.Docking/Dragging/DockingDragManager.cs b/Source/Krypton Components/Krypton.Docking/Dragging/DockingDragManager.cs index e2ed0b9ca..d99c2173e 100644 --- a/Source/Krypton Components/Krypton.Docking/Dragging/DockingDragManager.cs +++ b/Source/Krypton Components/Krypton.Docking/Dragging/DockingDragManager.cs @@ -10,6 +10,8 @@ */ #endregion +using Timer = System.Windows.Forms.Timer; + namespace Krypton.Docking { /// @@ -40,7 +42,7 @@ public DockingDragManager(KryptonDockingManager manager, Control? c) _offset = Point.Empty; // Use timer to ensure we do not update the display too quickly which then causes tearing - _moveTimer = new() + _moveTimer = new Timer { Interval = 10 }; diff --git a/Source/Krypton Components/Krypton.Docking/Dragging/DockingDragTargetProvider.cs b/Source/Krypton Components/Krypton.Docking/Dragging/DockingDragTargetProvider.cs index 102978236..3a446b4bf 100644 --- a/Source/Krypton Components/Krypton.Docking/Dragging/DockingDragTargetProvider.cs +++ b/Source/Krypton Components/Krypton.Docking/Dragging/DockingDragTargetProvider.cs @@ -48,7 +48,7 @@ public DockingDragTargetProvider(KryptonDockingManager manager, /// List of drag targets. public DragTargetList GenerateDragTargets(PageDragEndData? dragEndData) { - DragTargetList targets = new(); + var targets = new DragTargetList(); // Generate the set of targets from the element hierarchy _manager.PropogateDragTargets(_floatingWindow, dragEndData, targets); diff --git a/Source/Krypton Components/Krypton.Docking/Dragging/DragTargetControlEdge.cs b/Source/Krypton Components/Krypton.Docking/Dragging/DragTargetControlEdge.cs index 65800ef03..16921b006 100644 --- a/Source/Krypton Components/Krypton.Docking/Dragging/DragTargetControlEdge.cs +++ b/Source/Krypton Components/Krypton.Docking/Dragging/DragTargetControlEdge.cs @@ -142,7 +142,7 @@ public override bool PerformDrop(Point screenPt, PageDragEndData? data) if (page.AreFlagsSet(KryptonPageFlags.DockingAllowDocked)) { // Use event to indicate the page is becoming docked and allow it to be cancelled - CancelUniqueNameEventArgs args = new(page.UniqueName, false); + var args = new CancelUniqueNameEventArgs(page.UniqueName, false); manager?.RaisePageDockedRequest(args); if (!args.Cancel) @@ -158,10 +158,7 @@ public override bool PerformDrop(Point screenPt, PageDragEndData? data) if (transferPages.Count > 0) { // Convert the incoming pages into store pages for restoring later - if (manager != null) - { - manager.PropogateAction(DockingPropogateAction.StorePages, transferUniqueNames.ToArray()); - } + manager?.PropogateAction(DockingPropogateAction.StorePages, transferUniqueNames.ToArray()); // Create a new dockspace at the start of the list so it is closest to the control edge if (dockedEdge != null) diff --git a/Source/Krypton Components/Krypton.Docking/Elements Base/DockingElement.cs b/Source/Krypton Components/Krypton.Docking/Elements Base/DockingElement.cs index 80d6c7255..2c897fc21 100644 --- a/Source/Krypton Components/Krypton.Docking/Elements Base/DockingElement.cs +++ b/Source/Krypton Components/Krypton.Docking/Elements Base/DockingElement.cs @@ -52,7 +52,7 @@ public string Path { get { - StringBuilder path = new(); + var path = new StringBuilder(); IDockingElement? element = this; while (element != null) diff --git a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingAutoHiddenGroup.cs b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingAutoHiddenGroup.cs index d7ba6afc3..60a1a52a8 100644 --- a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingAutoHiddenGroup.cs +++ b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingAutoHiddenGroup.cs @@ -544,8 +544,8 @@ protected override void LoadChildDockingElement(XmlReader xmlReader, // Get the unique name of the page string uniqueName = xmlReader.GetAttribute(@"UN") ?? string.Empty; - string? boolStore = xmlReader.GetAttribute(@"S") ?? string.Empty; - string? boolVisible = xmlReader.GetAttribute(@"V") ?? string.Empty; + string boolStore = xmlReader.GetAttribute(@"S") ?? string.Empty; + string boolVisible = xmlReader.GetAttribute(@"V") ?? string.Empty; KryptonPage? page; @@ -602,10 +602,7 @@ protected override void LoadChildDockingElement(XmlReader xmlReader, // Generate event so custom data can be loaded and/or the page to be added can be modified var pageLoading = new DockPageLoadingEventArgs(manager, xmlReader, page); - if (manager != null) - { - manager.RaisePageLoading(pageLoading); - } + manager?.RaisePageLoading(pageLoading); // Read everything until we get the end of custom data marker while (!finished) diff --git a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingControl.cs b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingControl.cs index 66e940dd8..57dc1a198 100644 --- a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingControl.cs +++ b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingControl.cs @@ -23,7 +23,7 @@ namespace Krypton.Docking public class KryptonDockingControl : DockingElementOpenCollection { #region Static Fields - private static readonly Size _minimumInner = new(100, 100); + private static readonly Size _minimumInner = new Size(100, 100); #endregion #region Instance Fields @@ -248,7 +248,8 @@ public override void PropogateDragTargets(KryptonFloatingWindow? floatingWindow, } // If there is inner space available - Rectangle innerRect = new(tl.Width, tl.Height, br.Width - tl.Width, br.Height - tl.Height); + var innerRect = new Rectangle(tl.Width, tl.Height, br.Width - tl.Width, + br.Height - tl.Height); if (innerRect is { Width: > 0, Height: > 0 }) { Rectangle innerScreenRect = Control.RectangleToScreen(innerRect); @@ -484,12 +485,12 @@ private static Rectangle[] SubdivideRectangle(Rectangle area, var length = Math.Min(area.Width / divisor, Math.Min(area.Height / divisor, maxLength)); // Find the left, right, top, bottom, center rectangles - return new Rectangle[]{ new(area.X, area.Y, length, area.Height), - new(area.Right - length, area.Y, length, area.Height), - new(area.X, area.Y, area.Width, length), - new(area.X, area.Bottom - length, area.Width, length), - new(area.X + length, area.Y + length, - area.Width - (length * 2), area.Height - (length * 2))}; + return new Rectangle[]{ + new Rectangle(area.X, area.Y, length, area.Height), + new Rectangle(area.Right - length, area.Y, length, area.Height), + new Rectangle(area.X, area.Y, area.Width, length), + new Rectangle(area.X, area.Bottom - length, area.Width, length), + new Rectangle(area.X + length, area.Y + length, area.Width - (length * 2), area.Height - (length * 2))}; } private void DebugOutput(string title) diff --git a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingDockspace.cs b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingDockspace.cs index 2d7dbe655..d040243e6 100644 --- a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingDockspace.cs +++ b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingDockspace.cs @@ -176,7 +176,7 @@ public override void PropogateDragTargets(KryptonFloatingWindow? floatingWindow, if (DockspaceControl.CellVisibleCount > 0) { // Create list of the pages that are allowed to be dropped into this dockspace - KryptonPageCollection pages = new(); + var pages = new KryptonPageCollection(); if (dragData != null) { foreach (KryptonPage page in dragData.Pages) @@ -271,7 +271,7 @@ protected override void RaiseRemoved() KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - DockspaceEventArgs args = new(DockspaceControl, this); + var args = new DockspaceEventArgs(DockspaceControl, this); dockingManager.RaiseDockspaceRemoved(args); } @@ -289,7 +289,7 @@ protected override void RaiseCellAdding(KryptonWorkspaceCell cell) KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - DockspaceCellEventArgs args = new(DockspaceControl, this, cell); + var args = new DockspaceCellEventArgs(DockspaceControl, this, cell); dockingManager.RaiseDockspaceCellAdding(args); } } @@ -304,7 +304,7 @@ protected override void RaiseCellRemoved(KryptonWorkspaceCell cell) KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - DockspaceCellEventArgs args = new(DockspaceControl, this, cell); + var args = new DockspaceCellEventArgs(DockspaceControl, this, cell); dockingManager.RaiseDockspaceCellRemoved(args); } } @@ -320,7 +320,7 @@ protected override void RaiseSpacePageDrop(object sender, PageDropEventArgs e) KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - CancelUniqueNameEventArgs args = new(e.Page.UniqueName, false); + var args = new CancelUniqueNameEventArgs(e.Page.UniqueName, false); dockingManager.RaisePageDockedRequest(args); // Pass back the result of the event diff --git a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingEdgeAutoHidden.cs b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingEdgeAutoHidden.cs index dd43be3c0..f4e686f89 100644 --- a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingEdgeAutoHidden.cs +++ b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingEdgeAutoHidden.cs @@ -260,7 +260,7 @@ protected override void LoadChildDockingElement(XmlReader xmlReader, private KryptonDockingAutoHiddenGroup CreateAndInsertAutoHiddenGroup(int index, string name) { // Create the new auto hidden group instance and add into our collection - KryptonDockingAutoHiddenGroup groupElement = new(name, Edge); + var groupElement = new KryptonDockingAutoHiddenGroup(name, Edge); groupElement.PageClicked += OnDockingAutoHiddenGroupClicked!; groupElement.PageHoverStart += OnDockingAutoHiddenGroupHoverStart!; groupElement.PageHoverEnd += OnDockingAutoHiddenGroupHoverEnd!; @@ -275,9 +275,9 @@ private KryptonDockingAutoHiddenGroup CreateAndInsertAutoHiddenGroup(int index, // generate the events for allowing customization of the when there is a chance they will become displayed. if (!_panelEventFired) { - AutoHiddenGroupPanelEventArgs panelArgs = new(_panel, this); - DockspaceEventArgs dockspaceArgs = new(_slidePanel.DockspaceControl, null); - DockspaceSeparatorEventArgs separatorArgs = new(_slidePanel.SeparatorControl, null); + var panelArgs = new AutoHiddenGroupPanelEventArgs(_panel, this); + var dockspaceArgs = new DockspaceEventArgs(_slidePanel.DockspaceControl, null); + var separatorArgs = new DockspaceSeparatorEventArgs(_slidePanel.SeparatorControl, null); dockingManager.RaiseAutoHiddenGroupPanelAdding(panelArgs); dockingManager.RaiseDockspaceAdding(dockspaceArgs); dockingManager.RaiseDockspaceSeparatorAdding(separatorArgs); @@ -285,7 +285,7 @@ private KryptonDockingAutoHiddenGroup CreateAndInsertAutoHiddenGroup(int index, } // Allow the auto hidden group to be customized by event handlers - AutoHiddenGroupEventArgs groupArgs = new(groupElement.AutoHiddenGroupControl, groupElement); + var groupArgs = new AutoHiddenGroupEventArgs(groupElement.AutoHiddenGroupControl, groupElement); dockingManager.RaiseAutoHiddenGroupAdding(groupArgs); } @@ -325,7 +325,7 @@ private void OnPanelDisposed(object sender, EventArgs e) // Only generate the removed event if we have already fired the adding event. if (_panelEventFired) { - AutoHiddenGroupPanelEventArgs panelArgs = new(_panel, this); + var panelArgs = new AutoHiddenGroupPanelEventArgs(_panel, this); dockingManager.RaiseAutoHiddenGroupPanelRemoved(panelArgs); } } @@ -355,8 +355,8 @@ private void OnSlidePanelDisposed(object sender, EventArgs e) // Only generate the removed event if we have already fired the adding event. if (_panelEventFired) { - DockspaceEventArgs dockspaceArgs = new(_slidePanel.DockspaceControl, null); - DockspaceSeparatorEventArgs separatorArgs = new(_slidePanel.SeparatorControl, null); + var dockspaceArgs = new DockspaceEventArgs(_slidePanel.DockspaceControl, null); + var separatorArgs = new DockspaceSeparatorEventArgs(_slidePanel.SeparatorControl, null); dockingManager.RaiseDockspaceRemoved(dockspaceArgs); dockingManager.RaiseDockspaceSeparatorRemoved(separatorArgs); } @@ -412,7 +412,8 @@ private void OnSlidePanelSeparatorMoveRect(object sender, SplitterMoveRectMenuAr if (dockingManager != null) { // Allow the movement rectangle to be modified by event handlers - AutoHiddenSeparatorResizeEventArgs autoHiddenSeparatorResizeRectArgs = new(separatorControl, dockspaceControl, page, FindMovementRect(e.MoveRect)); + var autoHiddenSeparatorResizeRectArgs = new AutoHiddenSeparatorResizeEventArgs(separatorControl, dockspaceControl, page, + FindMovementRect(e.MoveRect)); dockingManager.RaiseAutoHiddenSeparatorResize(autoHiddenSeparatorResizeRectArgs); e.MoveRect = autoHiddenSeparatorResizeRectArgs.ResizeRect; } diff --git a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingEdgeDocked.cs b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingEdgeDocked.cs index 83a4146f8..075d1045c 100644 --- a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingEdgeDocked.cs +++ b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingEdgeDocked.cs @@ -26,7 +26,7 @@ private class DockspaceToSeparator : Dictionary 0) { // Create list of the pages that are allowed to be dropped into this floatspace - KryptonPageCollection pages = new(); + var pages = new KryptonPageCollection(); if (dragData != null) { foreach (KryptonPage page in dragData.Pages) @@ -182,7 +182,7 @@ protected override void RaiseRemoved() KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - FloatspaceEventArgs args = new(FloatspaceControl, this); + var args = new FloatspaceEventArgs(FloatspaceControl, this); dockingManager.RaiseFloatspaceRemoved(args); } @@ -200,7 +200,7 @@ protected override void RaiseCellAdding(KryptonWorkspaceCell cell) KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - FloatspaceCellEventArgs args = new(FloatspaceControl, this, cell); + var args = new FloatspaceCellEventArgs(FloatspaceControl, this, cell); dockingManager.RaiseFloatspaceCellAdding(args); } } @@ -215,7 +215,7 @@ protected override void RaiseCellRemoved(KryptonWorkspaceCell cell) KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - FloatspaceCellEventArgs args = new(FloatspaceControl, this, cell); + var args = new FloatspaceCellEventArgs(FloatspaceControl, this, cell); dockingManager.RaiseFloatspaceCellRemoved(args); } } @@ -233,7 +233,7 @@ protected override void RaiseSpacePageDrop(object sender, PageDropEventArgs e) { if (e.Page != null) { - CancelUniqueNameEventArgs args = new(e.Page.UniqueName, false); + var args = new CancelUniqueNameEventArgs(e.Page.UniqueName, false); dockingManager.RaisePageFloatingRequest(args); // Pass back the result of the event diff --git a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingManager.cs b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingManager.cs index e3085dde8..4eee8edb4 100644 --- a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingManager.cs +++ b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingManager.cs @@ -369,7 +369,7 @@ public KryptonDockingManager(string name) /// KryptonDockingControl instance created. public KryptonDockingControl ManageControl(string name, Control c) { - KryptonDockingControl dockingControl = new(name, c); + var dockingControl = new KryptonDockingControl(name, c); Add(dockingControl); return dockingControl; } @@ -383,7 +383,7 @@ public KryptonDockingControl ManageControl(string name, Control c) /// KryptonDockingControl instance created. public KryptonDockingControl ManageControl(string name, Control c, KryptonDockingNavigator navigator) { - KryptonDockingControl dockingControl = new(name, c, navigator); + var dockingControl = new KryptonDockingControl(name, c, navigator); Add(dockingControl); return dockingControl; } @@ -397,7 +397,7 @@ public KryptonDockingControl ManageControl(string name, Control c, KryptonDockin /// KryptonDockingControl instance created. public KryptonDockingControl ManageControl(string name, Control c, KryptonDockingWorkspace workspace) { - KryptonDockingControl dockingControl = new(name, c, workspace); + var dockingControl = new KryptonDockingControl(name, c, workspace); Add(dockingControl); return dockingControl; } @@ -417,7 +417,7 @@ public KryptonDockingControl ManageControl(string name, Control c, KryptonDockin /// KryptonDockingFloating instance created. public KryptonDockingFloating ManageFloating(string name, Form f) { - KryptonDockingFloating dockingFloating = new(name, f); + var dockingFloating = new KryptonDockingFloating(name, f); Add(dockingFloating); return dockingFloating; } @@ -446,7 +446,7 @@ public KryptonDockingFloating ManageFloating(string name, Form f) /// KryptonDockingWorkspace instance created. public KryptonDockingWorkspace ManageWorkspace(string name, string storeName, KryptonDockableWorkspace w) { - KryptonDockingWorkspace dockingWorkspace = new(name, storeName, w); + var dockingWorkspace = new KryptonDockingWorkspace(name, storeName, w); Add(dockingWorkspace); return dockingWorkspace; } @@ -475,7 +475,7 @@ public KryptonDockingWorkspace ManageWorkspace(string name, string storeName, Kr /// KryptonDockingNavigator instance created. public KryptonDockingNavigator ManageNavigator(string name, string storeName, KryptonDockableNavigator n) { - KryptonDockingNavigator dockingNavigator = new(name, storeName, n); + var dockingNavigator = new KryptonDockingNavigator(name, storeName, n); Add(dockingNavigator); return dockingNavigator; } @@ -597,7 +597,7 @@ public void ShowPages([DisallowNull] string[] uniqueNames) } } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); PropogateAction(DockingPropogateAction.ShowPages, uniqueNames); } } @@ -607,7 +607,7 @@ public void ShowPages([DisallowNull] string[] uniqueNames) /// public void ShowAllPages() { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); PropogateAction(DockingPropogateAction.ShowAllPages, null as string[]); } @@ -703,7 +703,7 @@ public void HidePages([DisallowNull] string[] uniqueNames) } } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); PropogateAction(DockingPropogateAction.HidePages, uniqueNames); } } @@ -713,7 +713,7 @@ public void HidePages([DisallowNull] string[] uniqueNames) /// public void HideAllPages() { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); PropogateAction(DockingPropogateAction.HideAllPages, null as string[]); } @@ -859,7 +859,7 @@ public void RemovePages([DisallowNull] string[] uniqueNames, bool disposePage) } // Remove page details from all parts of the hierarchy - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); PropogateAction(disposePage ? DockingPropogateAction.RemoveAndDisposePages : DockingPropogateAction.RemovePages, uniqueNames); } } @@ -871,7 +871,7 @@ public void RemovePages([DisallowNull] string[] uniqueNames, bool disposePage) public void RemoveAllPages(bool disposePage) { // Remove all details about all pages from all parts of the hierarchy - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); PropogateAction(disposePage ? DockingPropogateAction.RemoveAndDisposeAllPages : DockingPropogateAction.RemoveAllPages, null as string[]); } @@ -1035,7 +1035,7 @@ public void StorePages([DisallowNull] string[] uniqueNames) } } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); PropogateAction(DockingPropogateAction.StorePages, uniqueNames); } } @@ -1045,7 +1045,7 @@ public void StorePages([DisallowNull] string[] uniqueNames) /// public void StoreAllPages() { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); PropogateAction(DockingPropogateAction.StoreAllPages, null as string[]); } @@ -1111,7 +1111,7 @@ public void ClearStoredPages([DisallowNull] string[] uniqueNames) } } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); PropogateAction(DockingPropogateAction.ClearStoredPages, uniqueNames); } @@ -1120,7 +1120,7 @@ public void ClearStoredPages([DisallowNull] string[] uniqueNames) /// public void ClearAllStoredPages() { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); PropogateAction(DockingPropogateAction.ClearAllStoredPages, null as string[]); } @@ -1434,11 +1434,11 @@ public virtual void CloseRequest([DisallowNull] IReadOnlyList uniqueName } } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); foreach (var uniqueName in uniqueNames) { // Raise event that allows the action to be defined by handlers - CloseRequestEventArgs e = new(uniqueName, DefaultCloseRequest); + CloseRequestEventArgs e = new CloseRequestEventArgs(uniqueName, DefaultCloseRequest); OnPageCloseRequest(e); switch (e.CloseRequest) @@ -1491,7 +1491,8 @@ public virtual void MakeAutoHiddenRequest([DisallowNull] string uniqueName) // Ensure all docking controls have been laid out before the change is processed Application.DoEvents(); - CancelUniqueNameEventArgs args = new(uniqueName, !page.AreFlagsSet(KryptonPageFlags.DockingAllowAutoHidden)); + var args = new CancelUniqueNameEventArgs(uniqueName, + !page.AreFlagsSet(KryptonPageFlags.DockingAllowAutoHidden)); OnPageAutoHiddenRequest(args); if (args.Cancel) @@ -1499,7 +1500,7 @@ public virtual void MakeAutoHiddenRequest([DisallowNull] string uniqueName) return; } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Convert the page to a placeholder so it can be returned to the same location PropogateAction(DockingPropogateAction.StorePages, new[] { uniqueName }); @@ -1555,7 +1556,8 @@ public virtual void MakeDockedRequest([DisallowNull] string uniqueName) // Ensure all docking controls have been laid out before the change is processed Application.DoEvents(); - CancelUniqueNameEventArgs args = new(uniqueName, !page.AreFlagsSet(KryptonPageFlags.DockingAllowDocked)); + var args = new CancelUniqueNameEventArgs(uniqueName, + !page.AreFlagsSet(KryptonPageFlags.DockingAllowDocked)); OnPageDockedRequest(args); if (args.Cancel) @@ -1563,7 +1565,7 @@ public virtual void MakeDockedRequest([DisallowNull] string uniqueName) return; } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Convert the page to a placeholder so it can be returned to the same location PropogateAction(DockingPropogateAction.StorePages, new[] { uniqueName }); @@ -1629,7 +1631,8 @@ public virtual void MakeFloatingRequest([DisallowNull] string uniqueName) // Ensure all docking controls have been laid out before the change is processed Application.DoEvents(); - CancelUniqueNameEventArgs args = new(uniqueName, !page.AreFlagsSet(KryptonPageFlags.DockingAllowFloating)); + var args = new CancelUniqueNameEventArgs(uniqueName, + !page.AreFlagsSet(KryptonPageFlags.DockingAllowFloating)); OnPageFloatingRequest(args); if (args.Cancel) @@ -1637,7 +1640,7 @@ public virtual void MakeFloatingRequest([DisallowNull] string uniqueName) return; } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Convert the page to a placeholder so it can be returned to the same location PropogateAction(DockingPropogateAction.StorePages, new[] { uniqueName }); @@ -1703,7 +1706,8 @@ public virtual void MakeWorkspaceRequest([DisallowNull] string uniqueName) // Ensure all docking controls have been laid out before the change is processed Application.DoEvents(); - CancelUniqueNameEventArgs args = new(uniqueName, !page.AreFlagsSet(KryptonPageFlags.DockingAllowWorkspace)); + var args = new CancelUniqueNameEventArgs(uniqueName, + !page.AreFlagsSet(KryptonPageFlags.DockingAllowWorkspace)); OnPageWorkspaceRequest(args); if (args.Cancel) @@ -1711,7 +1715,7 @@ public virtual void MakeWorkspaceRequest([DisallowNull] string uniqueName) return; } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Convert the page to a placeholder so it can be returned to the same location PropogateAction(DockingPropogateAction.StorePages, new[] { uniqueName }); @@ -1771,7 +1775,8 @@ public virtual void MakeNavigatorRequest([DisallowNull] string uniqueName) // Ensure all docking controls have been laid out before the change is processed Application.DoEvents(); - CancelUniqueNameEventArgs args = new(uniqueName, !page.AreFlagsSet(KryptonPageFlags.DockingAllowNavigator)); + var args = new CancelUniqueNameEventArgs(uniqueName, + !page.AreFlagsSet(KryptonPageFlags.DockingAllowNavigator)); OnPageNavigatorRequest(args); if (args.Cancel) @@ -1779,7 +1784,7 @@ public virtual void MakeNavigatorRequest([DisallowNull] string uniqueName) return; } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Convert the page to a placeholder so it can be returned to the same location PropogateAction(DockingPropogateAction.StorePages, new[] { uniqueName }); @@ -1837,7 +1842,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, if (location != DockingLocation.None) { // Reset the context menu with an items collection - KryptonContextMenuItems options = new(); + var options = new KryptonContextMenuItems(); kcm.Items.Clear(); kcm.Items.Add(options); @@ -1845,7 +1850,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, if (FindDockingFloating(page.UniqueName) != null) { // Add an option for floating the page - KryptonContextMenuItem floatingItem = new(Strings.TextFloat) + var floatingItem = new KryptonContextMenuItem(Strings.TextFloat) { Tag = page.UniqueName }; @@ -1859,7 +1864,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, if (FindDockingEdgeDocked(page.UniqueName) != null) { // Add an option for docked the page - KryptonContextMenuItem dockedItem = new(Strings.TextDock) + var dockedItem = new KryptonContextMenuItem(Strings.TextDock) { Tag = page.UniqueName }; @@ -1873,7 +1878,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, if (FindDockingWorkspace(page.UniqueName) != null) { // Add an option for docked the page - KryptonContextMenuItem workspaceItem = new(Strings.TextTabbedDocument) + var workspaceItem = new KryptonContextMenuItem(Strings.TextTabbedDocument) { Tag = page.UniqueName }; @@ -1888,7 +1893,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, if (FindDockingNavigator(page.UniqueName) != null) { // Add an option for docked the page - KryptonContextMenuItem workspaceItem = new(Strings.TextTabbedDocument) + var workspaceItem = new KryptonContextMenuItem(Strings.TextTabbedDocument) { Tag = page.UniqueName }; @@ -1903,7 +1908,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, if (FindDockingEdgeAutoHidden(page.UniqueName) != null) { // Add an option for docked the page - KryptonContextMenuItem autoHiddenItem = new(Strings.TextAutoHide) + var autoHiddenItem = new KryptonContextMenuItem(Strings.TextAutoHide) { Tag = page.UniqueName }; @@ -1917,7 +1922,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, if (page.AreFlagsSet(KryptonPageFlags.DockingAllowClose)) { // Add an option for closing the page - KryptonContextMenuItem closeItem = new(Strings.TextClose) + var closeItem = new KryptonContextMenuItem(Strings.TextClose) { Tag = page.UniqueName }; @@ -1928,7 +1933,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, } // Let events customize the context menu - ContextPageEventArgs args = new(page, kcm, !retDisplay); + ContextPageEventArgs args = new ContextPageEventArgs(page, kcm, !retDisplay); OnShowPageContextMenu(args); return !args.Cancel; } @@ -1974,7 +1979,8 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, var switchPages = new List(); foreach (KryptonPage page in visiblePages) { - CancelUniqueNameEventArgs args = new(page.UniqueName, !page.AreFlagsSet(KryptonPageFlags.DockingAllowAutoHidden)); + var args = new CancelUniqueNameEventArgs(page.UniqueName, + !page.AreFlagsSet(KryptonPageFlags.DockingAllowAutoHidden)); OnPageAutoHiddenRequest(args); if (!args.Cancel) @@ -1987,7 +1993,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, // Any pages that actually need to be switched? if (switchPages.Count > 0) { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Convert the pages to placeholders so they can be returned to the same location var uniqueNames = switchUniqueNames.ToArray(); dockspace.PropogateAction(DockingPropogateAction.StorePages, uniqueNames); @@ -2068,7 +2074,8 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, KryptonPage? page = PageForUniqueName(uniqueName); if (page != null) { - CancelUniqueNameEventArgs args = new(page.UniqueName, !page.AreFlagsSet(KryptonPageFlags.DockingAllowFloating)); + var args = new CancelUniqueNameEventArgs(page.UniqueName, + !page.AreFlagsSet(KryptonPageFlags.DockingAllowFloating)); OnPageFloatingRequest(args); if (!args.Cancel) @@ -2101,7 +2108,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, KryptonDockingFloating? floating = FindDockingFloating(selectedPage ?? switchUniqueNames[0]); if (floating != null) { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Convert the pages to placeholders so they can be returned to the same location PropogateAction(DockingPropogateAction.StorePages, switchUniqueNames.ToArray()); @@ -2194,7 +2201,8 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, KryptonPage? page = PageForUniqueName(uniqueName); if (page != null) { - CancelUniqueNameEventArgs args = new(page.UniqueName, !page.AreFlagsSet(KryptonPageFlags.DockingAllowDocked)); + var args = new CancelUniqueNameEventArgs(page.UniqueName, + !page.AreFlagsSet(KryptonPageFlags.DockingAllowDocked)); OnPageDockedRequest(args); if (!args.Cancel) @@ -2223,7 +2231,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, // Still any pages to be switched? if (switchUniqueNames.Count > 0) { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Convert the pages to placeholders so they can be returned to the same location PropogateAction(DockingPropogateAction.StorePages, switchUniqueNames.ToArray()); @@ -2362,7 +2370,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, KryptonDockingFloating? floating = FindDockingFloating(selectedPage ?? switchUniqueNames[0]); if (floating != null) { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Grab the current element that contains one of the pages being moved KryptonDockingFloatspace? currentElement = FindPageElement(switchPages[0]) as KryptonDockingFloatspace; @@ -2417,7 +2425,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, if (FindPageLocation(uniqueName) == DockingLocation.AutoHidden) { // Grab the auto hidden group docking element that we expect to contain the target unique name - KryptonDockingAutoHiddenGroup autoHiddenGroup = (KryptonDockingAutoHiddenGroup)ExpectPageElement(uniqueName, typeof(KryptonDockingAutoHiddenGroup)); + var autoHiddenGroup = (KryptonDockingAutoHiddenGroup)ExpectPageElement(uniqueName, typeof(KryptonDockingAutoHiddenGroup)); // Find the sibling docked edge so we can add/restore pages KryptonDockingEdgeDocked? edgeDocked = autoHiddenGroup.EdgeDockedElement; if (edgeDocked != null) @@ -2431,7 +2439,8 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, var switchPages = new List(); foreach (KryptonPage page in visiblePages) { - CancelUniqueNameEventArgs args = new(page.UniqueName, !page.AreFlagsSet(KryptonPageFlags.DockingAllowDocked)); + var args = new CancelUniqueNameEventArgs(page.UniqueName, + !page.AreFlagsSet(KryptonPageFlags.DockingAllowDocked)); OnPageDockedRequest(args); if (!args.Cancel) @@ -2444,7 +2453,7 @@ public virtual bool ShowPageContextMenuRequest([DisallowNull] KryptonPage? page, // Any pages that actually need to be switched? if (switchPages.Count > 0) { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Remove the pages from the auto hidden group var uniqueNames = switchUniqueNames.ToArray(); PropogateAction(DockingPropogateAction.RemovePages, uniqueNames); @@ -2560,7 +2569,7 @@ public virtual KryptonDockingDockspace AddDockspace(string path, throw new ArgumentException(@"KryptonDockingControl edge does not have a docked element.", nameof(edge)); } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Create a new dockspace and add the provided array of pages var dockspace = edgeDocked.AppendDockspace(); dockspace.Append(pages); @@ -2594,14 +2603,11 @@ public virtual KryptonDockingDockspace AddDockspace(string path, if (pageArray is { Length: > 0 }) { // We need a new cell with all the pages from the array - KryptonWorkspaceCell cell = new(); + var cell = new KryptonWorkspaceCell(); cell.Pages.AddRange(pageArray); // Add into the root collection so the cells appear in a stack - if (dockspace.DockspaceControl.Root.Children != null) - { - dockspace.DockspaceControl.Root.Children.Add(cell); - } + dockspace.DockspaceControl.Root.Children?.Add(cell); } } @@ -2671,7 +2677,7 @@ public virtual KryptonDockingAutoHiddenGroup AddAutoHiddenGroup(string path, throw new ArgumentException(@"KryptonDockingControl edge does not have an auto hidden element.", nameof(edge)); } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Create a new auto hidden group and add the provided array of pages KryptonDockingAutoHiddenGroup autoHiddenGroup = edgeAutoHidden.AppendAutoHiddenGroup(); autoHiddenGroup.Append(pages); @@ -2913,7 +2919,7 @@ public virtual KryptonDockingDockspace InsertDockspace(string path, throw new ArgumentException(@"KryptonDockingControl edge does not have a docked element.", nameof(edge)); } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Create a new dockspace and insert the provided array of pages KryptonDockingDockspace dockspace = edgeDocked.InsertDockspace(index); dockspace.Append(pages); @@ -2927,14 +2933,11 @@ public virtual KryptonDockingDockspace InsertDockspace(string path, if (pageArray is { Length: > 0 }) { // We need a new cell with all the pages from the array - KryptonWorkspaceCell cell = new(); + var cell = new KryptonWorkspaceCell(); cell.Pages.AddRange(pageArray); // Add into the root collection so the cells appear in a stack - if (dockspace.DockspaceControl.Root.Children != null) - { - dockspace.DockspaceControl.Root.Children.Add(cell); - } + dockspace.DockspaceControl.Root.Children?.Add(cell); } } @@ -3006,7 +3009,7 @@ public virtual KryptonDockingAutoHiddenGroup InsertAutoHiddenGroup(string path, throw new ArgumentException(@"KryptonDockingControl edge does not have an auto hidden element.", nameof(edge)); } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Create a new auto hidden group and add the provided array of pages KryptonDockingAutoHiddenGroup autoHiddenGroup = edgeAutoHidden.InsertAutoHiddenGroup(index); autoHiddenGroup.Append(pages); @@ -3052,7 +3055,7 @@ public virtual void DoDragDrop(Point screenPoint, Point elementOffset, Control c } // Create docking specific drag manager for moving the pages around - DockingDragManager dragManager = new(this, c) + DockingDragManager dragManager = new DockingDragManager(this, c) { FloatingWindowOffset = elementOffset }; @@ -3071,7 +3074,7 @@ public virtual void DoDragDrop(Point screenPoint, Point elementOffset, Control c if (!atLeastOneFloating && page.AreFlagsSet(KryptonPageFlags.DockingAllowFloating)) { // Use event to indicate the page is becoming floating and allow it to be cancelled - CancelUniqueNameEventArgs args = new(page.UniqueName, false); + var args = new CancelUniqueNameEventArgs(page.UniqueName, false); OnPageFloatingRequest(args); if (!args.Cancel) @@ -3094,7 +3097,7 @@ public virtual void DoDragDrop(Point screenPoint, Point elementOffset, Control c } floatingWindow) // If the floating window is not currently visible... { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); //...then we can use it for dragging. We want the floating window to become visible and show just the set of pages // that are allowed to be floating from the set of pages passed into this function. As the window is not currently // visible it means all the contained pages are hidden and so we can make only the pages we are interested in visible @@ -3138,7 +3141,7 @@ page is not KryptonStorePage KryptonDockingFloatingWindow? floatingWindow = floating?.AddFloatingWindow(); if (floatingWindow != null) { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // This is the window that will be moved during the drag operation dragManager.FloatingWindow = floatingWindow.FloatingWindow; @@ -3190,7 +3193,7 @@ public virtual void DoDragDrop(Point screenPoint, Point elementOffset, Control? } // Create a list of all the visible pages inside the floating window - KryptonPageCollection pages = new(); + KryptonPageCollection pages = new KryptonPageCollection(); KryptonWorkspaceCell? cell = window.FloatspaceElement.FloatspaceControl.FirstVisibleCell(); while (cell != null) { @@ -3206,7 +3209,7 @@ public virtual void DoDragDrop(Point screenPoint, Point elementOffset, Control? if (pages.Count > 0) { // Create docking specific drag manager for moving the pages around - DockingDragManager dragManager = new(this, null) + var dragManager = new DockingDragManager(this, null) { FloatingWindow = window.FloatingWindow, FloatingWindowOffset = elementOffset @@ -3236,7 +3239,7 @@ public virtual void DoDragDrop(Point screenPoint, Point elementOffset, Control? public byte[] SaveConfigToArray(Encoding encoding) { // Save into the file stream - MemoryStream ms = new(); + var ms = new MemoryStream(); SaveConfigToStream(ms, encoding); ms.Close(); @@ -3261,7 +3264,7 @@ public void SaveConfigToFile(string filename) public void SaveConfigToFile(string filename, Encoding encoding) { // Create/Overwrite existing file - FileStream fs = new(filename, FileMode.Create); + var fs = new FileStream(filename, FileMode.Create); try { @@ -3281,7 +3284,7 @@ public void SaveConfigToFile(string filename, Encoding encoding) /// Required encoding. public void SaveConfigToStream(Stream stream, Encoding encoding) { - XmlTextWriter xmlWriter = new(stream, encoding) + var xmlWriter = new XmlTextWriter(stream, encoding) { // Use indenting for readability @@ -3333,7 +3336,7 @@ public void SaveConfigToXml(XmlWriter xmlWriter) /// Array of source bytes. public void LoadConfigFromArray(byte[] buffer) { - MemoryStream ms = new(buffer); + var ms = new MemoryStream(buffer); LoadConfigFromStream(ms); ms.Close(); } @@ -3345,7 +3348,7 @@ public void LoadConfigFromArray(byte[] buffer) public void LoadConfigFromArray(string filename) { // Open existing file - FileStream fs = new(filename, FileMode.Open, FileAccess.Read, FileShare.Read); + var fs = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read); try { @@ -3366,7 +3369,7 @@ public void LoadConfigFromArray(string filename) public void LoadConfigFromFile(string filename) { // Open existing file - FileStream fs = new(filename, FileMode.Open, FileAccess.Read, FileShare.Read); + var fs = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read); try { @@ -3386,7 +3389,7 @@ public void LoadConfigFromFile(string filename) /// Stream object. public void LoadConfigFromStream(Stream stream) { - XmlTextReader xmlReader = new(stream) + var xmlReader = new XmlTextReader(stream) { WhitespaceHandling = WhitespaceHandling.None }; @@ -3426,9 +3429,9 @@ public void LoadConfigFromXml(XmlReader xmlReader) throw new ArgumentException(@"Can only load Version 1 and upwards of KryptonDockingManager persisted data."); } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); // Create a list of all the existing pages - KryptonPageCollection currentPages = new(); + var currentPages = new KryptonPageCollection(); PropogatePageList(DockingPropogatePageList.All, currentPages); // Reset docking hierarchy ready for the reload @@ -3499,7 +3502,7 @@ public void LoadConfigFromXml(XmlReader xmlReader) if (currentPages.Count > 0) { // Create a list of all the pages present after loading - KryptonPageCollection loadedPages = new(); + var loadedPages = new KryptonPageCollection(); PropogatePageList(DockingPropogatePageList.All, loadedPages); // Remove the loaded pages from the current page list @@ -3514,7 +3517,7 @@ public void LoadConfigFromXml(XmlReader xmlReader) if (currentPages.Count > 0) { // Generate event so the pages can be processed manually - PagesEventArgs args = new(currentPages); + var args = new PagesEventArgs(currentPages); OnOrphanedPages(args); // If there are pages not processed by the event @@ -3544,7 +3547,7 @@ public virtual KryptonPage[] Pages { get { - KryptonPageCollection pages = new(); + var pages = new KryptonPageCollection(); PropogatePageList(DockingPropogatePageList.All, pages); return ArrayFromCollection(pages); } @@ -3558,7 +3561,7 @@ public virtual KryptonPage[] PagesDocked { get { - KryptonPageCollection pages = new(); + var pages = new KryptonPageCollection(); PropogatePageList(DockingPropogatePageList.Docked, pages); return ArrayFromCollection(pages); } @@ -3572,7 +3575,7 @@ public virtual KryptonPage[] PagesAutoHidden { get { - KryptonPageCollection pages = new(); + var pages = new KryptonPageCollection(); PropogatePageList(DockingPropogatePageList.AutoHidden, pages); return ArrayFromCollection(pages); } @@ -3586,7 +3589,7 @@ public virtual KryptonPage[] PagesFloating { get { - KryptonPageCollection pages = new(); + var pages = new KryptonPageCollection(); PropogatePageList(DockingPropogatePageList.Floating, pages); return ArrayFromCollection(pages); } @@ -3600,7 +3603,7 @@ public virtual KryptonPage[] PagesWorkspace { get { - KryptonPageCollection pages = new(); + var pages = new KryptonPageCollection(); PropogatePageList(DockingPropogatePageList.Filler, pages); return ArrayFromCollection(pages); } @@ -3614,7 +3617,7 @@ public virtual KryptonWorkspaceCell[] Cells { get { - KryptonWorkspaceCellList cells = new(); + var cells = new KryptonWorkspaceCellList(); PropogateCellList(DockingPropogateCellList.All, cells); return cells.ToArray(); } @@ -3628,7 +3631,7 @@ public virtual KryptonWorkspaceCell[] CellsDocked { get { - KryptonWorkspaceCellList cells = new(); + var cells = new KryptonWorkspaceCellList(); PropogateCellList(DockingPropogateCellList.Docked, cells); return cells.ToArray(); } @@ -3642,7 +3645,7 @@ public virtual KryptonWorkspaceCell[] CellsFloating { get { - KryptonWorkspaceCellList cells = new(); + var cells = new KryptonWorkspaceCellList(); PropogateCellList(DockingPropogateCellList.Floating, cells); return cells.ToArray(); } @@ -3656,7 +3659,7 @@ public virtual KryptonWorkspaceCell[] CellsWorkspace { get { - KryptonWorkspaceCellList cells = new(); + var cells = new KryptonWorkspaceCellList(); PropogateCellList(DockingPropogateCellList.Workspace, cells); return cells.ToArray(); } @@ -4099,7 +4102,7 @@ private void OnStringPropertyChanged(object sender, PropertyChangedEventArgs e) private void OnDropDownWorkspaceClicked(object sender, EventArgs e) { - KryptonContextMenuItem workspaceItem = (KryptonContextMenuItem)sender; + var workspaceItem = (KryptonContextMenuItem)sender; // Action depends on the current location if (workspaceItem.Tag is string uniqueName) @@ -4122,7 +4125,7 @@ private void OnDropDownWorkspaceClicked(object sender, EventArgs e) private void OnDropDownNavigatorClicked(object sender, EventArgs e) { - KryptonContextMenuItem workspaceItem = (KryptonContextMenuItem)sender; + var workspaceItem = (KryptonContextMenuItem)sender; if (workspaceItem.Tag is string uniqueName) { @@ -4145,7 +4148,7 @@ private void OnDropDownNavigatorClicked(object sender, EventArgs e) private void OnDropDownAutoHiddenClicked(object sender, EventArgs e) { - KryptonContextMenuItem autoHiddenItem = (KryptonContextMenuItem)sender; + var autoHiddenItem = (KryptonContextMenuItem)sender; if (autoHiddenItem.Tag is string uniqueName) { @@ -4168,7 +4171,7 @@ private void OnDropDownAutoHiddenClicked(object sender, EventArgs e) private void OnDropDownDockedClicked(object sender, EventArgs e) { - KryptonContextMenuItem dockedItem = (KryptonContextMenuItem)sender; + var dockedItem = (KryptonContextMenuItem)sender; if (dockedItem.Tag is string uniqueName) { @@ -4192,7 +4195,7 @@ private void OnDropDownDockedClicked(object sender, EventArgs e) private void OnDropDownFloatingClicked(object sender, EventArgs e) { // Get the unique name of the page that needs to be converted to floating - KryptonContextMenuItem floatingItem = (KryptonContextMenuItem)sender; + var floatingItem = (KryptonContextMenuItem)sender; if (floatingItem.Tag is string uniqueName) { @@ -4215,7 +4218,7 @@ private void OnDropDownFloatingClicked(object sender, EventArgs e) private void OnDropDownCloseClicked(object sender, EventArgs e) { - KryptonContextMenuItem closeItem = (KryptonContextMenuItem)sender; + var closeItem = (KryptonContextMenuItem)sender; CloseRequest(new[] { (string)closeItem.Tag! }); } diff --git a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingNavigator.cs b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingNavigator.cs index f0fd7d43b..54045e591 100644 --- a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingNavigator.cs +++ b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingNavigator.cs @@ -78,11 +78,8 @@ public override IDockingElement? Parent KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - DockableNavigatorEventArgs args = new(DockableNavigatorControl, this); - if (dockingManager != null) - { - dockingManager.RaiseDockableNavigatorAdded(args); - } + var args = new DockableNavigatorEventArgs(DockableNavigatorControl, this); + dockingManager?.RaiseDockableNavigatorAdded(args); } } } @@ -226,7 +223,7 @@ public void ShowPages(string[] uniqueNames) } } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(DockingPropogateAction.ShowPages, uniqueNames); } } @@ -236,7 +233,7 @@ public void ShowPages(string[] uniqueNames) /// public void ShowAllPages() { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(DockingPropogateAction.ShowAllPages, null as string[]); } @@ -332,7 +329,7 @@ public void HidePages(string[] uniqueNames) } } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(DockingPropogateAction.HidePages, uniqueNames); } } @@ -342,7 +339,7 @@ public void HidePages(string[] uniqueNames) /// public void HideAllPages() { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(DockingPropogateAction.HideAllPages, null as string[]); } @@ -430,7 +427,7 @@ public void RemovePages(string[] uniqueNames, bool disposePage) } // Remove page details from all parts of the hierarchy - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(disposePage ? DockingPropogateAction.RemoveAndDisposePages : DockingPropogateAction.RemovePages, uniqueNames); } } @@ -442,7 +439,7 @@ public void RemovePages(string[] uniqueNames, bool disposePage) public void RemoveAllPages(bool disposePage) { // Remove all details about all pages from all parts of the hierarchy - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(disposePage ? DockingPropogateAction.RemoveAndDisposeAllPages : DockingPropogateAction.RemoveAllPages, null as string[]); } @@ -478,7 +475,7 @@ public override void PropogateAction(DockingPropogateAction action, string?[] un if ((page != null) && page is not KryptonStorePage) { // Replace the existing page with a placeholder that has the same unique name - KryptonStorePage placeholder = new(uniqueName, _storeName); + var placeholder = new KryptonStorePage(uniqueName, _storeName); pageCollection.Insert(pageCollection.IndexOf(page), placeholder); pageCollection.Remove(page); } @@ -493,7 +490,7 @@ public override void PropogateAction(DockingPropogateAction action, string?[] un if (page is { } and not KryptonStorePage) { // Replace the existing page with a placeholder that has the same unique name - KryptonStorePage placeholder = new(page.UniqueName, _storeName); + var placeholder = new KryptonStorePage(page.UniqueName, _storeName); pageCollection.Insert(pageCollection.IndexOf(page), placeholder); pageCollection.Remove(page); } @@ -650,7 +647,7 @@ public override void PropogateDragTargets(KryptonFloatingWindow? floatingWindow, DragTargetList targets) { // Create list of the pages that are allowed to be dropped into this navigator - KryptonPageCollection pages = new(); + var pages = new KryptonPageCollection(); if (dragData != null) { @@ -773,11 +770,8 @@ public override void SaveElementToXml(XmlWriter xmlWriter) XmlHelper.TextToXmlAttribute(xmlWriter, @"S", CommonHelper.BoolToString(page is KryptonStorePage)!); XmlHelper.TextToXmlAttribute(xmlWriter, @"V", CommonHelper.BoolToString(page.LastVisibleSet)!, @"True"); xmlWriter.WriteStartElement(@"CPD"); - DockPageSavingEventArgs args = new(dockingManager, xmlWriter, page); - if (dockingManager != null) - { - dockingManager.RaisePageSaving(args); - } + var args = new DockPageSavingEventArgs(dockingManager, xmlWriter, page); + dockingManager?.RaisePageSaving(args); xmlWriter.WriteEndElement(); xmlWriter.WriteEndElement(); } @@ -853,7 +847,7 @@ public override void LoadElementFromXml(XmlReader xmlReader, KryptonPageCollecti if (page == null && manager != null) { // Generate event so developer can create and supply the page now - RecreateLoadingPageEventArgs args = new(uniqueName); + var args = new RecreateLoadingPageEventArgs(uniqueName); manager.RaiseRecreateLoadingPage(args); @@ -889,11 +883,8 @@ public override void LoadElementFromXml(XmlReader xmlReader, KryptonPageCollecti var finished = xmlReader.IsEmptyElement; // Generate event so custom data can be loaded and/or the page to be added can be modified - DockPageLoadingEventArgs pageLoading = new(manager, xmlReader, page); - if (manager != null) - { - manager.RaisePageLoading(pageLoading); - } + var pageLoading = new DockPageLoadingEventArgs(manager, xmlReader, page); + manager?.RaisePageLoading(pageLoading); // Read everything until we get the end of custom data marker while (!finished) @@ -949,7 +940,7 @@ private void OnDockableNavigatorDisposed(object sender, EventArgs e) KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - DockableNavigatorEventArgs args = new(DockableNavigatorControl, this); + var args = new DockableNavigatorEventArgs(DockableNavigatorControl, this); dockingManager.RaiseDockableNavigatorRemoved(args); } } @@ -989,7 +980,7 @@ private void OnDockableNavigatorPageDrop(object sender, PageDropEventArgs e) KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null && e.Page != null) { - CancelUniqueNameEventArgs args = new(e.Page.UniqueName, false); + var args = new CancelUniqueNameEventArgs(e.Page.UniqueName, false); dockingManager.RaisePageNavigatorRequest(args); // Pass back the result of the event diff --git a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingSpace.cs b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingSpace.cs index ea3adc898..686bd7638 100644 --- a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingSpace.cs +++ b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingSpace.cs @@ -359,7 +359,7 @@ public override void PropogateAction(DockingPropogateAction action, string?[] un { // Replace the existing page with a placeholder that has the same unique name KryptonWorkspaceCell? cell = SpaceControl.CellForPage(page); - KryptonStorePage placeholder = new(uniqueName, _storeName); + var placeholder = new KryptonStorePage(uniqueName, _storeName); if (cell != null) { cell.Pages.Insert(cell.Pages.IndexOf(page), placeholder); @@ -382,7 +382,7 @@ public override void PropogateAction(DockingPropogateAction action, string?[] un if (page is { } and not KryptonStorePage) { // Replace the existing page with a placeholder that has the same unique name - KryptonStorePage placeholder = new(page.UniqueName, _storeName); + var placeholder = new KryptonStorePage(page.UniqueName, _storeName); cell.Pages.Insert(cell.Pages.IndexOf(page), placeholder); cell.Pages.Remove(page); } @@ -470,10 +470,7 @@ public override void PropogateAction(DockingPropogateAction action, KryptonPage[ if (storePage is KryptonStorePage) { KryptonWorkspaceCell? cell = SpaceControl!.CellForPage(storePage); - if (cell != null) - { - cell.Pages.Insert(cell.Pages.IndexOf(storePage), page); - } + cell?.Pages.Insert(cell.Pages.IndexOf(storePage), page); } } } @@ -951,7 +948,7 @@ private void OnSpaceControlPageLoading(object sender, PageLoadingEventArgs e) KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - DockPageLoadingEventArgs args = new(dockingManager, e.XmlReader, e.Page); + var args = new DockPageLoadingEventArgs(dockingManager, e.XmlReader, e.Page); dockingManager.RaisePageLoading(args); } } @@ -961,7 +958,7 @@ private void OnSpaceControlPageSaving(object sender, PageSavingEventArgs e) KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - DockPageSavingEventArgs args = new(dockingManager, e.XmlWriter, e.Page); + var args = new DockPageSavingEventArgs(dockingManager, e.XmlWriter, e.Page); dockingManager.RaisePageSaving(args); } } diff --git a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingWorkspace.cs b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingWorkspace.cs index 2ffd3641a..296e0a301 100644 --- a/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingWorkspace.cs +++ b/Source/Krypton Components/Krypton.Docking/Elements Impl/KryptonDockingWorkspace.cs @@ -74,7 +74,7 @@ public override IDockingElement? Parent KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - DockableWorkspaceEventArgs args = new(DockableWorkspaceControl, this); + var args = new DockableWorkspaceEventArgs(DockableWorkspaceControl, this); dockingManager.RaiseDockableWorkspaceAdded(args); } } @@ -168,7 +168,7 @@ public void ShowPages([DisallowNull] string[] uniqueNames) } } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(DockingPropogateAction.ShowPages, uniqueNames); } } @@ -178,7 +178,7 @@ public void ShowPages([DisallowNull] string[] uniqueNames) /// public void ShowAllPages() { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(DockingPropogateAction.ShowAllPages, null as string[]); } @@ -274,7 +274,7 @@ public void HidePages([DisallowNull] string[] uniqueNames) } } - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(DockingPropogateAction.HidePages, uniqueNames); } } @@ -284,7 +284,7 @@ public void HidePages([DisallowNull] string[] uniqueNames) /// public void HideAllPages() { - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(DockingPropogateAction.HideAllPages, null as string[]); } @@ -372,7 +372,7 @@ public void RemovePages([DisallowNull] string[] uniqueNames, bool disposePage) } // Remove page details from all parts of the hierarchy - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(disposePage ? DockingPropogateAction.RemoveAndDisposePages : DockingPropogateAction.RemovePages, uniqueNames); } } @@ -384,7 +384,7 @@ public void RemovePages([DisallowNull] string[] uniqueNames, bool disposePage) public void RemoveAllPages(bool disposePage) { // Remove all details about all pages from all parts of the hierarchy - using DockingMultiUpdate update = new(this); + using var update = new DockingMultiUpdate(this); base.PropogateAction(disposePage ? DockingPropogateAction.RemoveAndDisposeAllPages : DockingPropogateAction.RemoveAllPages, null as string[]); } @@ -420,7 +420,7 @@ public override void PropogateDragTargets(KryptonFloatingWindow? floatingWindow, DragTargetList targets) { // Create list of the pages that are allowed to be dropped into this workspace - KryptonPageCollection pages = new(); + var pages = new KryptonPageCollection(); if (dragData != null) { foreach (KryptonPage page in dragData.Pages.Where(static page => @@ -521,7 +521,7 @@ protected override void RaiseRemoved() KryptonDockingManager? dockingManager = DockingManager; if (dockingManager != null) { - DockableWorkspaceEventArgs args = new(DockableWorkspaceControl, this); + var args = new DockableWorkspaceEventArgs(DockableWorkspaceControl, this); dockingManager.RaiseDockableWorkspaceRemoved(args); } } @@ -538,7 +538,7 @@ protected override void RaiseCellAdding(KryptonWorkspaceCell cell) { if (DockableWorkspaceControl != null) { - DockableWorkspaceCellEventArgs args = new(DockableWorkspaceControl, this, cell); + var args = new DockableWorkspaceCellEventArgs(DockableWorkspaceControl, this, cell); dockingManager.RaiseDockableWorkspaceCellAdding(args); } } @@ -556,7 +556,7 @@ protected override void RaiseCellRemoved(KryptonWorkspaceCell cell) { if (DockableWorkspaceControl != null) { - DockableWorkspaceCellEventArgs args = new(DockableWorkspaceControl, this, cell); + var args = new DockableWorkspaceCellEventArgs(DockableWorkspaceControl, this, cell); dockingManager.RaiseDockableWorkspaceCellRemoved(args); } } @@ -575,7 +575,7 @@ protected override void RaiseSpacePageDrop(object sender, PageDropEventArgs e) { if (e.Page != null) { - CancelUniqueNameEventArgs args = new(e.Page.UniqueName, false); + var args = new CancelUniqueNameEventArgs(e.Page.UniqueName, false); dockingManager.RaisePageWorkspaceRequest(args); // Pass back the result of the event diff --git a/Source/Krypton Components/Krypton.Navigator/ButtonSpecs/ButtonSpecNavFixedConverter.cs b/Source/Krypton Components/Krypton.Navigator/ButtonSpecs/ButtonSpecNavFixedConverter.cs index 393e28612..d7d270b38 100644 --- a/Source/Krypton Components/Krypton.Navigator/ButtonSpecs/ButtonSpecNavFixedConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/ButtonSpecs/ButtonSpecNavFixedConverter.cs @@ -45,7 +45,7 @@ public override bool CanConvertTo(ITypeDescriptorContext? context, Type? destina if (destinationType == typeof(string)) { // Cast to correct type - ButtonSpecNavFixed? buttonSpec = (ButtonSpecNavFixed)value!; + ButtonSpecNavFixed buttonSpec = (ButtonSpecNavFixed)value!; // Ask the button spec for the correct string return buttonSpec.ToString(); diff --git a/Source/Krypton Components/Krypton.Navigator/ButtonSpecs/ButtonSpecNavManagerLayoutHeaderBar.cs b/Source/Krypton Components/Krypton.Navigator/ButtonSpecs/ButtonSpecNavManagerLayoutHeaderBar.cs index bc0938686..5aa549ad6 100644 --- a/Source/Krypton Components/Krypton.Navigator/ButtonSpecs/ButtonSpecNavManagerLayoutHeaderBar.cs +++ b/Source/Krypton Components/Krypton.Navigator/ButtonSpecs/ButtonSpecNavManagerLayoutHeaderBar.cs @@ -80,7 +80,7 @@ public void UpdateRemapping(IPaletteContent? paletteContent, foreach (ButtonSpecView view in ButtonSpecViews) { // Cast the remapping palette to the correct type - ButtonSpecRemapByContentCache? remapPalette = (ButtonSpecRemapByContentCache)view.RemapPalette!; + ButtonSpecRemapByContentCache remapPalette = (ButtonSpecRemapByContentCache)view.RemapPalette!; remapPalette.SetPaletteContent(_paletteContent); remapPalette.SetPaletteState(_paletteState); } @@ -115,7 +115,7 @@ protected override void ButtonSpecCreated(ButtonSpec buttonSpec, int viewDockerIndex) { // Cast the remapping palette to the correct type - ButtonSpecRemapByContentCache? remapPalette = (ButtonSpecRemapByContentCache)buttonView.RemapPalette!; + ButtonSpecRemapByContentCache remapPalette = (ButtonSpecRemapByContentCache)buttonView.RemapPalette!; // Update button with the foreground used for color mapping remapPalette.SetPaletteContent(_paletteContent); diff --git a/Source/Krypton Components/Krypton.Navigator/Controller/DragViewController.cs b/Source/Krypton Components/Krypton.Navigator/Controller/DragViewController.cs index 4753885e4..bd90f38a1 100644 --- a/Source/Krypton Components/Krypton.Navigator/Controller/DragViewController.cs +++ b/Source/Krypton Components/Krypton.Navigator/Controller/DragViewController.cs @@ -62,7 +62,7 @@ public class DragViewController : GlobalId, /// /// Occurs when drag quits. /// - public event EventHandler DragQuit; + public event EventHandler? DragQuit; #endregion #region Identity @@ -131,7 +131,7 @@ public virtual void MouseMove(Control c, Point pt) { _draggingAttempt = true; Point targetOrigin = Target.ClientLocation; - Point offset = new(MousePoint.X - targetOrigin.X, MousePoint.Y - targetOrigin.Y); + var offset = new Point(MousePoint.X - targetOrigin.X, MousePoint.Y - targetOrigin.Y); OnDragStart(MousePoint, offset, c); } } @@ -419,7 +419,7 @@ protected virtual void OnDragStart(Point mousePt, Point offset, Control c) { // Convert point from client to screen coordinates mousePt = Target.OwningControl.PointToScreen(mousePt); - DragStartEventCancelArgs ce = new(mousePt, offset, c); + var ce = new DragStartEventCancelArgs(mousePt, offset, c); DragStart?.Invoke(this, ce); diff --git a/Source/Krypton Components/Krypton.Navigator/Controller/OutlookMiniController.cs b/Source/Krypton Components/Krypton.Navigator/Controller/OutlookMiniController.cs index 8f80168c2..31f0919fd 100644 --- a/Source/Krypton Components/Krypton.Navigator/Controller/OutlookMiniController.cs +++ b/Source/Krypton Components/Krypton.Navigator/Controller/OutlookMiniController.cs @@ -31,7 +31,7 @@ internal class OutlookMiniController : GlobalId, /// /// Occurs when a click portion is clicked. /// - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Identity @@ -394,7 +394,7 @@ protected void UpdateTargetState(Point pt) /// Raises the Click event. /// /// An EventArgs containing the event data. - protected virtual void OnClick(EventArgs e) => Click(_target, e); + protected virtual void OnClick(EventArgs e) => Click?.Invoke(_target, e); /// /// Raises the NeedPaint event. @@ -402,10 +402,7 @@ protected void UpdateTargetState(Point pt) /// Does the palette change require a layout. protected virtual void OnNeedPaint(bool needLayout) { - if (_needPaint != null) - { - _needPaint(this, new NeedLayoutEventArgs(needLayout, _target.ClientRectangle)); - } + _needPaint?.Invoke(this, new NeedLayoutEventArgs(needLayout, _target.ClientRectangle)); } #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/Controls Navigator/KryptonNavigator.cs b/Source/Krypton Components/Krypton.Navigator/Controls Navigator/KryptonNavigator.cs index f3332f960..102c367d8 100644 --- a/Source/Krypton Components/Krypton.Navigator/Controls Navigator/KryptonNavigator.cs +++ b/Source/Krypton Components/Krypton.Navigator/Controls Navigator/KryptonNavigator.cs @@ -883,7 +883,7 @@ public bool AllowTabSelect /// List of drag targets. public virtual DragTargetList GenerateDragTargets(PageDragEndData? dragEndData, KryptonPageFlags allowFlags) { - DragTargetList targets = new() + var targets = new DragTargetList { // Generate target for the entire navigator client area @@ -1393,7 +1393,7 @@ protected override bool ProcessMnemonic(char charCode) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(250, 150); + protected override Size DefaultSize => new Size(250, 150); /// /// Update global event attachments. @@ -1424,10 +1424,7 @@ protected override void UpdateGlobalEvents(bool attach) /// A KryptonPageCancelEventArgs containing event details. protected virtual void OnDeselecting(KryptonPageCancelEventArgs e) { - if (Deselecting != null) - { - Deselecting(this, e); - } + Deselecting?.Invoke(this, e); } /// @@ -1436,10 +1433,7 @@ protected virtual void OnDeselecting(KryptonPageCancelEventArgs e) /// A KryptonPageCancelEventArgs containing event details. protected virtual void OnSelecting(KryptonPageCancelEventArgs e) { - if (Selecting != null) - { - Selecting(this, e); - } + Selecting?.Invoke(this, e); } /// @@ -1448,10 +1442,7 @@ protected virtual void OnSelecting(KryptonPageCancelEventArgs e) /// A KryptonPageEventArgs containing event details. protected virtual void OnDeselected(KryptonPageEventArgs e) { - if (Deselected != null) - { - Deselected(this, e); - } + Deselected?.Invoke(this, e); } /// @@ -1460,10 +1451,7 @@ protected virtual void OnDeselected(KryptonPageEventArgs e) /// A KryptonPageEventArgs containing event details. protected virtual void OnSelected(KryptonPageEventArgs e) { - if (Selected != null) - { - Selected(this, e); - } + Selected?.Invoke(this, e); } /// @@ -1472,10 +1460,7 @@ protected virtual void OnSelected(KryptonPageEventArgs e) /// A PageDragCancelEventArgs containing event details. protected internal virtual void OnBeforePageReorder(PageReorderEventArgs de) { - if (BeforePageReorder != null) - { - BeforePageReorder(this, de); - } + BeforePageReorder?.Invoke(this, de); } /// @@ -1484,10 +1469,7 @@ protected internal virtual void OnBeforePageReorder(PageReorderEventArgs de) /// A PageDragCancelEventArgs containing event details. protected virtual void OnBeforePageDrag(PageDragCancelEventArgs de) { - if (BeforePageDrag != null) - { - BeforePageDrag(this, de); - } + BeforePageDrag?.Invoke(this, de); } /// @@ -1496,10 +1478,7 @@ protected virtual void OnBeforePageDrag(PageDragCancelEventArgs de) /// A EventArgs containing event details. protected virtual void OnAfterPageDrag(PageDragEndEventArgs e) { - if (AfterPageDrag != null) - { - AfterPageDrag(this, e); - } + AfterPageDrag?.Invoke(this, e); } /// @@ -1508,10 +1487,7 @@ protected virtual void OnAfterPageDrag(PageDragEndEventArgs e) /// A v containing event details. protected internal virtual void OnPageDrop(PageDropEventArgs e) { - if (PageDrop != null) - { - PageDrop(this, e); - } + PageDrop?.Invoke(this, e); } /// @@ -1558,10 +1534,7 @@ protected virtual void OnSelectedPageChanged(EventArgs e) PerformLayout(); } - if (SelectedPageChanged != null) - { - SelectedPageChanged(this, e); - } + SelectedPageChanged?.Invoke(this, e); } } @@ -1583,10 +1556,7 @@ protected virtual DirectionButtonAction OnPreviousAction() SelectedIndex, Button.PreviousButtonAction); - if (PreviousAction != null) - { - PreviousAction(this, e); - } + PreviousAction?.Invoke(this, e); // Return the actual action performed dba = e.Action; @@ -1620,10 +1590,7 @@ protected virtual DirectionButtonAction OnNextAction() SelectedIndex, Button.NextButtonAction); - if (NextAction != null) - { - NextAction(this, e); - } + NextAction?.Invoke(this, e); // Return the actual action performed dba = e.Action; @@ -1657,10 +1624,7 @@ protected virtual void OnContextAction(/*ContextActionEventArgs e*/) /// An CloseActionEventArgs containing the event args. protected virtual void OnCloseAction(CloseActionEventArgs e) { - if (CloseAction != null) - { - CloseAction(this, e); - } + CloseAction?.Invoke(this, e); } /// @@ -1692,10 +1656,7 @@ protected virtual CloseButtonAction OnCloseAction(KryptonPage? page) Pages.IndexOf(page), Button.CloseButtonAction); - if (CloseAction != null) - { - CloseAction(this, e); - } + CloseAction?.Invoke(this, e); // Return the action we processed cba = e.Action; @@ -1755,10 +1716,7 @@ protected virtual CloseButtonAction OnCloseAction(KryptonPage? page) /// An EventArgs containing the event args. protected virtual void OnTabCountChanged(EventArgs e) { - if (TabCountChanged != null) - { - TabCountChanged(this, e); - } + TabCountChanged?.Invoke(this, e); } /// @@ -1767,10 +1725,7 @@ protected virtual void OnTabCountChanged(EventArgs e) /// An EventArgs containing the event args. protected internal virtual void OnTabVisibleCountChanged(EventArgs e) { - if (TabVisibleCountChanged != null) - { - TabVisibleCountChanged(this, e); - } + TabVisibleCountChanged?.Invoke(this, e); } /// @@ -1779,10 +1734,7 @@ protected internal virtual void OnTabVisibleCountChanged(EventArgs e) /// An KryptonPageEventArgs containing the event args. protected internal virtual void OnTabClicked(KryptonPageEventArgs e) { - if (TabClicked != null) - { - TabClicked(this, e); - } + TabClicked?.Invoke(this, e); } /// @@ -1791,10 +1743,7 @@ protected internal virtual void OnTabClicked(KryptonPageEventArgs e) /// An KryptonPageEventArgs containing the event args. protected internal virtual void OnTabDoubleClicked(KryptonPageEventArgs e) { - if (TabDoubleClicked != null) - { - TabDoubleClicked(this, e); - } + TabDoubleClicked?.Invoke(this, e); } /// @@ -1803,10 +1752,7 @@ protected internal virtual void OnTabDoubleClicked(KryptonPageEventArgs e) /// An EventArgs containing the event args. protected internal virtual void OnPrimaryHeaderLeftClicked(EventArgs e) { - if (PrimaryHeaderLeftClicked != null) - { - PrimaryHeaderLeftClicked(this, e); - } + PrimaryHeaderLeftClicked?.Invoke(this, e); } /// @@ -1815,10 +1761,7 @@ protected internal virtual void OnPrimaryHeaderLeftClicked(EventArgs e) /// An EventArgs containing the event args. protected internal virtual void OnPrimaryHeaderRightClicked(EventArgs e) { - if (PrimaryHeaderRightClicked != null) - { - PrimaryHeaderRightClicked(this, e); - } + PrimaryHeaderRightClicked?.Invoke(this, e); } /// @@ -1827,10 +1770,7 @@ protected internal virtual void OnPrimaryHeaderRightClicked(EventArgs e) /// An EventArgs containing the event args. protected internal virtual void OnPrimaryHeaderDoubleClicked(EventArgs e) { - if (PrimaryHeaderDoubleClicked != null) - { - PrimaryHeaderDoubleClicked(this, e); - } + PrimaryHeaderDoubleClicked?.Invoke(this, e); } /// @@ -1839,10 +1779,7 @@ protected internal virtual void OnPrimaryHeaderDoubleClicked(EventArgs e) /// Context menu about to be Displayed. protected internal virtual void OnOutlookDropDown(KryptonContextMenu kcm) { - if (OutlookDropDown != null) - { - OutlookDropDown(this, new KryptonContextMenuEventArgs(SelectedPage, SelectedIndex, kcm)); - } + OutlookDropDown?.Invoke(this, new KryptonContextMenuEventArgs(SelectedPage, SelectedIndex, kcm)); } /// @@ -1851,10 +1788,7 @@ protected internal virtual void OnOutlookDropDown(KryptonContextMenu kcm) /// A PopupPageEventArgs containing event data. protected internal virtual void OnDisplayPopupPage(PopupPageEventArgs e) { - if (DisplayPopupPage != null) - { - DisplayPopupPage(this, e); - } + DisplayPopupPage?.Invoke(this, e); } /// @@ -1863,10 +1797,7 @@ protected internal virtual void OnDisplayPopupPage(PopupPageEventArgs e) /// A ShowContextMenuArgs containing event data. protected internal virtual void OnShowContextMenu(ShowContextMenuArgs e) { - if (ShowContextMenu != null) - { - ShowContextMenu(this, e); - } + ShowContextMenu?.Invoke(this, e); } /// @@ -1875,10 +1806,7 @@ protected internal virtual void OnShowContextMenu(ShowContextMenuArgs e) /// An CtrlTabCancelEventArgs containing event details. protected internal virtual void OnCtrlTabStart(CtrlTabCancelEventArgs e) { - if (CtrlTabStart != null) - { - CtrlTabStart(this, e); - } + CtrlTabStart?.Invoke(this, e); } /// @@ -1887,10 +1815,7 @@ protected internal virtual void OnCtrlTabStart(CtrlTabCancelEventArgs e) /// An CtrlTabCancelEventArgs containing event details. protected internal virtual void OnCtrlTabWrap(CtrlTabCancelEventArgs e) { - if (CtrlTabWrap != null) - { - CtrlTabWrap(this, e); - } + CtrlTabWrap?.Invoke(this, e); } /// @@ -1899,10 +1824,7 @@ protected internal virtual void OnCtrlTabWrap(CtrlTabCancelEventArgs e) /// An KryptonPageEventArgs containing event details. protected virtual void OnTabMouseHoverStart(KryptonPageEventArgs e) { - if (TabMouseHoverStart != null) - { - TabMouseHoverStart(this, e); - } + TabMouseHoverStart?.Invoke(this, e); } /// @@ -1911,10 +1833,7 @@ protected virtual void OnTabMouseHoverStart(KryptonPageEventArgs e) /// An EventArgs containing event details. protected virtual void OnTabMouseHoverEnd(EventArgs e) { - if (TabMouseHoverEnd != null) - { - TabMouseHoverEnd(this, e); - } + TabMouseHoverEnd?.Invoke(this, e); } /// @@ -1923,10 +1842,7 @@ protected virtual void OnTabMouseHoverEnd(EventArgs e) /// An TabMovedEventArgs containing event details. protected internal virtual void OnTabMoved(TabMovedEventArgs e) { - if (TabMoved != null) - { - TabMoved(this, e); - } + TabMoved?.Invoke(this, e); } /// @@ -1935,10 +1851,7 @@ protected internal virtual void OnTabMoved(TabMovedEventArgs e) /// Name of the property that has changed. protected internal virtual void OnViewBuilderPropertyChanged(string propertyName) { - if (ViewBuilderPropertyChanged != null) - { - ViewBuilderPropertyChanged(this, new PropertyChangedEventArgs(propertyName)); - } + ViewBuilderPropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } #endregion @@ -2186,10 +2099,7 @@ internal void ShowPopupPage(KryptonPage? page, if (!delayDelegate) { - if (finishDelegate != null) - { - finishDelegate(this, EventArgs.Empty); - } + finishDelegate?.Invoke(this, EventArgs.Empty); } } @@ -2240,7 +2150,7 @@ internal void InternalDragStart(DragStartEventCancelArgs e, KryptonPage? page) // Generate event allowing the DragPageNotify setting to be updated before the // actual drag processing occurs. You can even cancel the drag entirely. - PageDragCancelEventArgs de = new(e.Point, e.Offset, e.Control, _dragPages) + var de = new PageDragCancelEventArgs(e.Point, e.Offset, e.Control, _dragPages) { Cancel = (!AllowPageDrag || !allowPageDrag) }; @@ -2328,8 +2238,8 @@ private void CreatePageCollection() Pages.Inserted += OnPageInserted; Pages.Removing += OnPageRemoving; Pages.Removed += OnPageRemoved; - Pages.Clearing += OnPageClearing!; - Pages.Cleared += OnPageCleared!; + Pages.Clearing += OnPageClearing; + Pages.Cleared += OnPageCleared; // Init fields used to notice a change in the page/page visible counts _cachePageCount = 0; @@ -2366,7 +2276,7 @@ private void CreateStorageObjects() // can then populate it with the correct set of values dependent on the current pages if (Button.ContextButton.KryptonContextMenu != null) { - Button.ContextButton.KryptonContextMenu.Opening += OnOpeningContextMenu!; + Button.ContextButton.KryptonContextMenu.Opening += OnOpeningContextMenu; } } @@ -2383,8 +2293,8 @@ private void CreateViewManager() } // We need to know when the layout cycle is starting/ending - ViewManager.LayoutBefore += OnViewManagerLayoutBefore!; - ViewManager.LayoutAfter += OnViewManagerLayoutAfter!; + ViewManager.LayoutBefore += OnViewManagerLayoutBefore; + ViewManager.LayoutAfter += OnViewManagerLayoutAfter; } private void CreateChildControl() @@ -2406,7 +2316,7 @@ private void CreateChildControl() // We need to know whenever a control is removed from the child panel if (ChildPanel != null) { - ChildPanel.ControlRemoved += OnChildPanelControlRemoved!; + ChildPanel.ControlRemoved += OnChildPanelControlRemoved; // Add panel to the controls collection ((KryptonReadOnlyControls)Controls).AddInternal(ChildPanel); @@ -2417,13 +2327,13 @@ private void CreateInternalObjects() { // Create the manager for handling tooltips ToolTipManager = new ToolTipManager(ToolTipValues); - ToolTipManager.ShowToolTip += OnShowToolTip!; - ToolTipManager.CancelToolTip += OnCancelToolTip!; + ToolTipManager.ShowToolTip += OnShowToolTip; + ToolTipManager.CancelToolTip += OnCancelToolTip; // Create the manager for handling hovering HoverManager = new ToolTipManager(ToolTipValues); - HoverManager.ShowToolTip += OnStartHover!; - HoverManager.CancelToolTip += OnEndHover!; + HoverManager.ShowToolTip += OnStartHover; + HoverManager.CancelToolTip += OnEndHover; } #endregion @@ -2439,9 +2349,9 @@ private void OnPageInserted(object sender, TypedCollectionEventArgs // Hook into page events if (e.Item != null) { - e.Item.VisibleChanged += OnPageVisibleChanged!; - e.Item.EnabledChanged += OnPageEnabledChanged!; - e.Item.AppearancePropertyChanged += OnPageAppearanceChanged!; + e.Item.VisibleChanged += OnPageVisibleChanged; + e.Item.EnabledChanged += OnPageEnabledChanged; + e.Item.AppearancePropertyChanged += OnPageAppearanceChanged; e.Item.FlagsChanged += OnPageFlagsChanged; // Make the page inherit palette values from the navigator @@ -2501,9 +2411,9 @@ private void OnPageRemoved(object sender, TypedCollectionEventArgs // Unhook from page events e.Item.FlagsChanged -= OnPageFlagsChanged; - e.Item.AppearancePropertyChanged -= OnPageAppearanceChanged!; - e.Item.VisibleChanged -= OnPageVisibleChanged!; - e.Item.EnabledChanged -= OnPageEnabledChanged!; + e.Item.AppearancePropertyChanged -= OnPageAppearanceChanged; + e.Item.VisibleChanged -= OnPageVisibleChanged; + e.Item.EnabledChanged -= OnPageEnabledChanged; // Remove page from the child panel if (ChildPanel?.Controls.Contains(e.Item) == true) @@ -2540,9 +2450,9 @@ private void OnPageClearing(object sender, EventArgs e) // Unhook from page events page.FlagsChanged -= OnPageFlagsChanged; - page.AppearancePropertyChanged -= OnPageAppearanceChanged!; - page.VisibleChanged -= OnPageVisibleChanged!; - page.EnabledChanged -= OnPageEnabledChanged!; + page.AppearancePropertyChanged -= OnPageAppearanceChanged; + page.VisibleChanged -= OnPageVisibleChanged; + page.EnabledChanged -= OnPageEnabledChanged; } } @@ -2729,7 +2639,7 @@ private void SelectFirstAvailablePage() } // Create event information - KryptonPageCancelEventArgs args = new(next, Pages.IndexOf(next)) + var args = new KryptonPageCancelEventArgs(next, Pages.IndexOf(next)) { // Disabled pages default to not becoming selected Cancel = !next.Enabled @@ -2828,7 +2738,7 @@ private void SelectNextAvailablePage(KryptonPage? begin) } // Create event information - KryptonPageCancelEventArgs args = new(next, Pages.IndexOf(next)) + var args = new KryptonPageCancelEventArgs(next, Pages.IndexOf(next)) { // Disabled pages default to not becoming selected @@ -2974,9 +2884,11 @@ private void OnOpeningContextMenu(object sender, CancelEventArgs e) || page is { LastVisibleSet: true, Enabled: true }) { // Add a vertical break after every 20 items - if ((menuItems > 0) && ((menuItems % 20) == 0)) + if ((menuItems > 0) + && ((menuItems % 20) == 0) + ) { - KryptonContextMenuSeparator vertBreak = new() + var vertBreak = new KryptonContextMenuSeparator { Horizontal = false }; @@ -2986,7 +2898,7 @@ private void OnOpeningContextMenu(object sender, CancelEventArgs e) // Create a menu item for the page var pageMenuItem = new KryptonContextMenuItem(page.GetTextMapping(Button.ContextMenuMapText), page.GetImageMapping(Button.ContextMenuMapImage), - OnContextMenuClick!) + OnContextMenuClick) { // Should the item be enabled? @@ -3011,10 +2923,7 @@ private void OnOpeningContextMenu(object sender, CancelEventArgs e) Button.ContextButtonAction, contextMenu); - if (ContextAction != null) - { - ContextAction(this, cae); - } + ContextAction?.Invoke(this, cae); // Process the requested action switch (cae.Action) @@ -3116,7 +3025,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) CommonHelper.ContentStyleFromLabelStyle(toolTipStyle), shadow); - _visualPopupToolTip.Disposed += OnVisualPopupToolTipDisposed!; + _visualPopupToolTip.Disposed += OnVisualPopupToolTipDisposed; // Show relative to the provided screen point _visualPopupToolTip.ShowCalculatingSize(e.ControlMousePosition); @@ -3172,7 +3081,7 @@ private void OnVisualPopupToolTipDisposed(object sender, EventArgs e) { // Unhook events from the specific instance that generated event VisualPopupToolTip popupToolTip = (VisualPopupToolTip)sender; - popupToolTip.Disposed -= OnVisualPopupToolTipDisposed!; + popupToolTip.Disposed -= OnVisualPopupToolTipDisposed; // Not showing a popup page any more _visualPopupToolTip = null; @@ -3182,7 +3091,7 @@ private void OnVisualPopupPageDisposed(object sender, EventArgs e) { // Unhook events from the specific instance that generated event VisualPopupPage popupPage = (VisualPopupPage)sender; - popupPage.Disposed -= OnVisualPopupPageDisposed!; + popupPage.Disposed -= OnVisualPopupPageDisposed; // Not showing a popup page any more _visualPopupPage = null; diff --git a/Source/Krypton Components/Krypton.Navigator/Controls Visuals/VisualPopupPage.cs b/Source/Krypton Components/Krypton.Navigator/Controls Visuals/VisualPopupPage.cs index f052ffdbb..d8c97756f 100644 --- a/Source/Krypton Components/Krypton.Navigator/Controls Visuals/VisualPopupPage.cs +++ b/Source/Krypton Components/Krypton.Navigator/Controls Visuals/VisualPopupPage.cs @@ -49,51 +49,47 @@ public VisualPopupPage([DisallowNull] KryptonNavigator navigator, _navigator = navigator; _page = page; - // Always create the layout that positions the actual page - ViewLayoutPopupPage layoutPage = new(_navigator, _page); + // Always var the layout that positions the actual page + ViewLayoutPopupPage layoutPage = new ViewLayoutPopupPage(_navigator, _page); // Create the internal panel used for containing content - if (_navigator.StateNormal != null) + if (_navigator.StateNormal?.HeaderGroup != null) { - if (_navigator.StateNormal.HeaderGroup != null) + var drawGroup = new ViewDrawCanvas(_navigator.StateNormal.HeaderGroup.Back, + _navigator.StateNormal.HeaderGroup.Border, VisualOrientation.Top) { - ViewDrawCanvas drawGroup = new(_navigator.StateNormal.HeaderGroup.Back, - _navigator.StateNormal.HeaderGroup.Border, - VisualOrientation.Top) - { - // Add the layout inside the draw group - layoutPage - }; + // Add the layout inside the draw group + layoutPage + }; - // Do we need to add a border area around the page group - if (_navigator.PopupPages.Border > 0) - { - // Grab the actual border values - var border = _navigator.PopupPages.Border; + // Do we need to add a border area around the page group + if (_navigator.PopupPages.Border > 0) + { + // Grab the actual border values + var border = _navigator.PopupPages.Border; - // Put the page group inside a layout that has separators - // to pad out the sizing to the border size we need - ViewLayoutDocker layoutDocker = new() - { - { drawGroup, ViewDockStyle.Fill }, - { new ViewLayoutSeparator(border), ViewDockStyle.Top }, - { new ViewLayoutSeparator(border), ViewDockStyle.Bottom }, - { new ViewLayoutSeparator(border), ViewDockStyle.Left }, - { new ViewLayoutSeparator(border), ViewDockStyle.Right } - }; - - // Create a new top level group that contains the layout - drawGroup = new ViewDrawCanvas(_navigator.StateNormal.Back, - _navigator.StateNormal.HeaderGroup.Border, - VisualOrientation.Top) - { - layoutDocker - }; - } + // Put the page group inside a layout that has separators + // to pad out the sizing to the border size we need + var layoutDocker = new ViewLayoutDocker + { + { drawGroup, ViewDockStyle.Fill }, + { new ViewLayoutSeparator(border), ViewDockStyle.Top }, + { new ViewLayoutSeparator(border), ViewDockStyle.Bottom }, + { new ViewLayoutSeparator(border), ViewDockStyle.Left }, + { new ViewLayoutSeparator(border), ViewDockStyle.Right } + }; - ViewManager = new ViewManager(this, drawGroup); + // Create a new top level group that contains the layout + drawGroup = new ViewDrawCanvas(_navigator.StateNormal.Back, + _navigator.StateNormal.HeaderGroup.Border, + VisualOrientation.Top) + { + layoutDocker + }; } + + ViewManager = new ViewManager(this, drawGroup); } // Borrow the child panel that contains all the pages from @@ -140,27 +136,24 @@ protected override void OnLayout(LayoutEventArgs levent) base.OnLayout(levent); // Need a render context for accessing the renderer - using RenderContext context = new(this, null, ClientRectangle, Renderer); + using var context = new RenderContext(this, null, ClientRectangle, Renderer); // Grab a path that is the outside edge of the border Rectangle borderRect = ClientRectangle; - if (_navigator.StateNormal != null) + if (_navigator.StateNormal?.HeaderGroup != null) { - if (_navigator.StateNormal.HeaderGroup != null) + if (Renderer != null) { - if (Renderer != null) - { - GraphicsPath borderPath1 = Renderer.RenderStandardBorder.GetOutsideBorderPath(context, borderRect, _navigator.StateNormal.HeaderGroup.Border, VisualOrientation.Top, PaletteState.Normal); - borderRect.Inflate(-1, -1); - GraphicsPath borderPath2 = Renderer.RenderStandardBorder.GetOutsideBorderPath(context, borderRect, _navigator.StateNormal.HeaderGroup.Border, VisualOrientation.Top, PaletteState.Normal); - borderRect.Inflate(-1, -1); - GraphicsPath borderPath3 = Renderer.RenderStandardBorder.GetOutsideBorderPath(context, borderRect, _navigator.StateNormal.HeaderGroup.Border, VisualOrientation.Top, PaletteState.Normal); + GraphicsPath borderPath1 = Renderer.RenderStandardBorder.GetOutsideBorderPath(context, borderRect, _navigator.StateNormal.HeaderGroup.Border, VisualOrientation.Top, PaletteState.Normal); + borderRect.Inflate(-1, -1); + GraphicsPath borderPath2 = Renderer.RenderStandardBorder.GetOutsideBorderPath(context, borderRect, _navigator.StateNormal.HeaderGroup.Border, VisualOrientation.Top, PaletteState.Normal); + borderRect.Inflate(-1, -1); + GraphicsPath borderPath3 = Renderer.RenderStandardBorder.GetOutsideBorderPath(context, borderRect, _navigator.StateNormal.HeaderGroup.Border, VisualOrientation.Top, PaletteState.Normal); - // Update the region of the popup to be the border path - Region = new Region(borderPath1); + // Update the region of the popup to be the border path + Region = new Region(borderPath1); - // Inform the shadow to use the same paths for drawing the shadow - DefineShadowPaths(borderPath1, borderPath2, borderPath3); - } + // Inform the shadow to use the same paths for drawing the shadow + DefineShadowPaths(borderPath1, borderPath2, borderPath3); } } } @@ -225,9 +218,7 @@ public void ShowCalculatingSize(Rectangle parentScreenRect) if (_page != null) { - PopupPageEventArgs e = new(_page, - _navigator.Pages.IndexOf(_page), - parentScreenRect); + var e = new PopupPageEventArgs(_page, _navigator.Pages.IndexOf(_page), parentScreenRect); // Use event to allow the popup to be cancelled or the position altered _navigator.OnDisplayPopupPage(e); diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/BarItemSizingConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/BarItemSizingConverter.cs index 9f772b000..78ebb4b5b 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/BarItemSizingConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/BarItemSizingConverter.cs @@ -32,10 +32,12 @@ public BarItemSizingConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(BarItemSizing.Individual, "Individual Sizing"), - new(BarItemSizing.SameHeight, "All Same Height"), - new(BarItemSizing.SameWidth, "All Same Width"), - new(BarItemSizing.SameWidthAndHeight, "All Same Width & Height") }; + { + new Pair(BarItemSizing.Individual, "Individual Sizing"), + new Pair(BarItemSizing.SameHeight, "All Same Height"), + new Pair(BarItemSizing.SameWidth, "All Same Width"), + new Pair(BarItemSizing.SameWidthAndHeight, "All Same Width & Height") + }; #endregion } diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/ButtonDisplayConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/ButtonDisplayConverter.cs index 9483069db..bc801bac8 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/ButtonDisplayConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/ButtonDisplayConverter.cs @@ -32,10 +32,12 @@ public ButtonDisplayConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(ButtonDisplay.Hide, "Hide"), - new(ButtonDisplay.ShowDisabled, "Show Disabled"), - new(ButtonDisplay.ShowEnabled, "Show Enabled"), - new(ButtonDisplay.Logic, "Logic") }; + { + new Pair(ButtonDisplay.Hide, "Hide"), + new Pair(ButtonDisplay.ShowDisabled, "Show Disabled"), + new Pair(ButtonDisplay.ShowEnabled, "Show Enabled"), + new Pair(ButtonDisplay.Logic, "Logic") + }; #endregion } diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/ButtonDisplayLogicConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/ButtonDisplayLogicConverter.cs index a08167be0..f1e6b574a 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/ButtonDisplayLogicConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/ButtonDisplayLogicConverter.cs @@ -32,10 +32,12 @@ public ButtonDisplayLogicConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(ButtonDisplayLogic.None, "None"), - new(ButtonDisplayLogic.Context, "Context"), - new(ButtonDisplayLogic.NextPrevious, "Next/Previous"), - new(ButtonDisplayLogic.ContextNextPrevious, "Context & Next/Previous") }; + { + new Pair(ButtonDisplayLogic.None, "None"), + new Pair(ButtonDisplayLogic.Context, "Context"), + new Pair(ButtonDisplayLogic.NextPrevious, "Next/Previous"), + new Pair(ButtonDisplayLogic.ContextNextPrevious, "Context & Next/Previous") + }; #endregion } diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/CloseButtonActionConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/CloseButtonActionConverter.cs index 863c06cd0..1d3d59b79 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/CloseButtonActionConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/CloseButtonActionConverter.cs @@ -32,10 +32,12 @@ public CloseButtonActionConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(CloseButtonAction.None, "None (Do nothing)"), - new(CloseButtonAction.RemovePage, "RemovePage"), - new(CloseButtonAction.RemovePageAndDispose, "RemovePage & Dispose"), - new(CloseButtonAction.HidePage, "Hide Page") }; + { + new Pair(CloseButtonAction.None, "None (Do nothing)"), + new Pair(CloseButtonAction.RemovePage, "RemovePage"), + new Pair(CloseButtonAction.RemovePageAndDispose, "RemovePage & Dispose"), + new Pair(CloseButtonAction.HidePage, "Hide Page") + }; #endregion } diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/ContextButtonActionConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/ContextButtonActionConverter.cs index 075ca8241..a618d7301 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/ContextButtonActionConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/ContextButtonActionConverter.cs @@ -32,8 +32,9 @@ public ContextButtonActionConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(ContextButtonAction.None, "None (Do nothing)"), - new(ContextButtonAction.SelectPage, "Select Page") }; + { + new Pair(ContextButtonAction.None, "None (Do nothing)"), + new Pair(ContextButtonAction.SelectPage, "Select Page") }; #endregion } diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/DirectionButtonActionConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/DirectionButtonActionConverter.cs index e43d8cb15..c5cbf48ba 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/DirectionButtonActionConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/DirectionButtonActionConverter.cs @@ -32,10 +32,11 @@ public DirectionButtonActionConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(DirectionButtonAction.None, "None (Do nothing)"), - new(DirectionButtonAction.SelectPage, "Select Page"), - new(DirectionButtonAction.MoveBar, "Move Bar"), - new(DirectionButtonAction.ModeAppropriateAction, "Mode Appropriate Action") }; + { + new Pair(DirectionButtonAction.None, "None (Do nothing)"), + new Pair(DirectionButtonAction.SelectPage, "Select Page"), + new Pair(DirectionButtonAction.MoveBar, "Move Bar"), + new Pair(DirectionButtonAction.ModeAppropriateAction, "Mode Appropriate Action") }; #endregion } diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/MapKryptonPageImageConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/MapKryptonPageImageConverter.cs index e088184eb..27499b483 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/MapKryptonPageImageConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/MapKryptonPageImageConverter.cs @@ -32,17 +32,19 @@ public MapKryptonPageImageConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(MapKryptonPageImage.None, "None (Null image)"), - new(MapKryptonPageImage.Small, "Small"), - new(MapKryptonPageImage.SmallMedium, "Small - Medium"), - new(MapKryptonPageImage.SmallMediumLarge, "Small - Medium - Large"), - new(MapKryptonPageImage.Medium, "Medium"), - new(MapKryptonPageImage.MediumSmall, "Medium - Small"), - new(MapKryptonPageImage.MediumLarge, "Medium - Large"), - new(MapKryptonPageImage.Large, "Large"), - new(MapKryptonPageImage.LargeMedium, "Large - Medium"), - new(MapKryptonPageImage.LargeMediumSmall, "Large - Medium - Small"), - new(MapKryptonPageImage.ToolTip, nameof(ToolTip)) }; + { + new Pair(MapKryptonPageImage.None, "None (Null image)"), + new Pair(MapKryptonPageImage.Small, "Small"), + new Pair(MapKryptonPageImage.SmallMedium, "Small - Medium"), + new Pair(MapKryptonPageImage.SmallMediumLarge, "Small - Medium - Large"), + new Pair(MapKryptonPageImage.Medium, "Medium"), + new Pair(MapKryptonPageImage.MediumSmall, "Medium - Small"), + new Pair(MapKryptonPageImage.MediumLarge, "Medium - Large"), + new Pair(MapKryptonPageImage.Large, "Large"), + new Pair(MapKryptonPageImage.LargeMedium, "Large - Medium"), + new Pair(MapKryptonPageImage.LargeMediumSmall, "Large - Medium - Small"), + new Pair(MapKryptonPageImage.ToolTip, nameof(ToolTip)) + }; #endregion } diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/MapKryptonPageTextConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/MapKryptonPageTextConverter.cs index bb9d1a0d6..5d6926a19 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/MapKryptonPageTextConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/MapKryptonPageTextConverter.cs @@ -32,20 +32,21 @@ public MapKryptonPageTextConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(MapKryptonPageText.None, "None (Empty string)"), - new(MapKryptonPageText.Text, "Text"), - new(MapKryptonPageText.TextTitle, "Text - Title"), - new(MapKryptonPageText.TextTitleDescription, "Text - Title - Description"), - new(MapKryptonPageText.TextDescription, "Text - Description"), - new(MapKryptonPageText.Title, "Title"), - new(MapKryptonPageText.TitleText, "Title - Text"), - new(MapKryptonPageText.TitleDescription, "Title - Description"), - new(MapKryptonPageText.Description, "Description"), - new(MapKryptonPageText.DescriptionText, "Description - Text"), - new(MapKryptonPageText.DescriptionTitle, "Description - Title"), - new(MapKryptonPageText.DescriptionTitleText, "Description - Title - Text"), - new(MapKryptonPageText.ToolTipTitle, "ToolTipTitle"), - new(MapKryptonPageText.ToolTipBody, "ToolTipBody") + { + new Pair(MapKryptonPageText.None, "None (Empty string)"), + new Pair(MapKryptonPageText.Text, "Text"), + new Pair(MapKryptonPageText.TextTitle, "Text - Title"), + new Pair(MapKryptonPageText.TextTitleDescription, "Text - Title - Description"), + new Pair(MapKryptonPageText.TextDescription, "Text - Description"), + new Pair(MapKryptonPageText.Title, "Title"), + new Pair(MapKryptonPageText.TitleText, "Title - Text"), + new Pair(MapKryptonPageText.TitleDescription, "Title - Description"), + new Pair(MapKryptonPageText.Description, "Description"), + new Pair(MapKryptonPageText.DescriptionText, "Description - Text"), + new Pair(MapKryptonPageText.DescriptionTitle, "Description - Title"), + new Pair(MapKryptonPageText.DescriptionTitleText, "Description - Title - Text"), + new Pair(MapKryptonPageText.ToolTipTitle, "ToolTipTitle"), + new Pair(MapKryptonPageText.ToolTipBody, "ToolTipBody") }; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/NavigatorModeConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/NavigatorModeConverter.cs index 02e64430a..cb0231b93 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/NavigatorModeConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/NavigatorModeConverter.cs @@ -32,25 +32,27 @@ public NavigatorModeConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(NavigatorMode.BarTabGroup, "Bar - Tab - Group"), - new(NavigatorMode.BarTabOnly, "Bar - Tab - Only"), - new(NavigatorMode.BarRibbonTabGroup, "Bar - RibbonTab - Group"), - new(NavigatorMode.BarRibbonTabOnly, "Bar - RibbonTab - Only"), - new(NavigatorMode.BarCheckButtonGroupOutside, "Bar - CheckButton - Group - Outside"), - new(NavigatorMode.BarCheckButtonGroupInside, "Bar - CheckButton - Group - Inside"), - new(NavigatorMode.BarCheckButtonGroupOnly, "Bar - CheckButton - Group - Only"), - new(NavigatorMode.BarCheckButtonOnly, "Bar - CheckButton - Only"), - new(NavigatorMode.HeaderBarCheckButtonGroup, "HeaderBar - CheckButton - Group"), - new(NavigatorMode.HeaderBarCheckButtonHeaderGroup,"HeaderBar - CheckButton - HeaderGroup"), - new(NavigatorMode.HeaderBarCheckButtonOnly, "HeaderBar - CheckButton - Only"), - new(NavigatorMode.StackCheckButtonGroup, "Stack - CheckButton - Group"), - new(NavigatorMode.StackCheckButtonHeaderGroup, "Stack - CheckButton - HeaderGroup"), - new(NavigatorMode.OutlookFull, "Outlook - Full"), - new(NavigatorMode.OutlookMini, "Outlook - Mini"), - new(NavigatorMode.Panel, nameof(Panel)), - new(NavigatorMode.Group, "Group"), - new(NavigatorMode.HeaderGroup, "HeaderGroup"), - new(NavigatorMode.HeaderGroupTab, "HeaderGroup - Tab") }; + { + new Pair(NavigatorMode.BarTabGroup, "Bar - Tab - Group"), + new Pair(NavigatorMode.BarTabOnly, "Bar - Tab - Only"), + new Pair(NavigatorMode.BarRibbonTabGroup, "Bar - RibbonTab - Group"), + new Pair(NavigatorMode.BarRibbonTabOnly, "Bar - RibbonTab - Only"), + new Pair(NavigatorMode.BarCheckButtonGroupOutside, "Bar - CheckButton - Group - Outside"), + new Pair(NavigatorMode.BarCheckButtonGroupInside, "Bar - CheckButton - Group - Inside"), + new Pair(NavigatorMode.BarCheckButtonGroupOnly, "Bar - CheckButton - Group - Only"), + new Pair(NavigatorMode.BarCheckButtonOnly, "Bar - CheckButton - Only"), + new Pair(NavigatorMode.HeaderBarCheckButtonGroup, "HeaderBar - CheckButton - Group"), + new Pair(NavigatorMode.HeaderBarCheckButtonHeaderGroup, "HeaderBar - CheckButton - HeaderGroup"), + new Pair(NavigatorMode.HeaderBarCheckButtonOnly, "HeaderBar - CheckButton - Only"), + new Pair(NavigatorMode.StackCheckButtonGroup, "Stack - CheckButton - Group"), + new Pair(NavigatorMode.StackCheckButtonHeaderGroup, "Stack - CheckButton - HeaderGroup"), + new Pair(NavigatorMode.OutlookFull, "Outlook - Full"), + new Pair(NavigatorMode.OutlookMini, "Outlook - Mini"), + new Pair(NavigatorMode.Panel, nameof(Panel)), + new Pair(NavigatorMode.Group, "Group"), + new Pair(NavigatorMode.HeaderGroup, "HeaderGroup"), + new Pair(NavigatorMode.HeaderGroupTab, "HeaderGroup - Tab") + }; #endregion } diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/PaletteButtonSpecStyleConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/PaletteButtonSpecStyleConverter.cs index 53978982f..038af5411 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/PaletteButtonSpecStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/PaletteButtonSpecStyleConverter.cs @@ -32,26 +32,28 @@ public PaletteNavButtonSpecStyleConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(PaletteNavButtonSpecStyle.Generic, "Generic"), - new(PaletteNavButtonSpecStyle.ArrowLeft, "Arrow Left"), - new(PaletteNavButtonSpecStyle.ArrowRight, "Arrow Right"), - new(PaletteNavButtonSpecStyle.ArrowUp, "Arrow Up"), - new(PaletteNavButtonSpecStyle.ArrowDown, "Arrow Down"), - new(PaletteNavButtonSpecStyle.DropDown, "Drop Down"), - new(PaletteNavButtonSpecStyle.PinVertical, "Pin Vertical"), - new(PaletteNavButtonSpecStyle.PinHorizontal, "Pin Horizontal"), - new(PaletteNavButtonSpecStyle.FormClose, "Form Close"), - new(PaletteNavButtonSpecStyle.FormMax, "Form Max"), - new(PaletteNavButtonSpecStyle.FormMin, "Form Min"), - new(PaletteNavButtonSpecStyle.FormRestore, "Form Restore"), - new(PaletteNavButtonSpecStyle.FormHelp, "Form Help"), - new(PaletteNavButtonSpecStyle.PendantClose, "Pendant Close"), - new(PaletteNavButtonSpecStyle.PendantMin, "Pendant Min"), - new(PaletteNavButtonSpecStyle.PendantRestore, "Pendant Restore"), - new(PaletteNavButtonSpecStyle.WorkspaceMaximize, "Workspace Maximize"), - new(PaletteNavButtonSpecStyle.WorkspaceRestore, "Workspace Restore"), - new(PaletteNavButtonSpecStyle.RibbonMinimize, "Ribbon Minimize"), - new(PaletteNavButtonSpecStyle.RibbonExpand, "Ribbon Expand")}; + { + new Pair(PaletteNavButtonSpecStyle.Generic, "Generic"), + new Pair(PaletteNavButtonSpecStyle.ArrowLeft, "Arrow Left"), + new Pair(PaletteNavButtonSpecStyle.ArrowRight, "Arrow Right"), + new Pair(PaletteNavButtonSpecStyle.ArrowUp, "Arrow Up"), + new Pair(PaletteNavButtonSpecStyle.ArrowDown, "Arrow Down"), + new Pair(PaletteNavButtonSpecStyle.DropDown, "Drop Down"), + new Pair(PaletteNavButtonSpecStyle.PinVertical, "Pin Vertical"), + new Pair(PaletteNavButtonSpecStyle.PinHorizontal, "Pin Horizontal"), + new Pair(PaletteNavButtonSpecStyle.FormClose, "Form Close"), + new Pair(PaletteNavButtonSpecStyle.FormMax, "Form Max"), + new Pair(PaletteNavButtonSpecStyle.FormMin, "Form Min"), + new Pair(PaletteNavButtonSpecStyle.FormRestore, "Form Restore"), + new Pair(PaletteNavButtonSpecStyle.FormHelp, "Form Help"), + new Pair(PaletteNavButtonSpecStyle.PendantClose, "Pendant Close"), + new Pair(PaletteNavButtonSpecStyle.PendantMin, "Pendant Min"), + new Pair(PaletteNavButtonSpecStyle.PendantRestore, "Pendant Restore"), + new Pair(PaletteNavButtonSpecStyle.WorkspaceMaximize, "Workspace Maximize"), + new Pair(PaletteNavButtonSpecStyle.WorkspaceRestore, "Workspace Restore"), + new Pair(PaletteNavButtonSpecStyle.RibbonMinimize, "Ribbon Minimize"), + new Pair(PaletteNavButtonSpecStyle.RibbonExpand, "Ribbon Expand") + }; #endregion } diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/PopupPageAllowConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/PopupPageAllowConverter.cs index 05c17ed65..7c73686ac 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/PopupPageAllowConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/PopupPageAllowConverter.cs @@ -32,9 +32,11 @@ public PopupPageAllowConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(PopupPageAllow.Never, "Never"), - new(PopupPageAllow.OnlyCompatibleModes, "Only Compatible Modes"), - new(PopupPageAllow.OnlyOutlookMiniMode, "Only Outlook Mini Mode")}; + { + new Pair(PopupPageAllow.Never, "Never"), + new Pair(PopupPageAllow.OnlyCompatibleModes, "Only Compatible Modes"), + new Pair(PopupPageAllow.OnlyOutlookMiniMode, "Only Outlook Mini Mode") + }; #endregion } diff --git a/Source/Krypton Components/Krypton.Navigator/Converters/PopupPagePositionConverter.cs b/Source/Krypton Components/Krypton.Navigator/Converters/PopupPagePositionConverter.cs index 9284a25a5..7f92304fe 100644 --- a/Source/Krypton Components/Krypton.Navigator/Converters/PopupPagePositionConverter.cs +++ b/Source/Krypton Components/Krypton.Navigator/Converters/PopupPagePositionConverter.cs @@ -32,19 +32,21 @@ public PopupPagePositionConverter() /// Gets an array of lookup pairs. /// protected override Pair[] Pairs { get; } = - { new(PopupPagePosition.ModeAppropriate, "Mode Appropriate"), - new(PopupPagePosition.AboveFar, "Above Element - Far Aligned"), - new(PopupPagePosition.AboveMatch, "Above Element - Element Width"), - new(PopupPagePosition.AboveNear, "Above Element - Near Aligned"), - new(PopupPagePosition.BelowFar, "Below Element - Far Aligned"), - new(PopupPagePosition.BelowMatch, "Below Element - Element Width"), - new(PopupPagePosition.BelowNear, "Below Element - Near Aligned"), - new(PopupPagePosition.FarBottom, "Far Side of Element - Bottom Aligned"), - new(PopupPagePosition.FarMatch, "Far Side of Element - Element Height"), - new(PopupPagePosition.FarTop, "Far Side of Element - Top Aligned"), - new(PopupPagePosition.NearBottom, "Near Side of Element - Bottom Aligned"), - new(PopupPagePosition.NearMatch, "Near Side of Element - Element Height"), - new(PopupPagePosition.NearTop, "Near Side of Element - Top Aligned") }; + { + new Pair(PopupPagePosition.ModeAppropriate, "Mode Appropriate"), + new Pair(PopupPagePosition.AboveFar, "Above Element - Far Aligned"), + new Pair(PopupPagePosition.AboveMatch, "Above Element - Element Width"), + new Pair(PopupPagePosition.AboveNear, "Above Element - Near Aligned"), + new Pair(PopupPagePosition.BelowFar, "Below Element - Far Aligned"), + new Pair(PopupPagePosition.BelowMatch, "Below Element - Element Width"), + new Pair(PopupPagePosition.BelowNear, "Below Element - Near Aligned"), + new Pair(PopupPagePosition.FarBottom, "Far Side of Element - Bottom Aligned"), + new Pair(PopupPagePosition.FarMatch, "Far Side of Element - Element Height"), + new Pair(PopupPagePosition.FarTop, "Far Side of Element - Top Aligned"), + new Pair(PopupPagePosition.NearBottom, "Near Side of Element - Bottom Aligned"), + new Pair(PopupPagePosition.NearMatch, "Near Side of Element - Element Height"), + new Pair(PopupPagePosition.NearTop, "Near Side of Element - Top Aligned") + }; #endregion } diff --git a/Source/Krypton Components/Krypton.Navigator/Dragging/DragFeedback.cs b/Source/Krypton Components/Krypton.Navigator/Dragging/DragFeedback.cs index f110591be..f95992647 100644 --- a/Source/Krypton Components/Krypton.Navigator/Dragging/DragFeedback.cs +++ b/Source/Krypton Components/Krypton.Navigator/Dragging/DragFeedback.cs @@ -87,7 +87,7 @@ public virtual void Start([DisallowNull] IPaletteDragDrop paletteDragDrop, Debug.Assert(pageDragEndData != null); Debug.Assert(dragTargets != null); - PaletteDragDrop = paletteDragDrop!; + PaletteDragDrop = paletteDragDrop; Renderer = renderer; PageDragEndData = pageDragEndData; DragTargets = dragTargets; diff --git a/Source/Krypton Components/Krypton.Navigator/Dragging/DragManager.cs b/Source/Krypton Components/Krypton.Navigator/Dragging/DragManager.cs index 780c3aeb5..d9cfa8014 100644 --- a/Source/Krypton Components/Krypton.Navigator/Dragging/DragManager.cs +++ b/Source/Krypton Components/Krypton.Navigator/Dragging/DragManager.cs @@ -48,12 +48,12 @@ public class DragManager : IDragPageNotify, /// static DragManager() { - using (MemoryStream ms = new(CursorResources.DocumentValid)) + using (var ms = new MemoryStream(CursorResources.DocumentValid)) { _validCursor = new Cursor(ms); } - using (MemoryStream ms = new(CursorResources.DocumentInvalid)) + using (var ms = new MemoryStream(CursorResources.DocumentInvalid)) { _invalidCursor = new Cursor(ms); } diff --git a/Source/Krypton Components/Krypton.Navigator/Dragging/DragTarget.cs b/Source/Krypton Components/Krypton.Navigator/Dragging/DragTarget.cs index b1b471ef1..883652d0c 100644 --- a/Source/Krypton Components/Krypton.Navigator/Dragging/DragTarget.cs +++ b/Source/Krypton Components/Krypton.Navigator/Dragging/DragTarget.cs @@ -172,7 +172,7 @@ public virtual bool IsMatch(Point screenPt, PageDragEndData? dragEndData) => { // Use event to allow decision on if the page should be dropped // (or even swap the page for a different page to be dropped) - PageDropEventArgs e = new(page); + var e = new PageDropEventArgs(page); target.OnPageDrop(e); if (e is { Cancel: false, Page: { } }) diff --git a/Source/Krypton Components/Krypton.Navigator/Dragging/DropDockingIndicatorsRounded.cs b/Source/Krypton Components/Krypton.Navigator/Dragging/DropDockingIndicatorsRounded.cs index f84cb2429..5b33dc30e 100644 --- a/Source/Krypton Components/Krypton.Navigator/Dragging/DropDockingIndicatorsRounded.cs +++ b/Source/Krypton Components/Krypton.Navigator/Dragging/DropDockingIndicatorsRounded.cs @@ -55,7 +55,7 @@ public DropDockingIndicatorsRounded(IPaletteDragDrop paletteDragDrop, _showRect = new Rectangle(Point.Empty, _dragData.DockWindowSize); // Any old title will do as it will not be shown - CreateParams cp = new() + var cp = new CreateParams { Caption = nameof(DropDockingIndicatorsRounded), @@ -151,7 +151,7 @@ public void Hide() public int ScreenMouseMove(Point screenPoint) { // Convert from screen to client coordinates - Point pt = new(screenPoint.X - _showRect.X, screenPoint.Y - _showRect.Y); + var pt = new Point(screenPoint.X - _showRect.X, screenPoint.Y - _showRect.Y); // Remember the current active value var activeBefore = _dragData.ActiveFlags; @@ -216,17 +216,14 @@ private void UpdateLayeredWindow(Rectangle rect) if (rect is { Width: > 0, Height: > 0 }) { // Draw onto a bitmap that is then used as the window display - Bitmap memoryBitmap = new(rect.Width, rect.Height, PixelFormat.Format32bppArgb); + var memoryBitmap = new Bitmap(rect.Width, rect.Height, PixelFormat.Format32bppArgb); using Graphics g = Graphics.FromImage(memoryBitmap); // Perform actual painting onto the bitmap - Rectangle area = new(0, 0, rect.Width, rect.Height); - using (RenderContext context = new(null, g, area, _renderer)) + var area = new Rectangle(0, 0, rect.Width, rect.Height); + using (var context = new RenderContext(null, g, area, _renderer)) { - if (_renderer != null) - { - _renderer.RenderGlyph.DrawDragDropDockingGlyph(context, _dragData, _paletteDragDrop, - PaletteDragFeedback.Rounded); - } + _renderer?.RenderGlyph.DrawDragDropDockingGlyph(context, _dragData, _paletteDragDrop, + PaletteDragFeedback.Rounded); } // Get hold of the screen DC @@ -247,12 +244,12 @@ private void UpdateLayeredWindow(Rectangle rect) ulwsize.cy = rect.Height; // New window position - PI.POINT topPos = new(rect.Left, rect.Top); + var topPos = new PI.POINT(rect.Left, rect.Top); // Offset into memory bitmap is always zero - PI.POINT pointSource = new(0, 0); + var pointSource = new PI.POINT(0, 0); // We want to make the entire bitmap opaque - PI.BLENDFUNCTION blend = new() + var blend = new PI.BLENDFUNCTION { BlendOp = PI.AC_SRC_OVER, BlendFlags = 0, diff --git a/Source/Krypton Components/Krypton.Navigator/Dragging/DropDockingIndicatorsSquare.cs b/Source/Krypton Components/Krypton.Navigator/Dragging/DropDockingIndicatorsSquare.cs index b1248fcec..8086dea05 100644 --- a/Source/Krypton Components/Krypton.Navigator/Dragging/DropDockingIndicatorsSquare.cs +++ b/Source/Krypton Components/Krypton.Navigator/Dragging/DropDockingIndicatorsSquare.cs @@ -49,11 +49,8 @@ public DropDockingIndicatorsSquare(IPaletteDragDrop paletteDragDrop, _dragData = new RenderDragDockingData(showLeft, showRight, showTop, showBottom, showMiddle); // Ask the renderer to measure the sizing of the indicators that are Displayed - if (_renderer != null) - { - _renderer.RenderGlyph.MeasureDragDropDockingGlyph(_dragData, _paletteDragDrop, - PaletteDragFeedback.Square); - } + _renderer?.RenderGlyph.MeasureDragDropDockingGlyph(_dragData, _paletteDragDrop, + PaletteDragFeedback.Square); // Setup window so that it is transparent to the Silver color and does not have any borders etc... BackColor = Color.Silver; @@ -70,7 +67,7 @@ public DropDockingIndicatorsSquare(IPaletteDragDrop paletteDragDrop, StartPosition = FormStartPosition.Manual; Text = @"DropIndicators"; TransparencyKey = Color.Silver; - Paint += DropIndicators_Paint!; + Paint += DropIndicators_Paint; } #endregion @@ -178,17 +175,14 @@ public void MouseReset() #region Implementation private void DropIndicators_Paint(object sender, PaintEventArgs e) { - using RenderContext context = new(this, e.Graphics, e.ClipRectangle, _renderer); - if (_renderer != null) - { - _renderer.RenderGlyph.DrawDragDropDockingGlyph(context, _dragData, _paletteDragDrop, PaletteDragFeedback.Square); - } + using var context = new RenderContext(this, e.Graphics, e.ClipRectangle, _renderer); + _renderer?.RenderGlyph.DrawDragDropDockingGlyph(context, _dragData, _paletteDragDrop, PaletteDragFeedback.Square); } private void DrawPath(Graphics g, Color baseColor, GraphicsPath path) { // Draw a smooth outline around the circle - using Pen outline = new(baseColor); + using var outline = new Pen(baseColor); g.DrawPath(outline, path); } #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/Dragging/DropSolidWindow.cs b/Source/Krypton Components/Krypton.Navigator/Dragging/DropSolidWindow.cs index 051bc2b7b..75296e9cd 100644 --- a/Source/Krypton Components/Krypton.Navigator/Dragging/DropSolidWindow.cs +++ b/Source/Krypton Components/Krypton.Navigator/Dragging/DropSolidWindow.cs @@ -108,7 +108,7 @@ protected override void OnPaint(PaintEventArgs e) && (_renderer != null) ) { - using RenderContext context = new(this, e.Graphics, e.ClipRectangle, _renderer); + using var context = new RenderContext(this, e.Graphics, e.ClipRectangle, _renderer); _renderer.RenderGlyph.DrawDragDropSolidGlyph(context, ClientRectangle, _paletteDragDrop); } } diff --git a/Source/Krypton Components/Krypton.Navigator/General/Definitions.cs b/Source/Krypton Components/Krypton.Navigator/General/Definitions.cs index bbc84925c..d51219455 100644 --- a/Source/Krypton Components/Krypton.Navigator/General/Definitions.cs +++ b/Source/Krypton Components/Krypton.Navigator/General/Definitions.cs @@ -782,12 +782,12 @@ internal interface INavCheckItem /// /// Occurs when the dragging start rectangle is needed. /// - event EventHandler ButtonDragRectangle; + event EventHandler? ButtonDragRectangle; /// /// Occurs when the dragging offset has changed. /// - event EventHandler ButtonDragOffset; + event EventHandler? ButtonDragOffset; /// /// Gets the view associated with the check item. @@ -817,7 +817,7 @@ internal interface INavCheckItem /// /// Gets and sets the paint delegate to use for refresh requests. /// - NeedPaintHandler NeedPaint { get; set; } + NeedPaintHandler? NeedPaint { get; set; } /// /// Gets the ButtonSpec associated with the provided item. diff --git a/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonNavigatorActionList.cs b/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonNavigatorActionList.cs index 6862ee362..69d17b226 100644 --- a/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonNavigatorActionList.cs +++ b/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonNavigatorActionList.cs @@ -551,7 +551,7 @@ public RelativePositionAlign StackAlignment /// A DesignerActionItem array that contains the items in this list. public override DesignerActionItemCollection GetSortedActionItems() { - DesignerActionItemCollection actions = new(); + var actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_navigator != null) @@ -750,9 +750,9 @@ private void AddHeadersActions(DesignerActionItemCollection actions, _headerSecondaryText = (headerSecondaryVisible ? "Hide secondary header" : "Show secondary header"); // Create the two verbs for toggling the header visibility - _headerBarVisible = new DesignerVerb(_headerBarText, OnVisibleClick!); - _headerPrimaryVisible = new DesignerVerb(_headerPrimaryText, OnVisibleClick!); - _headerSecondaryVisible = new DesignerVerb(_headerSecondaryText, OnVisibleClick!); + _headerBarVisible = new DesignerVerb(_headerBarText, OnVisibleClick); + _headerPrimaryVisible = new DesignerVerb(_headerPrimaryText, OnVisibleClick); + _headerSecondaryVisible = new DesignerVerb(_headerSecondaryText, OnVisibleClick); actions.Add(new DesignerActionHeaderItem("Header")); diff --git a/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonNavigatorDesigner.cs b/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonNavigatorDesigner.cs index 364ab4ce3..b03d82595 100644 --- a/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonNavigatorDesigner.cs +++ b/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonNavigatorDesigner.cs @@ -63,12 +63,12 @@ public override void Initialize([DisallowNull] IComponent component) } // Monitor navigator events - Navigator.GetViewManager()!.MouseDownProcessed += OnNavigatorMouseUp!; + Navigator.GetViewManager()!.MouseDownProcessed += OnNavigatorMouseUp; Navigator.GetViewManager()!.DoubleClickProcessed += OnNavigatorDoubleClick; Navigator.Pages.Inserted += OnPageInserted; Navigator.Pages.Removed += OnPageRemoved; - Navigator.Pages.Cleared += OnPagesCleared!; - Navigator!.SelectedPageChanged += OnSelectedPageChanged!; + Navigator.Pages.Cleared += OnPagesCleared; + Navigator!.SelectedPageChanged += OnSelectedPageChanged; } // Get access to the services @@ -77,7 +77,7 @@ public override void Initialize([DisallowNull] IComponent component) _selectionService = (ISelectionService)GetService(typeof(ISelectionService)); // We need to know when we are being removed - _changeService.ComponentRemoving += OnComponentRemoving!; + _changeService.ComponentRemoving += OnComponentRemoving; } /// @@ -114,7 +114,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + var actionLists = new DesignerActionListCollection { // Add the navigator specific list @@ -136,9 +136,9 @@ public override DesignerVerbCollection Verbs if (_verbs == null) { // Cache verb instances so enabled state can be updated in future - _verbAddPage = new DesignerVerb(@"Add Page", OnAddPage!); - _verbRemovePage = new DesignerVerb(@"Remove Page", OnRemovePage!); - _verbClearPages = new DesignerVerb(@"Clear Pages", OnClearPages!); + _verbAddPage = new DesignerVerb(@"Add Page", OnAddPage); + _verbRemovePage = new DesignerVerb(@"Remove Page", OnRemovePage); + _verbClearPages = new DesignerVerb(@"Clear Pages", OnClearPages); _verbs = new DesignerVerbCollection(new[] { _verbAddPage, _verbRemovePage, _verbClearPages }); // Set correct initial state of the verbs @@ -157,7 +157,7 @@ public override ICollection AssociatedComponents get { // Create a new compound array - ArrayList compound = new(); + var compound = new ArrayList(); // Add all the navigator components if (Navigator != null) @@ -239,16 +239,16 @@ protected override void Dispose(bool disposing) // Unhook from navigator events if (Navigator != null) { - Navigator.GetViewManager()!.MouseUpProcessed -= OnNavigatorMouseUp!; + Navigator.GetViewManager()!.MouseUpProcessed -= OnNavigatorMouseUp; Navigator.GetViewManager()!.DoubleClickProcessed -= OnNavigatorDoubleClick; Navigator.Pages.Inserted -= OnPageInserted; Navigator.Pages.Removed -= OnPageRemoved; - Navigator.Pages.Cleared -= OnPagesCleared!; - Navigator.SelectedPageChanged -= OnSelectedPageChanged!; + Navigator.Pages.Cleared -= OnPagesCleared; + Navigator.SelectedPageChanged -= OnSelectedPageChanged; } // Unhook from designer events - _changeService.ComponentRemoving -= OnComponentRemoving!; + _changeService.ComponentRemoving -= OnComponentRemoving; } } finally @@ -272,10 +272,7 @@ protected override bool GetHitTest(Point point) // tracking element is informed that the mouse has left the control if (!ret && _lastHitTest) { - if (Navigator != null) - { - Navigator.DesignerMouseLeave(); - } + Navigator?.DesignerMouseLeave(); } // Cache the last answer recovered @@ -289,10 +286,7 @@ protected override bool GetHitTest(Point point) /// protected override void OnMouseLeave() { - if (Navigator != null) - { - Navigator.DesignerMouseLeave(); - } + Navigator?.DesignerMouseLeave(); base.OnMouseLeave(); } @@ -525,22 +519,19 @@ private void OnNavigatorMouseUp(object sender, MouseEventArgs e) if (e.Button == MouseButtons.Left) { // Get any component associated with the current mouse position - if (Navigator != null) + Component? component = Navigator?.DesignerComponentFromPoint(new Point(e.X, e.Y)); + + if (component != null) { - Component? component = Navigator.DesignerComponentFromPoint(new Point(e.X, e.Y)); + // Force the layout to be update for any change in selection + Navigator.PerformLayout(); - if (component != null) + // Select the component + var selectionList = new ArrayList { - // Force the layout to be update for any change in selection - Navigator.PerformLayout(); - - // Select the component - ArrayList selectionList = new() - { - component - }; - _selectionService.SetSelectedComponents(selectionList, SelectionTypes.Auto); - } + component + }; + _selectionService.SetSelectedComponents(selectionList, SelectionTypes.Auto); } } } @@ -548,22 +539,16 @@ private void OnNavigatorMouseUp(object sender, MouseEventArgs e) private void OnNavigatorDoubleClick(object sender, Point pt) { // Get any component associated with the current mouse position - if (Navigator != null) - { - Component? component = Navigator.DesignerComponentFromPoint(pt); + Component? component = Navigator?.DesignerComponentFromPoint(pt); - // We are only interested in the button spec components and not the tab/check buttons - if ((component != null) && component is not System.Windows.Forms.Control) - { - // Get the designer for the component - IDesigner? designer = _designerHost.GetDesigner(component); + // We are only interested in the button spec components and not the tab/check buttons + if (component != null && component is not System.Windows.Forms.Control) + { + // Get the designer for the component + IDesigner? designer = _designerHost.GetDesigner(component); - // Request code for the default event be generated - if (designer != null) - { - designer.DoDefaultAction(); - } - } + // Request code for the default event be generated + designer?.DoDefaultAction(); } } diff --git a/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonPageDesigner.cs b/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonPageDesigner.cs index 0cf198ba6..13d333afb 100644 --- a/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonPageDesigner.cs +++ b/Source/Krypton Components/Krypton.Navigator/Navigator/KryptonPageDesigner.cs @@ -54,7 +54,7 @@ public override void Initialize([DisallowNull] IComponent component) _changeService = (IComponentChangeService)GetService(typeof(IComponentChangeService)); // We need to know when we are being removed - _changeService.ComponentRemoving += OnComponentRemoving!; + _changeService.ComponentRemoving += OnComponentRemoving; // Lock the component from user size/location change PropertyDescriptor? descriptor = TypeDescriptor.GetProperties(component)[@"Locked"]; @@ -86,7 +86,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + var actionLists = new DesignerActionListCollection { // Add the navigator specific list @@ -108,7 +108,7 @@ public override DesignerVerbCollection Verbs if (_verbs == null) { // Cache verb instances so enabled state can be updated in future - _verbEditFlags = new DesignerVerb(@"Edit Flags", OnEditFlags!); + _verbEditFlags = new DesignerVerb(@"Edit Flags", OnEditFlags); _verbs = new DesignerVerbCollection(new[] { _verbEditFlags }); } @@ -212,7 +212,7 @@ protected override void OnPaintAdornments(PaintEventArgs pe) #region Implementation private void OnEditFlags(object sender, EventArgs e) { - KryptonPageFormEditFlags editFlags = new(_page); + var editFlags = new KryptonPageFormEditFlags(_page); editFlags.ShowDialog(); } @@ -256,7 +256,7 @@ private KryptonNavigator? ParentNavigator private void DrawBorder(Graphics graphics) { // Create a pen for drawing - using Pen borderPen = new(SystemColors.ControlDarkDark); + using var borderPen = new Pen(SystemColors.ControlDarkDark); // Always draw the border dashed borderPen.DashStyle = DashStyle.Dash; diff --git a/Source/Krypton Components/Krypton.Navigator/Page/KryptonPage.cs b/Source/Krypton Components/Krypton.Navigator/Page/KryptonPage.cs index 48f72264e..628cc8781 100644 --- a/Source/Krypton Components/Krypton.Navigator/Page/KryptonPage.cs +++ b/Source/Krypton Components/Krypton.Navigator/Page/KryptonPage.cs @@ -166,7 +166,7 @@ public KryptonPage(string text, string? uniqueName) /// If Min Size not set in the Embedded control, then will default to 150, 50 /// public KryptonPage(string text, Bitmap? imageSmall, string? uniqueName) - : this(text, imageSmall, uniqueName, new(150, 50)) + : this(text, imageSmall, uniqueName, new Size(150, 50)) { } @@ -192,7 +192,7 @@ public KryptonPage(string text, Bitmap? imageSmall, string? uniqueName, Size min _toolTipImageTransparentColor = Color.Empty; _imageSmall = imageSmall; _setVisible = true; - _autoHiddenSlideSize = new(200, 200); + _autoHiddenSlideSize = new Size(200, 200); _uniqueName = string.IsNullOrEmpty(uniqueName) ? CommonHelper.UniqueString : uniqueName; _flags.Flags = (int)KryptonPageFlags.All; _flags.ClearFlags((int)KryptonPageFlags.PageInOverflowBarForOutlookMode); @@ -202,23 +202,23 @@ public KryptonPage(string text, Bitmap? imageSmall, string? uniqueName, Size min _needNormalPaint = OnNeedNormalPaint!; // Create redirector for inheriting from owning navigator - _redirectNavigator = new(Redirector); - _redirectNavigatorPage = new(Redirector); - _redirectNavigatorHeaderGroup = new(Redirector); - _redirectNavigatorHeaderPrimary = new(Redirector); - _redirectNavigatorHeaderSecondary = new(Redirector); - _redirectNavigatorHeaderBar = new(Redirector); - _redirectNavigatorHeaderOverflow = new(Redirector); - _redirectNavigatorCheckButton = new(Redirector); - _redirectNavigatorOverflowButton = new(Redirector); - _redirectNavigatorMiniButton = new(Redirector); - _redirectNavigatorBar = new(Redirector); - _redirectNavigatorSeparator = new(Redirector); - _redirectNavigatorTab = new(Redirector); - _redirectNavigatorRibbonTab = new(Redirector); + _redirectNavigator = new PaletteRedirectDoubleMetric(Redirector); + _redirectNavigatorPage = new PaletteRedirectDouble(Redirector); + _redirectNavigatorHeaderGroup = new PaletteRedirectDoubleMetric(Redirector); + _redirectNavigatorHeaderPrimary = new PaletteRedirectTripleMetric(Redirector); + _redirectNavigatorHeaderSecondary = new PaletteRedirectTripleMetric(Redirector); + _redirectNavigatorHeaderBar = new PaletteRedirectTripleMetric(Redirector); + _redirectNavigatorHeaderOverflow = new PaletteRedirectTripleMetric(Redirector); + _redirectNavigatorCheckButton = new PaletteRedirectTriple(Redirector); + _redirectNavigatorOverflowButton = new PaletteRedirectTriple(Redirector); + _redirectNavigatorMiniButton = new PaletteRedirectTriple(Redirector); + _redirectNavigatorBar = new PaletteRedirectMetric(Redirector); + _redirectNavigatorSeparator = new PaletteRedirectDoubleMetric(Redirector); + _redirectNavigatorTab = new PaletteRedirectTriple(Redirector); + _redirectNavigatorRibbonTab = new PaletteRedirectRibbonTabContent(Redirector); // Create the palette storage - _stateCommon = new(null, + _stateCommon = new PaletteNavigatorRedirect(null, _redirectNavigator, _redirectNavigatorPage, _redirectNavigatorHeaderGroup, @@ -237,33 +237,33 @@ public KryptonPage(string text, Bitmap? imageSmall, string? uniqueName, Size min new PaletteRedirectRibbonGeneral(Redirector), NeedPaintDelegate); - _stateDisabled = new(_stateCommon, _needDisabledPaint); - _stateNormal = new(_stateCommon, _needNormalPaint); - StateTracking = new(_stateCommon, _needNormalPaint); - StatePressed = new(_stateCommon, _needNormalPaint); - StateSelected = new(_stateCommon, _needNormalPaint); + _stateDisabled = new PaletteNavigator(_stateCommon, _needDisabledPaint); + _stateNormal = new PaletteNavigator(_stateCommon, _needNormalPaint); + StateTracking = new PaletteNavigatorOtherEx(_stateCommon, _needNormalPaint); + StatePressed = new PaletteNavigatorOtherEx(_stateCommon, _needNormalPaint); + StateSelected = new PaletteNavigatorOther(_stateCommon, _needNormalPaint); - OverrideFocus = new(_redirectNavigatorCheckButton, + OverrideFocus = new PaletteNavigatorOtherRedirect(_redirectNavigatorCheckButton, _redirectNavigatorOverflowButton, _redirectNavigatorMiniButton, _redirectNavigatorTab, _redirectNavigatorRibbonTab, _needNormalPaint); // Our view contains just a simple canvas that covers entire client area - _drawPanel = new(_stateNormal.Page); + _drawPanel = new ViewDrawPanel(_stateNormal.Page); // Create page specific button spec storage - ButtonSpecs = new(this); + ButtonSpecs = new PageButtonSpecCollection(this); // Create the view manager instance - ViewManager = new(this, _drawPanel); + ViewManager = new ViewManager(this, _drawPanel); } /// /// Obtains the String representation of this instance. /// /// User readable name of the instance. - public override string ToString() => "KryptonPage " + Text; + public override string ToString() => $"KryptonPage {Text}"; #endregion @@ -813,93 +813,50 @@ public virtual void SetInherit(Control alignControl, } // Setup the redirection states - if (_redirectNavigator != null) - { - _redirectNavigator.SetRedirectStates(disabled, disabled, normal, normal); - } + _redirectNavigator?.SetRedirectStates(disabled, disabled, normal, normal); - if (_redirectNavigatorPage != null) - { - _redirectNavigatorPage.SetRedirectStates(disabled!.PalettePage, normal!.PalettePage); - } + _redirectNavigatorPage?.SetRedirectStates(disabled!.PalettePage, normal!.PalettePage); - if (_redirectNavigatorHeaderGroup != null) - { - _redirectNavigatorHeaderGroup.SetRedirectStates(disabled!.HeaderGroup, disabled.HeaderGroup, - normal!.HeaderGroup, normal.HeaderGroup); - } + _redirectNavigatorHeaderGroup?.SetRedirectStates(disabled!.HeaderGroup, disabled.HeaderGroup, + normal!.HeaderGroup, normal.HeaderGroup); - if (_redirectNavigatorHeaderPrimary != null) - { - _redirectNavigatorHeaderPrimary.SetRedirectStates(disabled!.HeaderGroup!.HeaderPrimary, - disabled.HeaderGroup.HeaderPrimary, normal!.HeaderGroup!.HeaderPrimary, - normal.HeaderGroup.HeaderPrimary); - } + _redirectNavigatorHeaderPrimary?.SetRedirectStates(disabled!.HeaderGroup!.HeaderPrimary, + disabled.HeaderGroup.HeaderPrimary, normal!.HeaderGroup!.HeaderPrimary, + normal.HeaderGroup.HeaderPrimary); - if (_redirectNavigatorHeaderSecondary != null) - { - _redirectNavigatorHeaderSecondary.SetRedirectStates(disabled!.HeaderGroup!.HeaderSecondary, - disabled.HeaderGroup.HeaderSecondary, normal!.HeaderGroup!.HeaderSecondary, - normal.HeaderGroup.HeaderSecondary); - } + _redirectNavigatorHeaderSecondary?.SetRedirectStates(disabled!.HeaderGroup!.HeaderSecondary, + disabled.HeaderGroup.HeaderSecondary, normal!.HeaderGroup!.HeaderSecondary, + normal.HeaderGroup.HeaderSecondary); - if (_redirectNavigatorHeaderBar != null) - { - _redirectNavigatorHeaderBar.SetRedirectStates(disabled!.HeaderGroup!.HeaderBar, - disabled.HeaderGroup.HeaderBar, normal!.HeaderGroup!.HeaderBar, normal.HeaderGroup.HeaderBar); - } + _redirectNavigatorHeaderBar?.SetRedirectStates(disabled!.HeaderGroup!.HeaderBar, + disabled.HeaderGroup.HeaderBar, normal!.HeaderGroup!.HeaderBar, normal.HeaderGroup.HeaderBar); - if (_redirectNavigatorHeaderOverflow != null) - { - _redirectNavigatorHeaderOverflow.SetRedirectStates(disabled!.HeaderGroup!.HeaderOverflow, - disabled.HeaderGroup.HeaderOverflow, normal!.HeaderGroup!.HeaderOverflow, - normal.HeaderGroup.HeaderOverflow); - } + _redirectNavigatorHeaderOverflow?.SetRedirectStates(disabled!.HeaderGroup!.HeaderOverflow, + disabled.HeaderGroup.HeaderOverflow, normal!.HeaderGroup!.HeaderOverflow, + normal.HeaderGroup.HeaderOverflow); - if (_redirectNavigatorCheckButton != null) - { - _redirectNavigatorCheckButton.SetRedirectStates(disabled!.CheckButton, normal!.CheckButton, - pressed.CheckButton, tracking.CheckButton, selected.CheckButton, selected.CheckButton, - selected.CheckButton, focus.CheckButton, null); - } + _redirectNavigatorCheckButton?.SetRedirectStates(disabled!.CheckButton, normal!.CheckButton, + pressed.CheckButton, tracking.CheckButton, selected.CheckButton, selected.CheckButton, + selected.CheckButton, focus.CheckButton, null); - if (_redirectNavigatorOverflowButton != null) - { - _redirectNavigatorOverflowButton.SetRedirectStates(disabled!.OverflowButton, normal!.OverflowButton, - pressed.OverflowButton, tracking.OverflowButton, selected.OverflowButton, selected.OverflowButton, - selected.OverflowButton, focus.OverflowButton, null); - } + _redirectNavigatorOverflowButton?.SetRedirectStates(disabled!.OverflowButton, normal!.OverflowButton, + pressed.OverflowButton, tracking.OverflowButton, selected.OverflowButton, selected.OverflowButton, + selected.OverflowButton, focus.OverflowButton, null); - if (_redirectNavigatorMiniButton != null) - { + _redirectNavigatorMiniButton?.SetRedirectStates(disabled!.MiniButton, normal!.MiniButton, + pressed.MiniButton, tracking.MiniButton, selected.MiniButton, selected.MiniButton, + selected.MiniButton, focus.MiniButton, null); - _redirectNavigatorMiniButton.SetRedirectStates(disabled!.MiniButton, normal!.MiniButton, - pressed.MiniButton, tracking.MiniButton, selected.MiniButton, selected.MiniButton, - selected.MiniButton, focus.MiniButton, null); - } + _redirectNavigatorBar?.SetRedirectStates(common!.Bar, common.Bar); - if (_redirectNavigatorBar != null) - { - _redirectNavigatorBar.SetRedirectStates(common!.Bar, common.Bar); - } + _redirectNavigatorSeparator?.SetRedirectStates(disabled!.Separator, disabled.Separator, normal!.Separator, + normal.Separator, pressed.Separator, pressed.Separator, tracking.Separator, tracking.Separator); - if (_redirectNavigatorSeparator != null) - { - _redirectNavigatorSeparator.SetRedirectStates(disabled!.Separator, disabled.Separator, normal!.Separator, - normal.Separator, pressed.Separator, pressed.Separator, tracking.Separator, tracking.Separator); - } + _redirectNavigatorTab?.SetRedirectStates(disabled!.Tab, normal!.Tab, pressed.Tab, tracking.Tab, + selected.Tab, selected.Tab, selected.Tab, focus.Tab, null); - if (_redirectNavigatorTab != null) - { - _redirectNavigatorTab.SetRedirectStates(disabled!.Tab, normal!.Tab, pressed.Tab, tracking.Tab, - selected.Tab, selected.Tab, selected.Tab, focus.Tab, null); - } - - if (_redirectNavigatorRibbonTab != null) - { - _redirectNavigatorRibbonTab.SetRedirectStates(disabled!.RibbonTab, normal!.RibbonTab, pressed.RibbonTab, - tracking.RibbonTab, selected.RibbonTab, focus.RibbonTab); - } + _redirectNavigatorRibbonTab?.SetRedirectStates(disabled!.RibbonTab, normal!.RibbonTab, pressed.RibbonTab, + tracking.RibbonTab, selected.RibbonTab, focus.RibbonTab); if (_stateCommon != null) { @@ -920,75 +877,33 @@ public virtual void ResetInherit(Control alignControl) ViewManager.AlignControl = this; // Clear down the redirection states - if (_redirectNavigator != null) - { - _redirectNavigator.ResetRedirectStates(); - } + _redirectNavigator?.ResetRedirectStates(); - if (_redirectNavigatorPage != null) - { - _redirectNavigatorPage.ResetRedirectStates(); - } + _redirectNavigatorPage?.ResetRedirectStates(); - if (_redirectNavigatorHeaderGroup != null) - { - _redirectNavigatorHeaderGroup.ResetRedirectStates(); - } + _redirectNavigatorHeaderGroup?.ResetRedirectStates(); - if (_redirectNavigatorHeaderPrimary != null) - { - _redirectNavigatorHeaderPrimary.ResetRedirectStates(); - } + _redirectNavigatorHeaderPrimary?.ResetRedirectStates(); - if (_redirectNavigatorHeaderSecondary != null) - { - _redirectNavigatorHeaderSecondary.ResetRedirectStates(); - } + _redirectNavigatorHeaderSecondary?.ResetRedirectStates(); - if (_redirectNavigatorHeaderBar != null) - { - _redirectNavigatorHeaderBar.ResetRedirectStates(); - } + _redirectNavigatorHeaderBar?.ResetRedirectStates(); - if (_redirectNavigatorHeaderOverflow != null) - { - _redirectNavigatorHeaderOverflow.ResetRedirectStates(); - } + _redirectNavigatorHeaderOverflow?.ResetRedirectStates(); - if (_redirectNavigatorCheckButton != null) - { - _redirectNavigatorCheckButton.ResetRedirectStates(); - } + _redirectNavigatorCheckButton?.ResetRedirectStates(); - if (_redirectNavigatorOverflowButton != null) - { - _redirectNavigatorOverflowButton.ResetRedirectStates(); - } + _redirectNavigatorOverflowButton?.ResetRedirectStates(); - if (_redirectNavigatorMiniButton != null) - { - _redirectNavigatorMiniButton.ResetRedirectStates(); - } + _redirectNavigatorMiniButton?.ResetRedirectStates(); - if (_redirectNavigatorBar != null) - { - _redirectNavigatorBar.ResetRedirectStates(); - } + _redirectNavigatorBar?.ResetRedirectStates(); - if (_redirectNavigatorSeparator != null) - { - _redirectNavigatorSeparator.ResetRedirectStates(); - } + _redirectNavigatorSeparator?.ResetRedirectStates(); - if (_redirectNavigatorTab != null) - { - _redirectNavigatorTab.ResetRedirectStates(); - } + _redirectNavigatorTab?.ResetRedirectStates(); - if (_redirectNavigatorRibbonTab != null) - { - _redirectNavigatorRibbonTab.ResetRedirectStates(); - } + _redirectNavigatorRibbonTab?.ResetRedirectStates(); if (_stateCommon != null) { @@ -1380,10 +1295,10 @@ protected override void WndProc(ref Message m) if (KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + var mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered - mousePt = ((int)m.LParam) == -1 ? new(Width / 2, Height / 2) : PointToClient(mousePt); + mousePt = ((int)m.LParam) == -1 ? new Point(Width / 2, Height / 2) : PointToClient(mousePt); // If the mouse position is within our client area if (ClientRectangle.Contains(mousePt)) @@ -1432,10 +1347,7 @@ protected override void OnEnabledChanged(EventArgs e) /// An EventArgs containing the event data. protected override void OnDockChanged(EventArgs e) { - if (DockChanged != null) - { - DockChanged.Invoke(this, e); - } + DockChanged?.Invoke(this, e); } /// @@ -1444,10 +1356,7 @@ protected override void OnDockChanged(EventArgs e) /// An EventArgs containing the event data. protected override void OnLocationChanged(EventArgs e) { - if (LocationChanged != null) - { - LocationChanged.Invoke(this, e); - } + LocationChanged?.Invoke(this, e); } /// @@ -1456,10 +1365,7 @@ protected override void OnLocationChanged(EventArgs e) /// An EventArgs containing the event data. protected override void OnTabIndexChanged(EventArgs e) { - if (TabIndexChanged != null) - { - TabIndexChanged.Invoke(this, e); - } + TabIndexChanged?.Invoke(this, e); } /// @@ -1469,10 +1375,7 @@ protected override void OnTabIndexChanged(EventArgs e) protected override void OnTabStopChanged(EventArgs e) { // https://github.com/Krypton-Suite/Standard-Toolkit/issues/1023#issuecomment-1588810368 - if (TabStopChanged != null) - { - TabStopChanged.Invoke(this, e); - } + TabStopChanged?.Invoke(this, e); } /// @@ -1481,10 +1384,7 @@ protected override void OnTabStopChanged(EventArgs e) /// Name of the appearance property that has changed. protected virtual void OnAppearancePropertyChanged(string propertyName) { - if (AppearancePropertyChanged != null) - { - AppearancePropertyChanged.Invoke(this, new(propertyName)); - } + AppearancePropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } /// @@ -1493,10 +1393,7 @@ protected virtual void OnAppearancePropertyChanged(string propertyName) /// Set of flags that have changed. protected virtual void OnFlagsChanged(KryptonPageFlags changed) { - if (FlagsChanged != null) - { - FlagsChanged.Invoke(this, new(changed)); - } + FlagsChanged?.Invoke(this, new KryptonPageFlagsEventArgs(changed)); } /// @@ -1505,10 +1402,7 @@ protected virtual void OnFlagsChanged(KryptonPageFlags changed) /// An EventArgs containing the event data. protected virtual void OnAutoHiddenSlideSizeChanged(EventArgs e) { - if (AutoHiddenSlideSizeChanged != null) - { - AutoHiddenSlideSizeChanged.Invoke(this, e); - } + AutoHiddenSlideSizeChanged?.Invoke(this, e); } /// @@ -1517,10 +1411,7 @@ protected virtual void OnAutoHiddenSlideSizeChanged(EventArgs e) /// An EventArgs containing the event data. protected virtual void OnLoad(EventArgs e) { - if (Load != null) - { - Load.Invoke(this, e); - } + Load?.Invoke(this, e); } /// diff --git a/Source/Krypton Components/Krypton.Navigator/Palette/NavigatorBar.cs b/Source/Krypton Components/Krypton.Navigator/Palette/NavigatorBar.cs index a25a1d56a..5d0fee274 100644 --- a/Source/Krypton Components/Krypton.Navigator/Palette/NavigatorBar.cs +++ b/Source/Krypton Components/Krypton.Navigator/Palette/NavigatorBar.cs @@ -22,8 +22,8 @@ public class NavigatorBar : Storage private const int DEFAULT_BAR_MINIMUM_HEIGHT = 21; private const int DEFAULT_BAR_FIRST_ITEM_INSET = 0; private const int DEFAULT_BAR_LAST_ITEM_INSET = 0; - private static readonly Size _defaultItemMinimumSize = new(20, 20); - private static readonly Size _defaultItemMaximumSize = new(200, 200); + private static readonly Size _defaultItemMinimumSize = new Size(20, 20); + private static readonly Size _defaultItemMaximumSize = new Size(200, 200); #endregion #region Instance Fields diff --git a/Source/Krypton Components/Krypton.Navigator/Palette/NavigatorButton.cs b/Source/Krypton Components/Krypton.Navigator/Palette/NavigatorButton.cs index 4393cba46..57490d928 100644 --- a/Source/Krypton Components/Krypton.Navigator/Palette/NavigatorButton.cs +++ b/Source/Krypton Components/Krypton.Navigator/Palette/NavigatorButton.cs @@ -71,13 +71,13 @@ public NavigatorButton([DisallowNull] KryptonNavigator navigator, FormMinimizeButton = new ButtonSpecNavFormMinimize(_navigator); // Hook into the click events for the buttons - PreviousButton.Click += OnPreviousClick!; - NextButton.Click += OnNextClick!; - ContextButton.Click += OnContextClick!; - CloseButton.Click += OnCloseClick!; - FormCloseButton.Click += OnCloseButtonClick!; - FormMinimizeButton.Click += OnMinimizeButtonClick!; - FormMaximizeButton.Click += OnMaximizeButtonClick!; + PreviousButton.Click += OnPreviousClick; + NextButton.Click += OnNextClick; + ContextButton.Click += OnContextClick; + CloseButton.Click += OnCloseClick; + FormCloseButton.Click += OnCloseButtonClick; + FormMinimizeButton.Click += OnMinimizeButtonClick; + FormMaximizeButton.Click += OnMaximizeButtonClick; // Add fixed buttons into the display collection if (_navigator.Owner != null && !_navigator.ControlKryptonFormFeatures) diff --git a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarRibbonTabBase.cs b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarRibbonTabBase.cs index e422e3a7d..7ad31a3b8 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarRibbonTabBase.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarRibbonTabBase.cs @@ -27,7 +27,7 @@ protected override INavCheckItem CreateCheckItem(KryptonPage? page, VisualOrientation orientation) { // Create a check button view element - ViewDrawNavRibbonTab ribbonTab = new(Navigator, page); + var ribbonTab = new ViewDrawNavRibbonTab(Navigator, page); // Convert the button orientation to the appropriate visual orientations VisualOrientation orientBackBorder = ConvertButtonBorderBackOrientation(); diff --git a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarRibbonTabGroup.cs b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarRibbonTabGroup.cs index 954e244b0..1fe42e47a 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarRibbonTabGroup.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarRibbonTabGroup.cs @@ -44,16 +44,10 @@ protected override void CreateCheckItemView() }; // Create the view element that lays out the check buttons - ViewLayoutBarForTabs layoutBar = new(Navigator.StateCommon.Bar, - PaletteMetricInt.RibbonTabGap, - Navigator.Bar.ItemSizing, - Navigator.Bar.ItemAlignment, - Navigator.Bar.BarMultiline, - Navigator.Bar.ItemMinimumSize, - Navigator.Bar.ItemMaximumSize, - Navigator.Bar.BarMinimumHeight, - Navigator.Bar.TabBorderStyle, - true); + var layoutBar = new ViewLayoutBarForTabs(Navigator.StateCommon.Bar, + PaletteMetricInt.RibbonTabGap, Navigator.Bar.ItemSizing, Navigator.Bar.ItemAlignment, + Navigator.Bar.BarMultiline, Navigator.Bar.ItemMinimumSize, Navigator.Bar.ItemMaximumSize, + Navigator.Bar.BarMinimumHeight, Navigator.Bar.TabBorderStyle, true); _layoutBar = layoutBar; // Create the scroll spacer that restricts display diff --git a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarTabBase.cs b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarTabBase.cs index 25637ee0b..fc1d1f69c 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarTabBase.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarTabBase.cs @@ -42,7 +42,7 @@ protected override INavCheckItem CreateCheckItem(KryptonPage? page, VisualOrientation orientation) { // Create a check button view element - ViewDrawNavCheckButtonTab checkButton = new(Navigator, page, orientation); + var checkButton = new ViewDrawNavCheckButtonTab(Navigator, page, orientation); // Convert the button orientation to the appropriate visual orientations VisualOrientation orientBackBorder = ConvertButtonBorderBackOrientation(); diff --git a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarTabGroup.cs b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarTabGroup.cs index e61305f65..c70ba13c3 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarTabGroup.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBarTabGroup.cs @@ -44,14 +44,9 @@ protected override void CreateCheckItemView() }; // Create the view element that lays out the check/tab buttons - ViewLayoutBarForTabs layoutBar = new(Navigator.Bar.ItemSizing, - Navigator.Bar.ItemAlignment, - Navigator.Bar.BarMultiline, - Navigator.Bar.ItemMinimumSize, - Navigator.Bar.ItemMaximumSize, - Navigator.Bar.BarMinimumHeight, - Navigator.Bar.TabBorderStyle, - true); + var layoutBar = new ViewLayoutBarForTabs(Navigator.Bar.ItemSizing, + Navigator.Bar.ItemAlignment, Navigator.Bar.BarMultiline, Navigator.Bar.ItemMinimumSize, + Navigator.Bar.ItemMaximumSize, Navigator.Bar.BarMinimumHeight, Navigator.Bar.TabBorderStyle, true); _layoutBar = layoutBar; // Create the scroll spacer that restricts display diff --git a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBase.cs b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBase.cs index 0601021d7..86838b7cd 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBase.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderBase.cs @@ -81,16 +81,16 @@ public PaletteRedirect? Redirector /// Palette redirector. public virtual void Construct([DisallowNull] KryptonNavigator navigator, [DisallowNull] ViewManager manager, - [DisallowNull] PaletteRedirect? redirector) + [DisallowNull] PaletteRedirect redirector) { - Debug.Assert(navigator != null); + Debug.Assert(navigator != null, $"{nameof(navigator)} != null"); Debug.Assert(manager != null); Debug.Assert(redirector != null); Debug.Assert(_constructed == false); // Save provided references - Navigator = navigator!; - ViewManager = manager!; + Navigator = navigator; + ViewManager = manager; Redirector = redirector; _constructed = true; @@ -104,10 +104,10 @@ public virtual void Construct([DisallowNull] KryptonNavigator navigator, public virtual void Destruct() { Debug.Assert(_constructed); - Debug.Assert(Navigator != null); + Debug.Assert(Navigator != null, $"{nameof(Navigator)} != null"); // Unhook from the navigator events - Navigator!.ViewBuilderPropertyChanged -= OnViewBuilderPropertyChanged; + Navigator.ViewBuilderPropertyChanged -= OnViewBuilderPropertyChanged; // No longer constructed _constructed = false; @@ -490,7 +490,7 @@ public virtual bool SelectNextPage(KryptonPage? page, if ((first == null) && wrap) { // Are we allowed to wrap around? - CtrlTabCancelEventArgs ce = new(true); + var ce = new CtrlTabCancelEventArgs(true); Navigator.OnCtrlTabWrap(ce); if (ce.Cancel) @@ -529,7 +529,7 @@ public virtual bool SelectNextPage(KryptonPage? page, if ((next == null) && wrap) { // Are we allowed to wrap around? - CtrlTabCancelEventArgs ce = new(true); + var ce = new CtrlTabCancelEventArgs(true); Navigator.OnCtrlTabWrap(ce); if (ce.Cancel) @@ -589,7 +589,7 @@ public virtual bool SelectPreviousPage(KryptonPage? page, if ((first == null) && wrap) { // Are we allowed to wrap around? - CtrlTabCancelEventArgs ce = new(false); + var ce = new CtrlTabCancelEventArgs(false); Navigator.OnCtrlTabWrap(ce); if (ce.Cancel) @@ -628,7 +628,7 @@ public virtual bool SelectPreviousPage(KryptonPage? page, if ((previous == null) && wrap) { // Are we allowed to wrap around? - CtrlTabCancelEventArgs ce = new(false); + var ce = new CtrlTabCancelEventArgs(false); Navigator.OnCtrlTabWrap(ce); if (ce.Cancel) @@ -663,7 +663,7 @@ protected NeedPaintHandler NeedPaintDelegate [DebuggerStepThrough] get => // Only create the delegate when it is first needed - _needPaintDelegate ??= OnNeedPaint!; + _needPaintDelegate ??= OnNeedPaint; } /// @@ -714,8 +714,10 @@ protected void OnNeedPagePaint(object sender, NeedLayoutEventArgs e) protected virtual void OnViewBuilderPropertyChanged(object sender, PropertyChangedEventArgs e) { if (Navigator.StateCommon == null) + { return; - + } + switch (e.PropertyName) { case @"PanelBackStyle": @@ -724,12 +726,18 @@ protected virtual void OnViewBuilderPropertyChanged(object sender, PropertyChang break; case @"PageBackStyle": if (Navigator.StateCommon.PalettePage != null) + { Navigator.StateCommon.PalettePage.BackStyle = Navigator.PageBackStyle; + } + Navigator.PerformNeedPagePaint(true); break; case @"GroupBackStyle": if (Navigator.ChildPanel != null) + { Navigator.ChildPanel.PanelBackStyle = Navigator.Group.GroupBackStyle; + } + Debug.Assert(Navigator.StateCommon.HeaderGroup != null, "Navigator.StateCommon.HeaderGroup != null"); Navigator.StateCommon.HeaderGroup.BackStyle = Navigator.Group.GroupBackStyle; Navigator.PerformNeedPaint(true); diff --git a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderHeaderBarTabGroup.cs b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderHeaderBarTabGroup.cs index ef7b8e78b..1045362aa 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderHeaderBarTabGroup.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderHeaderBarTabGroup.cs @@ -119,7 +119,7 @@ public override Point GetContextShowPoint() Rectangle rect = _buttonManager.GetButtonRectangle(Navigator.Button.ContextButton); // We want the context menu to show just below the button - Point pt = new(rect.Left, rect.Bottom + 3); + var pt = new Point(rect.Left, rect.Bottom + 3); // Convert from control coordinates to screen coordinates return Navigator.PointToScreen(pt); @@ -199,7 +199,7 @@ public override void PerformPreviousAction(DirectionButtonAction action, Krypton public void UpdateButtons() { // Ensure buttons are recreated to reflect different page - _buttonManager?.RecreateButtons(); + _buttonManager.RecreateButtons(); } #endregion @@ -259,14 +259,9 @@ protected override void CreateCheckItemView() _drawGroup.Add(_oldRoot); // Create the view element that lays out the check/tab buttons - ViewLayoutBarForTabs layoutBar = new(Navigator.Bar.ItemSizing, - Navigator.Bar.ItemAlignment, - Navigator.Bar.BarMultiline, - Navigator.Bar.ItemMinimumSize, - Navigator.Bar.ItemMaximumSize, - Navigator.Bar.BarMinimumHeight, - Navigator.Bar.TabBorderStyle, - true); + var layoutBar = new ViewLayoutBarForTabs(Navigator.Bar.ItemSizing, + Navigator.Bar.ItemAlignment, Navigator.Bar.BarMultiline, Navigator.Bar.ItemMinimumSize, + Navigator.Bar.ItemMaximumSize, Navigator.Bar.BarMinimumHeight, Navigator.Bar.TabBorderStyle, true); _layoutBar = layoutBar; // Create the scroll spacer that restricts display @@ -468,7 +463,7 @@ protected override void OnViewBuilderPropertyChanged(object sender, PropertyChan private void CreateDragDrop() { // Create and attach the drag controller to the header view - DragViewController controller = new(_viewHeadingPrimary); + var controller = new DragViewController(_viewHeadingPrimary); _viewHeadingPrimary.MouseController = controller; _viewHeadingPrimary.KeyController = controller; _viewHeadingPrimary.SourceController = controller; @@ -597,7 +592,7 @@ private void SetHeaderPosition(ViewDrawCanvas canvas, } } - private void SetPalettes(PaletteHeaderGroup? palette) + private void SetPalettes([DisallowNull] PaletteHeaderGroup palette) { _viewHeadingPrimary.SetPalettes(palette.HeaderPrimary.Back, palette.HeaderPrimary.Border, palette.HeaderPrimary); _viewHeadingSecondary.SetPalettes(palette.HeaderSecondary.Back, palette.HeaderSecondary.Border, palette.HeaderSecondary); diff --git a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderHeaderGroup.cs b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderHeaderGroup.cs index 2012015d1..a24d72f36 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderHeaderGroup.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderHeaderGroup.cs @@ -297,7 +297,7 @@ public override bool ProcessDialogKey(Keys keyData) if (control) { // Are we allowed to perform a Ctrl+Tab change in selection - CtrlTabCancelEventArgs ce = new(!shift); + var ce = new CtrlTabCancelEventArgs(!shift); Navigator.OnCtrlTabStart(ce); if (!ce.Cancel) diff --git a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderItemBase.cs b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderItemBase.cs index b96d10d05..a94de78f9 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderItemBase.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderItemBase.cs @@ -330,7 +330,7 @@ public override Point GetContextShowPoint() Rectangle rect = _buttonManager.GetButtonRectangle(Navigator.Button.ContextButton); // We want the context menu to show just below the button - Point pt = new(rect.Left, rect.Bottom + 3); + var pt = new Point(rect.Left, rect.Bottom + 3); // Convert from control coordinates to screen coordinates return Navigator.PointToScreen(pt); @@ -575,7 +575,7 @@ public override bool ProcessDialogKey(Keys keyData) if (control) { // Are we allowed to perform a Ctrl+Tab change in selection - CtrlTabCancelEventArgs ce = new(!shift); + var ce = new CtrlTabCancelEventArgs(!shift); Navigator.OnCtrlTabStart(ce); if (!ce.Cancel) @@ -758,7 +758,7 @@ protected virtual INavCheckItem CreateCheckItem(KryptonPage? page, VisualOrientation orientation) { // Create a check button view element - ViewDrawNavCheckButtonBar checkButton = new(Navigator, page, orientation); + var checkButton = new ViewDrawNavCheckButtonBar(Navigator, page, orientation); // Convert the button orientation to the appropriate visual orientations VisualOrientation orientBackBorder = ConvertButtonBorderBackOrientation(); @@ -1142,7 +1142,7 @@ private void OnItemPageRemoved(object sender, TypedCollectionEventArgs e) + private void OnItemPageInserted(object sender, TypedCollectionEventArgs e) { if (!Navigator.IsDisposed && (_events > 0)) { @@ -1237,7 +1237,7 @@ private void OnCheckButtonDragOffset(object sender, ButtonDragOffsetEventArgs e) { KryptonPage movePage = PageFromView(reorderView); KryptonPage targetPage = PageFromView(childView); - PageReorderEventArgs reorder = new(movePage, targetPage, false); + var reorder = new PageReorderEventArgs(movePage, targetPage, false); // Give event handlers a chance to cancel this reorder Navigator.OnBeforePageReorder(reorder); @@ -1268,7 +1268,7 @@ private void OnCheckButtonDragOffset(object sender, ButtonDragOffsetEventArgs e) { KryptonPage movePage = PageFromView(reorderView); KryptonPage targetPage = PageFromView(childView); - PageReorderEventArgs reorder = new(movePage, targetPage, true); + var reorder = new PageReorderEventArgs(movePage, targetPage, true); // Give event handlers a chance to cancel this reorder Navigator.OnBeforePageReorder(reorder); diff --git a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderOutlookBase.cs b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderOutlookBase.cs index ae2f60029..6cfcefc42 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderOutlookBase.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderOutlookBase.cs @@ -87,7 +87,10 @@ static ViewBuilderOutlookBase() _moreButtons = new Bitmap(streamBlueUp, true); } - if (streamBlueDown != null) _fewerButtons = new Bitmap(streamBlueDown, true); + if (streamBlueDown != null) + { + _fewerButtons = new Bitmap(streamBlueDown, true); + } } #endregion @@ -490,7 +493,7 @@ public override void PageAppearanceChanged([DisallowNull] KryptonPage? page, [Di } // Let base class do standard work - base.PageAppearanceChanged(page!, property!); + base.PageAppearanceChanged(page, property); } /// @@ -712,7 +715,7 @@ public override bool ProcessDialogKey(Keys keyData) if (control) { // Are we allowed to perform a Ctrl+Tab change in selection - CtrlTabCancelEventArgs ce = new(!shift); + var ce = new CtrlTabCancelEventArgs(!shift); Navigator.OnCtrlTabStart(ce); if (!ce.Cancel) @@ -1168,7 +1171,7 @@ protected virtual ViewBase CreateView() }; // Use a separator to ensure a minimum size to the overflow area - ViewLayoutSeparator sep = new(0, 18) + var sep = new ViewLayoutSeparator(0, 18) { Visible = false }; @@ -1225,7 +1228,7 @@ protected virtual ViewDrawNavOutlookOverflow CreateOverflowItem(KryptonPage? pag ViewDockStyle dockFar) { // Create the draw view element for the check button and provide page it represents - ViewDrawNavOutlookOverflow checkButton = new(Navigator, page, checkButtonOrient) + var checkButton = new ViewDrawNavOutlookOverflow(Navigator, page, checkButtonOrient) { // Need to know when check button needs repainting @@ -1661,7 +1664,7 @@ private void CreateStackItems() foreach (KryptonPage? page in Navigator.Pages) { // Create the draw view element for the check button and provide page it represents - ViewDrawNavOutlookStack checkButton = new(Navigator, page, checkButtonOrient); + var checkButton = new ViewDrawNavOutlookStack(Navigator, page, checkButtonOrient); // Provide the drag rectangle when requested for this button checkButton.ButtonDragRectangle += OnCheckButtonDragRect; @@ -1679,7 +1682,7 @@ private void CreateStackItems() checkButton.Checked = (Navigator.SelectedPage == page); // Create the border edge for use next to the check button - ViewDrawBorderEdge buttonEdge = new(buttonEdgePalette, buttonEdgeOrient) + var buttonEdge = new ViewDrawBorderEdge(buttonEdgePalette, buttonEdgeOrient) { Visible = showPage }; @@ -1850,8 +1853,8 @@ private void OnPageInserted(object sender, TypedCollectionEventArgs private ViewDrawNavCheckButtonBase? GetShrinkStackItem() { // If there is a visible stack item, then we can always shrink it away - if (_pageStackLookup != null) - { - return _pageStackLookup.Values.FirstOrDefault(static checkButton => checkButton.Visible); - } - - return null; + return _pageStackLookup?.Values.FirstOrDefault(static checkButton => checkButton.Visible); } private ViewDrawNavCheckButtonBase? GetExpandOverflowItem() { // If there is a overflow stack item, then we can always show it - if (_pageOverflowLookup != null) - { - return _pageOverflowLookup.Values.FirstOrDefault(static checkButton => checkButton.Visible); - } - - return null; + return _pageOverflowLookup?.Values.FirstOrDefault(static checkButton => checkButton.Visible); } private bool PageInTheStack(KryptonPage page) @@ -2122,10 +2115,11 @@ private void OnDropDownClick(object sender, EventArgs e) ResetCachedKryptonContextMenu(); // Add the three standard entries - KryptonContextMenuItem moreButtons = new(Navigator.Outlook.TextMoreButtons, _moreButtons, OnShowMoreClick); - KryptonContextMenuItem fewerButtons = new(Navigator.Outlook.TextFewerButtons, _fewerButtons, OnShowFewerClick); - KryptonContextMenuItem addRemoveButtons = new(Navigator.Outlook.TextAddRemoveButtons); - KryptonContextMenuItems addRemoveButtonItems = new(); + var moreButtons = new KryptonContextMenuItem(Navigator.Outlook.TextMoreButtons, _moreButtons, OnShowMoreClick); + var fewerButtons = new KryptonContextMenuItem(Navigator.Outlook.TextFewerButtons, + _fewerButtons, OnShowFewerClick); + var addRemoveButtons = new KryptonContextMenuItem(Navigator.Outlook.TextAddRemoveButtons); + var addRemoveButtonItems = new KryptonContextMenuItems(); addRemoveButtons.Items.Add(addRemoveButtonItems); // Setup the transparent color for the images @@ -2144,9 +2138,8 @@ private void OnDropDownClick(object sender, EventArgs e) foreach (KryptonPage page in Navigator.Pages) { // Create a menu item for the page - KryptonContextMenuItem pageMenuItem = new(page.GetTextMapping(Navigator.Button.ContextMenuMapText), - page.GetImageMapping(Navigator.Button.ContextMenuMapImage), - OnPageAddRemoveClick) + var pageMenuItem = new KryptonContextMenuItem(page.GetTextMapping(Navigator.Button.ContextMenuMapText), + page.GetImageMapping(Navigator.Button.ContextMenuMapImage), OnPageAddRemoveClick) { // The selected page should be checked @@ -2241,7 +2234,9 @@ private void OnPageAddRemoveClick(object sender, EventArgs e) // Toggle the visible state of the page if (menuItem?.Tag is KryptonPage page) + { page.Visible = !page.Visible; + } } private void ResetCachedKryptonContextMenu() @@ -2315,7 +2310,7 @@ private void OnCheckButtonDragOffset(object sender, ButtonDragOffsetEventArgs e) { KryptonPage? movePage = PageFromView(reorderView); KryptonPage? targetPage = PageFromView(childView); - PageReorderEventArgs reorder = new(movePage, targetPage, false); + var reorder = new PageReorderEventArgs(movePage, targetPage, false); // Give event handlers a chance to cancel this reorder Navigator.OnBeforePageReorder(reorder); @@ -2346,7 +2341,7 @@ private void OnCheckButtonDragOffset(object sender, ButtonDragOffsetEventArgs e) { KryptonPage? movePage = PageFromView(reorderView); KryptonPage? targetPage = PageFromView(childView); - PageReorderEventArgs reorder = new(movePage, targetPage, true); + var reorder = new PageReorderEventArgs(movePage, targetPage, true); // Give event handlers a chance to cancel this reorder Navigator.OnBeforePageReorder(reorder); diff --git a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderStackCheckButtonBase.cs b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderStackCheckButtonBase.cs index 5bba40fdd..7c7dd9e7b 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderStackCheckButtonBase.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Builder/ViewBuilderStackCheckButtonBase.cs @@ -371,7 +371,7 @@ public override bool ProcessDialogKey(Keys keyData) if (control) { // Are we allowed to perform a Ctrl+Tab change in selection - CtrlTabCancelEventArgs ce = new(!shift); + var ce = new CtrlTabCancelEventArgs(!shift); Navigator.OnCtrlTabStart(ce); if (!ce.Cancel) @@ -612,7 +612,7 @@ private void CreateNavCheckButtons() foreach (KryptonPage? page in Navigator.Pages) { // Create the draw view element for the check button and provide page it represents - ViewDrawNavCheckButtonStack checkButton = new(Navigator, page, checkButtonOrient); + var checkButton = new ViewDrawNavCheckButtonStack(Navigator, page, checkButtonOrient); // Provide the drag rectangle when requested for this button checkButton.ButtonDragRectangle += OnCheckButtonDragRect; @@ -628,7 +628,7 @@ private void CreateNavCheckButtons() checkButton.Orientation = checkButtonOrient; // Create the border edge for use next to the check button - ViewDrawBorderEdge buttonEdge = new(buttonEdgePalette, buttonEdgeOrient) + var buttonEdge = new ViewDrawBorderEdge(buttonEdgePalette, buttonEdgeOrient) { Visible = page.LastVisibleSet }; @@ -774,7 +774,7 @@ private void OnPageInserted(object sender, TypedCollectionEventArgsUser readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawNavCheckButtonBar:" + Id; + $"ViewDrawNavCheckButtonBar:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonBase.cs b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonBase.cs index f109ff3e3..0d897839b 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonBase.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonBase.cs @@ -41,12 +41,12 @@ internal abstract class ViewDrawNavCheckButtonBase : ViewDrawButton, /// /// Occurs when the drag rectangle for the button is required. /// - public event EventHandler ButtonDragRectangle; + public event EventHandler? ButtonDragRectangle; /// /// Occurs when the drag offset for the button is changed. /// - public event EventHandler ButtonDragOffset; + public event EventHandler? ButtonDragOffset; #endregion #region Identity @@ -189,7 +189,7 @@ protected override void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawNavCheckButtonBase:" + Id; + $"ViewDrawNavCheckButtonBase:{Id}"; #endregion @@ -403,8 +403,8 @@ protected virtual IMouseController CreateMouseController() KeyController = _buttonController; // Create two decorators in order to support tooltips and hover events - ToolTipController? toolTipController = new(Navigator.ToolTipManager, this, _buttonController); - ToolTipController hoverController = new(Navigator.HoverManager, this, toolTipController); + var toolTipController = new ToolTipController(Navigator.ToolTipManager, this, _buttonController); + var hoverController = new ToolTipController(Navigator.HoverManager, this, toolTipController); return hoverController; } #endregion @@ -473,7 +473,7 @@ protected virtual void OnRightClick(object sender, MouseEventArgs e) } // Generate event so user can decide what, if any, context menu to show - ShowContextMenuArgs scma = new(_page, Navigator.Pages.IndexOf(_page)); + var scma = new ShowContextMenuArgs(_page, Navigator.Pages.IndexOf(_page)); Navigator.OnShowContextMenu(scma); // Do we need to show a context menu diff --git a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonStack.cs b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonStack.cs index 0f8a46af4..572d05824 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonStack.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonStack.cs @@ -37,7 +37,7 @@ public ViewDrawNavCheckButtonStack(KryptonNavigator navigator, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawNavCheckButtonStack:" + Id; + $"ViewDrawNavCheckButtonStack:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonTab.cs b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonTab.cs index f06e4d645..4006c5d17 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonTab.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavCheckButtonTab.cs @@ -43,7 +43,7 @@ public ViewDrawNavCheckButtonTab(KryptonNavigator navigator, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawNavCheckButtonTab:" + Id; + $"ViewDrawNavCheckButtonTab:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookMini.cs b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookMini.cs index bac7ce1f1..d38624d1d 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookMini.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookMini.cs @@ -48,7 +48,7 @@ public ViewDrawNavOutlookMini(KryptonNavigator navigator, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawNavOutlookMini:" + Id + " Text:" + Page.Text; + $"ViewDrawNavOutlookMini:{Id} Text:{Page.Text}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookOverflow.cs b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookOverflow.cs index 99b8a3e50..a4c943688 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookOverflow.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookOverflow.cs @@ -37,7 +37,7 @@ public ViewDrawNavOutlookOverflow(KryptonNavigator navigator, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawNavOutlookOverflow:" + Id; + $"ViewDrawNavOutlookOverflow:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookStack.cs b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookStack.cs index 60207191e..1a0d62bee 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookStack.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavOutlookStack.cs @@ -41,7 +41,7 @@ public ViewDrawNavOutlookStack(KryptonNavigator navigator, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawNavOutlookStack:" + Id + " Text:" + Page.Text; + $"ViewDrawNavOutlookStack:{Id} Text:{Page.Text}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavRibbonTab.cs b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavRibbonTab.cs index 32edfa303..3395ce4a3 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavRibbonTab.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Draw/ViewDrawNavRibbonTab.cs @@ -17,24 +17,24 @@ internal class ViewDrawNavRibbonTab : ViewComposite, INavCheckItem { #region Static Fields - private static readonly Padding _preferredBorder = new(5, 5, 5, 2); - private static readonly Padding _layoutBorderTop = new(4, 4, 4, 1); - private static readonly Padding _layoutBorderLeft = new(5, 4, 3, 1); - private static readonly Padding _layoutBorderRight = new(4, 5, 4, 0); - private static readonly Padding _layoutBorderBottom = new(4, 2, 4, 3); - private static readonly Padding _drawBorder = new(1, 0, 1, 0); + private static readonly Padding _preferredBorder = new Padding(5, 5, 5, 2); + private static readonly Padding _layoutBorderTop = new Padding(4, 4, 4, 1); + private static readonly Padding _layoutBorderLeft = new Padding(5, 4, 3, 1); + private static readonly Padding _layoutBorderRight = new Padding(4, 5, 4, 0); + private static readonly Padding _layoutBorderBottom = new Padding(4, 2, 4, 3); + private static readonly Padding _drawBorder = new Padding(1, 0, 1, 0); #endregion #region Events /// /// Occurs when the drag rectangle for the button is required. /// - public event EventHandler ButtonDragRectangle; + public event EventHandler? ButtonDragRectangle; /// /// Occurs when the drag button offset changes. /// - public event EventHandler ButtonDragOffset; + public event EventHandler? ButtonDragOffset; #endregion #region Instance Fields @@ -103,8 +103,8 @@ public ViewDrawNavRibbonTab([DisallowNull] KryptonNavigator navigator, KeyController = _buttonController; // Create a decorator to interface with the tooltip manager - ToolTipController? toolTipController = new(Navigator.ToolTipManager, this, _buttonController); - ToolTipController hoverController = new(Navigator.HoverManager, this, toolTipController); + var toolTipController = new ToolTipController(Navigator.ToolTipManager, this, _buttonController); + var hoverController = new ToolTipController(Navigator.HoverManager, this, toolTipController); // Assign controller for handing mouse input MouseController = hoverController; @@ -412,7 +412,7 @@ protected virtual void OnRightClick(object sender, MouseEventArgs e) } // Generate event so user can decide what, if any, context menu to show - ShowContextMenuArgs scma = new(Page, Navigator.Pages.IndexOf(Page)); + var scma = new ShowContextMenuArgs(Page, Navigator.Pages.IndexOf(Page)); Navigator.OnShowContextMenu(scma); // Do we need to show a context menu diff --git a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutBar.cs b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutBar.cs index a457defaf..8cbbe3819 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutBar.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutBar.cs @@ -40,7 +40,7 @@ public LineDetails(int inlineLength, #region Instance Fields - private IPaletteMetric _paletteMetric; + private IPaletteMetric? _paletteMetric; private PaletteMetricInt _metricGap; private List _lineDetails; private Size[] _childSizes; @@ -51,11 +51,11 @@ public LineDetails(int inlineLength, #region Identity /// - /// Initialize a new instance of the ViewLayoutBar class. + /// Initialise a new instance of the ViewLayoutBar class. /// /// Method used to calculate item size. /// Method used to align items within lines. - /// Multline showing of items. + /// Multiline showing of items. /// Maximum allowed item size. /// Minimum allowed item size. /// Minimum height of the bar. @@ -77,13 +77,13 @@ public ViewLayoutBar(BarItemSizing itemSizing, } /// - /// Initialize a new instance of the ViewLayoutBar class. + /// Initialise a new instance of the ViewLayoutBar class. /// /// Palette source for metric values. /// Metric for gap between each child item. /// Method used to calculate item size. /// Method used to align items within lines. - /// Multline showing of items. + /// Multiline showing of items. /// Maximum allowed item size. /// Minimum allowed item size. /// Minimum height of the bar. @@ -106,13 +106,13 @@ public ViewLayoutBar(IPaletteMetric paletteMetric, } /// - /// Initialize a new instance of the ViewLayoutBar class. + /// Initialise a new instance of the ViewLayoutBar class. /// /// Palette source for metric values. /// Metric for gap between each child item. /// Method used to calculate item size. /// Method used to align items within lines. - /// Multline showing of items. + /// Multiline showing of items. /// Maximum allowed item size. /// Minimum allowed item size. /// Minimum height of the bar. @@ -152,7 +152,7 @@ public ViewLayoutBar(IPaletteMetric paletteMetric, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutBar:" + Id; + $"ViewLayoutBar:{Id}"; #endregion @@ -275,8 +275,8 @@ public RelativePositionAlign ItemAlignment /// /// Updates the metrics source and metric to use. /// - /// Source for aquiring metrics. - public void SetMetrics(IPaletteMetric paletteMetric) + /// Source for acquiring metrics. + public void SetMetrics(IPaletteMetric? paletteMetric) { _paletteMetric = paletteMetric; } @@ -307,7 +307,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) _maximumItem = Size.Empty; // Keep track of the total preferred size - Size preferredSize = Size.Empty; + var preferredSize = Size.Empty; // Nothing to calculate if there are no children if (Count > 0) @@ -347,7 +347,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) // Ask child for it's own preferred size _childSizes[i] = child.GetPreferredSize(context); - // Enfore the minimum and maximum sizes + // Enforce the minimum and maximum sizes if (ItemVertical) { _childSizes[i].Width = Math.Max(Math.Min(_childSizes[i].Width, ItemMaximumSize.Height), ItemMinimumSize.Height); @@ -510,7 +510,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) { changed = false; - // Are there any items avaiable for reducing? + // Are there any items available for reducing? if (visibleItems > 0) { // How much do we need to shrink each item by? @@ -563,7 +563,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) { changed = false; - // Are there any items avaiable for expanding? + // Are there any items available for expanding? if (visibleItems > 0) { // How much do we need to expand each item by? @@ -671,7 +671,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) { changed = false; - // Are there any items avaiable for reducing? + // Are there any items available for reducing? if (visibleItems > 0) { // How much do we need to shrink each item by? @@ -724,7 +724,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) { changed = false; - // Are there any items avaiable for reducing? + // Are there any items available for reducing? if (visibleItems > 0) { // How much do we need to expand each item by? @@ -800,7 +800,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) } } - // Enfore the minimum height of the bar + // Enforce the minimum height of the bar if (BarVertical) { preferredSize.Width = Math.Max(preferredSize.Width, BarMinimumHeight); diff --git a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutBarForTabs.cs b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutBarForTabs.cs index 169a1a6c3..b939c13b4 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutBarForTabs.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutBarForTabs.cs @@ -82,7 +82,7 @@ public ViewLayoutBarForTabs(IPaletteMetric paletteMetric, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutBarForTabs:" + Id; + $"ViewLayoutBarForTabs:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutDockerOverlap.cs b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutDockerOverlap.cs index 4d1207b9e..39fb02eaf 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutDockerOverlap.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutDockerOverlap.cs @@ -50,7 +50,7 @@ public ViewLayoutDockerOverlap([DisallowNull] ViewDrawCanvas drawCanvas, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutDockerOverlap:" + Id; + $"ViewLayoutDockerOverlap:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutInsetOverlap.cs b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutInsetOverlap.cs index 00f653987..5c7a06eaa 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutInsetOverlap.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutInsetOverlap.cs @@ -43,7 +43,7 @@ public ViewLayoutInsetOverlap([DisallowNull] ViewDrawCanvas drawCanvas) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutInsetForRounding:" + Id; + $"ViewLayoutInsetForRounding:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutOutlookFull.cs b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutOutlookFull.cs index 1b7613fce..e7eedd7c6 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutOutlookFull.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutOutlookFull.cs @@ -59,7 +59,7 @@ public ViewLayoutOutlookFull([DisallowNull] ViewBuilderOutlookBase viewBuilder, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutOutlookFull:" + Id; + $"ViewLayoutOutlookFull:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutOutlookMini.cs b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutOutlookMini.cs index 09a3313d2..0a3c5a788 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutOutlookMini.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutOutlookMini.cs @@ -34,7 +34,7 @@ public ViewLayoutOutlookMini([DisallowNull] ViewBuilderOutlookBase viewBuilder) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutOutlookMini:" + Id; + $"ViewLayoutOutlookMini:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPageHide.cs b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPageHide.cs index 096d5ad28..345618674 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPageHide.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPageHide.cs @@ -45,7 +45,7 @@ public ViewLayoutPageHide([DisallowNull] KryptonNavigator navigator) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutPageHide:" + Id; + $"ViewLayoutPageHide:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPageShow.cs b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPageShow.cs index e9edf6e0f..af878aaa4 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPageShow.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPageShow.cs @@ -41,7 +41,7 @@ public ViewLayoutPageShow([DisallowNull] KryptonNavigator navigator) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutPageShow:" + Id; + $"ViewLayoutPageShow:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPopupPage.cs b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPopupPage.cs index d19f3fe29..f5b1c7126 100644 --- a/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPopupPage.cs +++ b/Source/Krypton Components/Krypton.Navigator/View Layout/ViewLayoutPopupPage.cs @@ -44,7 +44,7 @@ public ViewLayoutPopupPage([DisallowNull] KryptonNavigator navigator, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutPopupPage:" + Id; + $"ViewLayoutPopupPage:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/AppButtonController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/AppButtonController.cs index c6f7f23ff..82d85fba7 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/AppButtonController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/AppButtonController.cs @@ -36,17 +36,17 @@ internal class AppButtonController : GlobalId, /// /// Occurs when the button is pressed. /// - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the button is released. /// - public event EventHandler MouseReleased; + public event EventHandler? MouseReleased; /// /// Occurs when a change in button state requires a repaint. /// - public event NeedPaintHandler NeedPaint; + public event NeedPaintHandler? NeedPaint; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/AppTabController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/AppTabController.cs index ee2eefc58..741f99e6e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/AppTabController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/AppTabController.cs @@ -36,17 +36,17 @@ internal class AppTabController : GlobalId, /// /// Occurs when the button is pressed. /// - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the button is released. /// - public event EventHandler MouseReleased; + public event EventHandler? MouseReleased; /// /// Occurs when a change in button state requires a repaint. /// - public event NeedPaintHandler NeedPaint; + public event NeedPaintHandler? NeedPaint; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/CollapsedGroupController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/CollapsedGroupController.cs index 6891989fd..58c555fcf 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/CollapsedGroupController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/CollapsedGroupController.cs @@ -34,7 +34,7 @@ internal class CollapsedGroupController : GlobalId, /// /// Occurs when the mouse is used to left click the target. /// - public event MouseEventHandler Click; + public event MouseEventHandler? Click; #endregion #region Identity @@ -52,9 +52,9 @@ public CollapsedGroupController([DisallowNull] KryptonRibbon ribbon, Debug.Assert(target != null); Debug.Assert(needPaint != null); - _ribbon = ribbon!; - _target = target!; - _needPaint = needPaint!; + _ribbon = ribbon; + _target = target; + _needPaint = needPaint; } #endregion @@ -221,7 +221,7 @@ public void KeyTipSelect(KryptonRibbon ribbon) { // Grab the list of key tips from the popup group _ribbon.KeyTipMode = KeyTipMode.PopupGroup; - KeyTipInfoList keyTipList = new(); + var keyTipList = new KeyTipInfoList(); visualPopupGroup.ViewGroup.GetGroupKeyTips(keyTipList); // Update key tips with those appropriate for this tab diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/ContextClickController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/ContextClickController.cs index 6dca3d473..78450e8b1 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/ContextClickController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/ContextClickController.cs @@ -28,7 +28,7 @@ internal class ContextClickController : GlobalId, /// /// Occurs when the mouse is used to right click the target. /// - public event MouseEventHandler ContextClick; + public event MouseEventHandler? ContextClick; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/GalleryButtonController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/GalleryButtonController.cs index d5bbc2cc5..58f0dd4b6 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/GalleryButtonController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/GalleryButtonController.cs @@ -32,7 +32,7 @@ internal class GalleryButtonController : GlobalId, /// /// Occurs when the mouse is used to left click the target. /// - public event MouseEventHandler Click; + public event MouseEventHandler? Click; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/GalleryItemController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/GalleryItemController.cs index 5c11485eb..47a1abefe 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/GalleryItemController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/GalleryItemController.cs @@ -33,7 +33,7 @@ internal class GalleryItemController : GlobalId, /// /// Occurs when the mouse is used to left click the target. /// - public event MouseEventHandler Click; + public event MouseEventHandler? Click; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/GroupButtonController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/GroupButtonController.cs index fc000ebed..84e37dbe0 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/GroupButtonController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/GroupButtonController.cs @@ -39,17 +39,17 @@ internal class GroupButtonController : GlobalId, /// /// Occurs when a click portion is clicked. /// - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the user right clicks the view. /// - public event MouseEventHandler ContextClick; + public event MouseEventHandler? ContextClick; /// /// Occurs when a drop down portion is clicked. /// - public event EventHandler DropDown; + public event EventHandler? DropDown; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/GroupCheckBoxController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/GroupCheckBoxController.cs index 42c45b9eb..22d790e2e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/GroupCheckBoxController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/GroupCheckBoxController.cs @@ -37,12 +37,12 @@ internal class GroupCheckBoxController : GlobalId, /// /// Occurs when a click portion is clicked. /// - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the user right clicks the view. /// - public event MouseEventHandler ContextClick; + public event MouseEventHandler? ContextClick; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/GroupRadioButtonController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/GroupRadioButtonController.cs index e4340b084..8917cbd3f 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/GroupRadioButtonController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/GroupRadioButtonController.cs @@ -37,12 +37,12 @@ internal class GroupRadioButtonController : GlobalId, /// /// Occurs when a click portion is clicked. /// - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the user right clicks the view. /// - public event MouseEventHandler ContextClick; + public event MouseEventHandler? ContextClick; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/LeftDownButtonController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/LeftDownButtonController.cs index d3808c52e..70b52e665 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/LeftDownButtonController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/LeftDownButtonController.cs @@ -33,7 +33,7 @@ internal class LeftDownButtonController : GlobalId, /// /// Occurs when the button is pressed. /// - public event MouseEventHandler Click; + public event MouseEventHandler? Click; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/LeftUpButtonController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/LeftUpButtonController.cs index 45d8373f8..62ccc71bd 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/LeftUpButtonController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/LeftUpButtonController.cs @@ -31,7 +31,7 @@ internal class LeftUpButtonController : GlobalId, /// /// Occurs when the mouse is used to left click the target. /// - public event MouseEventHandler Click; + public event MouseEventHandler? Click; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/QATExtraButtonController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/QATExtraButtonController.cs index 5aa20350a..cd29eb0e8 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/QATExtraButtonController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/QATExtraButtonController.cs @@ -148,7 +148,7 @@ public void KeyTipSelect(KryptonRibbon ribbon) { // Grab the list of key tips from the popup group Ribbon.KeyTipMode = KeyTipMode.PopupQATOverflow; - KeyTipInfoList keyTipList = new(); + var keyTipList = new KeyTipInfoList(); keyTipList.AddRange(popupOverflow.ViewQATContents.GetQATKeyTips(null)); // Update key tips with those appropriate for this tab diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/RecentDocController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/RecentDocController.cs index 9ff42adb7..424452feb 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/RecentDocController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/RecentDocController.cs @@ -349,7 +349,7 @@ private void PressMenuItem() if (_menuItem.CanCloseMenu) { // Ask the original context menu definition, if we can close - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); _menuItem.Closing(cea); if (!cea.Cancel) diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/RepeatButtonController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/RepeatButtonController.cs index c20f7afdf..fbaa1b00c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/RepeatButtonController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/RepeatButtonController.cs @@ -33,7 +33,7 @@ internal class RepeatButtonController : GlobalId, /// /// Occurs when the mouse is used to left click the target. /// - public event MouseEventHandler Click; + public event MouseEventHandler? Click; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/RibbonTabController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/RibbonTabController.cs index 549dbf830..9368589a1 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/RibbonTabController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/RibbonTabController.cs @@ -35,12 +35,12 @@ internal class RibbonTabController : GlobalId, /// /// Occurs when the mouse is used to left click the target. /// - public event MouseEventHandler Click; + public event MouseEventHandler? Click; /// /// Occurs when the mouse is used to right click the target. /// - public event MouseEventHandler ContextClick; + public event MouseEventHandler? ContextClick; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/RibbonTabsController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/RibbonTabsController.cs index 4a51c967b..f5143849c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/RibbonTabsController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/RibbonTabsController.cs @@ -29,7 +29,7 @@ internal class RibbonTabsController : GlobalId, /// /// Occurs when the mouse is used to right click the target. /// - public event MouseEventHandler ContextClick; + public event MouseEventHandler? ContextClick; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controller/ViewHighlightController.cs b/Source/Krypton Components/Krypton.Ribbon/Controller/ViewHighlightController.cs index ae8b86716..ef8b52057 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controller/ViewHighlightController.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controller/ViewHighlightController.cs @@ -30,12 +30,12 @@ internal class ViewHightlightController : GlobalId, /// /// Occurs when the user left clicks the view. /// - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the user right clicks the view. /// - public event MouseEventHandler ContextClick; + public event MouseEventHandler? ContextClick; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonGallery.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonGallery.cs index 1620db4c9..f31a0fe25 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonGallery.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonGallery.cs @@ -48,8 +48,8 @@ public class KryptonGallery : VisualSimpleBase private int _cacheTrackingIndex; private int _eventTrackingIndex; private readonly Timer _trackingEventTimer; - private KryptonContextMenu _dropMenu; - private EventHandler _finishDelegate; + private KryptonContextMenu? _dropMenu; + private EventHandler? _finishDelegate; #endregion #region Events @@ -58,28 +58,28 @@ public class KryptonGallery : VisualSimpleBase /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the ImageList property changes.")] - public event EventHandler ImageListChanged; + public event EventHandler? ImageListChanged; /// /// Occurs when the value of the SelectedIndex property changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the SelectedIndex property changes.")] - public event EventHandler SelectedIndexChanged; + public event EventHandler? SelectedIndexChanged; /// /// Occurs when the user is tracking over a color. /// [Category(@"Action")] [Description(@"Occurs when user is tracking over an image.")] - public event EventHandler TrackingImage; + public event EventHandler? TrackingImage; /// /// Occurs when the user invokes the drop down menu. /// [Category(@"Action")] [Description(@"Occurs when user invokes the drop down menu.")] - public event EventHandler GalleryDropMenu; + public event EventHandler? GalleryDropMenu; #endregion #region Identity @@ -679,7 +679,7 @@ protected override bool EvalTransparentPaint() => /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(240, 30); + protected override Size DefaultSize => new Size(240, 30); /// /// Process Windows-based messages. @@ -778,7 +778,7 @@ internal void OnDropButton() internal void ShownGalleryDropDown(Rectangle screenRect, KryptonContextMenuPositionH hPosition, KryptonContextMenuPositionV vPosition, - EventHandler finishDelegate, + EventHandler? finishDelegate, int actualLineItems) { // First time around create the context menu, otherwise just clear it down @@ -790,7 +790,7 @@ internal void ShownGalleryDropDown(Rectangle screenRect, // If there are no ranges defined, just add a single entry showing all enties if (DropButtonRanges.Count == 0) { - KryptonContextMenuImageSelect imageSelect = new() + var imageSelect = new KryptonContextMenuImageSelect { ImageList = ImageList, ImageIndexStart = 0, @@ -813,7 +813,7 @@ internal void ShownGalleryDropDown(Rectangle screenRect, // Only add a heading if the heading text is not empty if (!string.IsNullOrEmpty(range.Heading)) { - KryptonContextMenuHeading heading = new() + var heading = new KryptonContextMenuHeading { Text = range.Heading }; @@ -821,7 +821,7 @@ internal void ShownGalleryDropDown(Rectangle screenRect, } // Add the image select for the range - KryptonContextMenuImageSelect imageSelect = new() + var imageSelect = new KryptonContextMenuImageSelect { ImageList = ImageList, ImageIndexStart = Math.Max(0, range.ImageIndexStart), @@ -834,7 +834,7 @@ internal void ShownGalleryDropDown(Rectangle screenRect, } // Give event handler a change to modify the menu - GalleryDropMenuEventArgs args = new(_dropMenu); + var args = new GalleryDropMenuEventArgs(_dropMenu); OnGalleryDropMenu(args); if (!args.Cancel && CommonHelper.ValidKryptonContextMenu(args.KryptonContextMenu)) @@ -873,15 +873,15 @@ private void OnDropMenuClosed(object sender, ToolStripDropDownClosedEventArgs e) TrackingIndex = -1; // Unhook from events - _dropMenu.Closed -= OnDropMenuClosed; + _dropMenu.Closed -= OnDropMenuClosed!; // Unhook from the image select events foreach (KryptonContextMenuItemBase item in _dropMenu.Items) { if (item is KryptonContextMenuImageSelect itemSelect) { - itemSelect.SelectedIndexChanged -= OnDropImageSelect; - itemSelect.TrackingImage -= OnDropImageTracking; + itemSelect.SelectedIndexChanged -= OnDropImageSelect!; + itemSelect.TrackingImage -= OnDropImageTracking!; } } diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonGalleryRange.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonGalleryRange.cs index 2750c598e..c9b48da1d 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonGalleryRange.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonGalleryRange.cs @@ -36,7 +36,7 @@ public class KryptonGalleryRange : Component /// [Category(@"Gallery")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbon.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbon.cs index 278e3df58..4cdddd79d 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbon.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbon.cs @@ -64,7 +64,7 @@ public RibbonButtonSpecAnyCollection(KryptonRibbon owner) private bool _altDown; private int _altUpCount; private int _keyboardAltUpCount; - private ViewBase _focusView; + private ViewBase? _focusView; private KeyTipControl _keyTipControlE; private KeyTipControl? _keyTipControlD; private KeyTipMode _keyTipMode; @@ -152,14 +152,14 @@ public RibbonButtonSpecAnyCollection(KryptonRibbon owner) /// [Category(@"Ribbon")] [Description(@"Occurs when the ribbon context menu is about to be shown.")] - public event EventHandler ShowRibbonContextMenu; + public event EventHandler? ShowRibbonContextMenu; /// /// Occurs when the quick access toolbar customize menu is about to be shown. /// [Category(@"Ribbon")] [Description(@"Occurs when the quick access toolbar customize menu is about to be shown.")] - public event EventHandler ShowQATCustomizeMenu; + public event EventHandler? ShowQATCustomizeMenu; /// /// Occurs when the MinimizedMode property has changed value. @@ -834,10 +834,7 @@ public bool MinimizedMode } else { - if (_minimizedPopup != null) - { - using ScreenObscurer? obscurer = new(_minimizedPopup, DesignMode); - } + using var obscurer = new ScreenObscurer(_minimizedPopup!, DesignMode); // Remove any showing popup for the minimized area KillMinimizedPopup(); @@ -909,7 +906,7 @@ public QATLocation QATLocation { _qatLocation = value; - using ScreenObscurer? obscurer = new(this, DesignMode); + using var obscurer = new ScreenObscurer(this, DesignMode); // Only show the minimize bar if in minimized mode // and not showing the QAT below the ribbon _minimizeBar.Visible = RealMinimizedMode && (QATLocation != QATLocation.Below); @@ -1147,7 +1144,7 @@ public bool PreFilterMessage(ref Message m) if (ownerForm is { Visible: true, Enabled: true, ContainsFocus: true }) { // Extract the x and y mouse position from message - Point pt = new() + var pt = new Point { X = PI.LOWORD((int)m.LParam), Y = PI.HIWORD((int)m.LParam) @@ -1318,7 +1315,7 @@ protected override void WndProc(ref Message m) if (m.Msg == PI.WM_.NCHITTEST) { // Extract the screen point for the hit test - Point screenPoint = new((int)m.LParam.ToInt64()); + var screenPoint = new Point((int)m.LParam.ToInt64()); // Convert to a client point Point clientPoint = PointToClient(screenPoint); @@ -1493,7 +1490,7 @@ protected override bool ProcessCmdKey(ref Message msg, Keys keyData) // Check if a shortcut is triggered on the application button context menu if (RibbonAppButton.AppButtonMenuItems.ProcessShortcut(keyData)) { - Actionoccurred(); + ActionOccurred(); return true; } @@ -1715,7 +1712,7 @@ protected override void PaintBackground(Graphics g, Brush backBrush, Rectangle b if (_compositionArea.Visible) { // Copy the current clipping - Region? oldClip = g.Clip.Clone(); + Region oldClip = g.Clip.Clone(); // Exclude the composition area from the background painting g.SetClip(new Rectangle(_compositionArea.ClientLocation, new Size(_compositionArea.ClientWidth, _compositionArea.CompHeight)), CombineMode.Exclude); @@ -2077,20 +2074,20 @@ internal ButtonStyle QATButtonStyle internal void DisplayQATCustomizeMenu(Rectangle screenRectangle, ViewLayoutRibbonQATContents contents, - EventHandler finishDelegate) + EventHandler? finishDelegate) { // Ensure cached krypton context menu is ready for use ResetCachedKryptonContextMenu(); // Add heading at top of the context menu - KryptonContextMenuHeading? heading = new() + var heading = new KryptonContextMenuHeading { Text = RibbonStrings.CustomizeQuickAccessToolbar }; _kcm.Items.Add(heading); // Create a container for a set of individual menu items - KryptonContextMenuItems? menuItems = new(); + var menuItems = new KryptonContextMenuItems(); _kcm.Items.Add(menuItems); // Is user allowed to change the QAT entries? @@ -2099,7 +2096,7 @@ internal void DisplayQATCustomizeMenu(Rectangle screenRectangle, // Add an entry for each quick access toolbar button foreach (IQuickAccessToolbarButton qatButton in QATButtons) { - KryptonContextMenuItem? menuItem = new() + var menuItem = new KryptonContextMenuItem { Text = qatButton.GetText(), Checked = qatButton.GetVisible() @@ -2113,7 +2110,7 @@ internal void DisplayQATCustomizeMenu(Rectangle screenRectangle, // Do we need to allow the QAT location to be inverted? if (QATLocation != QATLocation.Hidden) { - KryptonContextMenuItem? showQAT = new() + var showQAT = new KryptonContextMenuItem { Text = QATLocation == QATLocation.Above ? RibbonStrings.ShowBelowRibbon @@ -2133,7 +2130,7 @@ internal void DisplayQATCustomizeMenu(Rectangle screenRectangle, if (AllowMinimizedChange) { // Allow the ribbon to be minimized - KryptonContextMenuItem? minimize = new() + var minimize = new KryptonContextMenuItem { Text = RibbonStrings.Minimize, Checked = MinimizedMode @@ -2150,7 +2147,7 @@ internal void DisplayQATCustomizeMenu(Rectangle screenRectangle, } // Give developers a change to modify the customize menu or even cancel it - ContextMenuArgs? args = new(_kcm); + var args = new ContextMenuArgs(_kcm); OnShowQATCustomizeMenu(args); // If not cancelled, then show it @@ -2172,10 +2169,10 @@ internal void DisplayQATCustomizeMenu(Rectangle screenRectangle, internal void DisplayQATOverflowMenu(Rectangle screenRectangle, ViewLayoutRibbonQATContents contents, - EventHandler finishDelegate) + EventHandler? finishDelegate) { // Create the popup window for the group - VisualPopupQATOverflow? popupGroup = new(this, contents, Renderer); + var popupGroup = new VisualPopupQATOverflow(this, contents, Renderer); // Ask the popup to show itself relative to ourself popupGroup.ShowCalculatingSize(screenRectangle, finishDelegate); @@ -2187,13 +2184,13 @@ internal void DisplayRibbonContextMenu(MouseEventArgs e) ResetCachedKryptonContextMenu(); // Create a container for a set of individual menu items - KryptonContextMenuItems? menuItems = new(); + var menuItems = new KryptonContextMenuItems(); _kcm.Items.Add(menuItems); // Do we need to allow the QAT location to be inverted? if (QATLocation != QATLocation.Hidden) { - KryptonContextMenuItem? showQAT = new() + var showQAT = new KryptonContextMenuItem { Text = QATLocation == QATLocation.Above ? RibbonStrings.ShowQATBelowRibbon @@ -2208,7 +2205,7 @@ internal void DisplayRibbonContextMenu(MouseEventArgs e) if (AllowMinimizedChange) { // Allow the ribbon to be minimized - KryptonContextMenuItem? minimize = new() + var minimize = new KryptonContextMenuItem { Text = RibbonStrings.Minimize, Checked = MinimizedMode @@ -2221,7 +2218,7 @@ internal void DisplayRibbonContextMenu(MouseEventArgs e) } // Give developers a change to modify the context menu or even cancel it - ContextMenuArgs? args = new(_kcm); + var args = new ContextMenuArgs(_kcm); OnShowRibbonContextMenu(args); // If not cancelled, then show it @@ -2418,7 +2415,7 @@ internal void RestorePreviousFocus() } } - internal void Actionoccurred() + internal void ActionOccurred() { // If showing the popup in minimized mode, then remove it gracefully if (_minimizedPopup != null) @@ -2492,7 +2489,7 @@ internal KeyTipInfoList GenerateKeyTipsAtTopLevel() // and created so that the generated contents are accurate Refresh(); - KeyTipInfoList? keyTipList = new(); + var keyTipList = new KeyTipInfoList(); // Add the application button/tab if (TabsArea.LayoutAppButton.Visible) @@ -2522,7 +2519,7 @@ internal KeyTipInfoList GenerateKeyTipsForSelectedTab() // and created so that the generated contents are accurate Refresh(); - KeyTipInfoList? keyTipList = new(); + var keyTipList = new KeyTipInfoList(); // There should be a selected page if (SelectedTab != null) @@ -2982,7 +2979,7 @@ private bool SelectNonRibbonControl(bool forward) do { // Find the next control in sequence - next = form.GetNextControl(next, forward); + next = form.GetNextControl(next!, forward); // If no more controls found, then finished if (next == null) @@ -3041,7 +3038,7 @@ private void OnRibbonContextsClearing(object sender, EventArgs e) // Unhook from all the context instances foreach (KryptonRibbonContext context in RibbonContexts) { - context.PropertyChanged -= OnContextPropertyChanged; + context.PropertyChanged -= OnContextPropertyChanged!; } } @@ -3055,7 +3052,7 @@ private void OnRibbonContextsCleared(object sender, EventArgs e) private void OnRibbonContextsInserted(object sender, TypedCollectionEventArgs e) { // Hook into property changes for the context - e.Item.PropertyChanged += OnContextPropertyChanged; + e.Item.PropertyChanged += OnContextPropertyChanged!; CaptionArea.UpdateVisible(); PerformNeedPaint(true); } @@ -3063,7 +3060,7 @@ private void OnRibbonContextsInserted(object sender, TypedCollectionEventArgs e) { // Remove context instance hook - e.Item.PropertyChanged -= OnContextPropertyChanged; + e.Item.PropertyChanged -= OnContextPropertyChanged!; CaptionArea.UpdateVisible(); PerformNeedPaint(true); } @@ -3080,7 +3077,7 @@ private void OnRibbonTabsClearing(object sender, EventArgs e) foreach (KryptonRibbonTab tab in RibbonTabs) { // Unhook from tab property change event - tab.PropertyChanged -= OnTabPropertyChanged; + tab.PropertyChanged -= OnTabPropertyChanged!; // Remove back reference tab.Ribbon = null; @@ -3105,7 +3102,7 @@ private void OnRibbonTabsInserted(object sender, TypedCollectionEventArgs e) { // Unhook from tab property change event - e.Item.PropertyChanged -= OnTabPropertyChanged; + e.Item.PropertyChanged -= OnTabPropertyChanged!; // Remove the backreference e.Item.Ribbon = null; @@ -3156,7 +3153,7 @@ private void OnRibbonQATButtonsClearing(object sender, EventArgs e) // Stop tracking changes in button properties foreach (IQuickAccessToolbarButton qatButton in QATButtons) { - qatButton.PropertyChanged -= OnQATButtonPropertyChanged; + qatButton.PropertyChanged -= OnQATButtonPropertyChanged!; } } @@ -3179,7 +3176,7 @@ private void OnRibbonQATButtonsInserted(object sender, TypedCollectionEventArgs< { qatButton.SetRibbon(this); // Track changes in button properties - qatButton.PropertyChanged += OnQATButtonPropertyChanged; + qatButton.PropertyChanged += OnQATButtonPropertyChanged!; } // Display not updated until a layout occurs @@ -3195,7 +3192,7 @@ private void OnRibbonQATButtonsRemoved(object sender, TypedCollectionEventArgs= 0) && (index < QATButtons.Count)) { // Get access to the indexed entry - IQuickAccessToolbarButton? qatButton = (IQuickAccessToolbarButton)QATButtons[index]; + IQuickAccessToolbarButton qatButton = (IQuickAccessToolbarButton)QATButtons[index]; // Invert the visible state qatButton.SetVisible(!qatButton.GetVisible()); diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonContext.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonContext.cs index f59f71464..01bc6ad17 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonContext.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonContext.cs @@ -35,7 +35,7 @@ public class KryptonRibbonContext : Component /// /// Occurs after the value of a property has changed. /// - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonGroup.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonGroup.cs index af043a78d..2d9c7219b 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonGroup.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonGroup.cs @@ -51,49 +51,49 @@ public class KryptonRibbonGroup : Component /// [Category(@"Ribbon")] [Description(@"Occurs when the dialog box launcher button is clicked.")] - public event EventHandler DialogBoxLauncherClick; + public event EventHandler? DialogBoxLauncherClick; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time wants to add a triple. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddTriple; + public event EventHandler? DesignTimeAddTriple; /// /// Occurs when the design time wants to add a lines. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddLines; + public event EventHandler? DesignTimeAddLines; /// /// Occurs when the design time wants to add a separator. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddSeparator; + public event EventHandler? DesignTimeAddSeparator; /// /// Occurs when the design time wants to add a gallery. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddGallery; + public event EventHandler? DesignTimeAddGallery; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity @@ -490,7 +490,7 @@ protected internal virtual void OnDialogBoxLauncherClick(EventArgs e) { // Perform processing that is common to any action that would dismiss // any popup controls such as the showing minimized group popup - Ribbon?.Actionoccurred(); + Ribbon?.ActionOccurred(); DialogBoxLauncherClick?.Invoke(this, e); } diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonQATButton.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonQATButton.cs index fc268f916..fd2dd1544 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonQATButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonQATButton.cs @@ -44,12 +44,12 @@ public class KryptonRibbonQATButton : Component, /// /// Occurs when the quick access toolbar button has been clicked. /// - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs after the value of a property has changed. /// - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity @@ -513,7 +513,7 @@ protected virtual void OnClick(EventArgs e) { // Perform processing that is common to any action that would dismiss // any popup controls such as the showing minimized group popup - Ribbon?.Actionoccurred(); + Ribbon?.ActionOccurred(); Click?.Invoke(this, e); diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonRecentDoc.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonRecentDoc.cs index a6ef71c65..0fcba4a9f 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonRecentDoc.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonRecentDoc.cs @@ -38,7 +38,7 @@ public class KryptonRibbonRecentDoc : Component /// [Category(@"Action")] [Description(@"Occurs when the recent document item is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonTab.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonTab.cs index 5395a73ba..b5716e279 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonTab.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Ribbon/KryptonRibbonTab.cs @@ -39,21 +39,21 @@ public class KryptonRibbonTab : Component /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time wants to add a group. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddGroup; + public event EventHandler? DesignTimeAddGroup; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/KeyTipControl.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/KeyTipControl.cs index f38a27f59..cadf5b0b4 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/KeyTipControl.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/KeyTipControl.cs @@ -218,7 +218,7 @@ protected override void OnPaintBackground(PaintEventArgs pevent) /// An PaintEventArgs containing the event data. protected override void OnPaint(PaintEventArgs e) { - using (ViewLayoutContext layoutContext = new(this, _ribbon.Renderer)) + using (var layoutContext = new ViewLayoutContext(this, _ribbon.Renderer)) { foreach (ViewDrawRibbonKeyTip viewKeyTip in _viewList) { @@ -255,7 +255,7 @@ protected override void OnPaint(PaintEventArgs e) } } - using (RenderContext renderContext = new(this, e.Graphics, e.ClipRectangle, _ribbon.Renderer)) + using (var renderContext = new RenderContext(this, e.Graphics, e.ClipRectangle, _ribbon.Renderer)) { foreach (ViewDrawRibbonKeyTip viewKeyTip in _viewList) { diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupAppMenu.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupAppMenu.cs index 0d197fd51..d5984eca9 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupAppMenu.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupAppMenu.cs @@ -76,9 +76,9 @@ public VisualPopupAppMenu(KryptonRibbon ribbon, _viewColumns, palette, paletteMode, redirector, NeedPaintDelegate); - _provider.Closing += OnProviderClosing; - _provider.Close += OnProviderClose; - _provider.Dispose += OnProviderClose; + _provider.Closing += OnProviderClosing!; + _provider.Close += OnProviderClose!; + _provider.Dispose += OnProviderClose!; CreateAppButtonBottom(); CreateButtonSpecView(); @@ -89,8 +89,6 @@ public VisualPopupAppMenu(KryptonRibbon ribbon, CreateOutsideDocker(); CreateButtonManager(appButton); - ViewManager.Root = _drawOutsideDocker; - // With keyboard activate we select the first valid item if (keyboardActivated) { @@ -107,8 +105,8 @@ private void CreateButtonSpecView() private void CreateContextMenuView(RibbonAppButton appButton) { // Ask the top level collection to generate the child view elements - KryptonContextMenuCollection topCollection = new(); - KryptonContextMenuItems topItems = new() + var topCollection = new KryptonContextMenuCollection(); + var topItems = new KryptonContextMenuItems { ImageColumn = false }; @@ -126,7 +124,7 @@ private void CreateRecentDocumentsView() if (_ribbon.RibbonAppButton.AppButtonShowRecentDocs) { // Create a dummy vertical menu separator for separating recent documents from menu items - KryptonContextMenuSeparator dummySep1 = new() + var dummySep1 = new KryptonContextMenuSeparator { Horizontal = false }; @@ -134,11 +132,11 @@ private void CreateRecentDocumentsView() _viewColumns.Add(new ViewLayoutSeparator(0, _ribbon.RibbonAppButton.AppButtonMinRecentSize.Height)); // Use a layout that draws the background color of the recent docs area - ViewDrawRibbonAppMenuDocs recentDocsBack = new(_ribbon); + var recentDocsBack = new ViewDrawRibbonAppMenuDocs(_ribbon); _viewColumns.Add(recentDocsBack); // Stack the document entries vertically - ViewLayoutStack documentStack = new(false); + var documentStack = new ViewLayoutStack(false); recentDocsBack.Add(documentStack); // Use fixed width separator to enforce a minimum width to column @@ -148,7 +146,7 @@ private void CreateRecentDocumentsView() documentStack.Add(new ViewDrawRibbonRecentDocs(_ribbon)); // Followed by a horizontal separator - KryptonContextMenuSeparator dummySep2 = new(); + var dummySep2 = new KryptonContextMenuSeparator(); documentStack.Add(new ViewDrawMenuSeparator(dummySep2, _provider.ProviderStateCommon.Separator)); documentStack.Add(new ViewLayoutSeparator(2)); @@ -169,7 +167,8 @@ private void CreateRecentDocumentsView() private ViewDrawCanvas CreateInsideCanvas() { - ViewDrawCanvas mainBackground = new(_provider.ProviderStateCommon.ControlInner.Back, _provider.ProviderStateCommon.ControlInner.Border, VisualOrientation.Top) + var mainBackground = new ViewDrawCanvas(_provider.ProviderStateCommon.ControlInner.Back, + _provider.ProviderStateCommon.ControlInner.Border, VisualOrientation.Top) { _viewColumns }; @@ -221,6 +220,7 @@ private void CreateOutsideDocker() KeyController = new ContextMenuController((ViewContextMenuManager)ViewManager) }; _drawOutsideDocker.Add(_drawOutsideBacking, ViewDockStyle.Fill); + ViewManager.Root = _drawOutsideDocker; } private void CreateButtonManager(RibbonAppButton appButton) @@ -278,7 +278,7 @@ public override void Show(Rectangle screenRect) { // Find the preferred size of the context menu if it could be any size it likes Size preferredSize = CalculatePreferredSize(); - Rectangle preferredRect = new(screenRect.Location, preferredSize); + var preferredRect = new Rectangle(screenRect.Location, preferredSize); // Get the working area of the monitor that most of the screen rectangle is inside Rectangle workingArea = Screen.GetWorkingArea(preferredRect); @@ -449,7 +449,7 @@ protected override void OnLayout(LayoutEventArgs levent) base.OnLayout(levent); // Need a render context for accessing the renderer - using RenderContext context = new(this, null, ClientRectangle, Renderer); + using var context = new RenderContext(this, null, ClientRectangle, Renderer); // Grab a path that is the outside edge of the border Rectangle borderRect = ClientRectangle; GraphicsPath borderPath1 = Renderer.RenderStandardBorder.GetOutsideBorderPath(context, borderRect, _drawOutsideBorder, VisualOrientation.Top, PaletteState.Normal); @@ -486,7 +486,7 @@ private Size CalculatePreferredSize() try { // Find the preferred size which fits exactly the calculated contents size - using ViewLayoutContext context = new(this, Renderer); + using var context = new ViewLayoutContext(this, Renderer); return ViewManager.Root.GetPreferredSize(context); } finally @@ -503,9 +503,9 @@ private void SetPalette(PaletteBase? palette) // Unhook from current palette events if (_palette != null) { - _palette.PalettePaint -= OnPaletteNeedPaint; - _palette.BasePaletteChanged -= OnBaseChanged; - _palette.BaseRendererChanged -= OnBaseChanged; + _palette.PalettePaint -= OnPaletteNeedPaint!; + _palette.BasePaletteChanged -= OnBaseChanged!; + _palette.BaseRendererChanged -= OnBaseChanged!; } // Remember the new palette @@ -520,9 +520,9 @@ private void SetPalette(PaletteBase? palette) // Hook to new palette events if (_palette != null) { - _palette.PalettePaint += OnPaletteNeedPaint; - _palette.BasePaletteChanged += OnBaseChanged; - _palette.BaseRendererChanged += OnBaseChanged; + _palette.PalettePaint += OnPaletteNeedPaint!; + _palette.BasePaletteChanged += OnBaseChanged!; + _palette.BaseRendererChanged += OnBaseChanged!; } } } @@ -553,7 +553,7 @@ private void OnProviderClose(object sender, EventArgs e) { // Unhook from event source IContextMenuProvider provider = (IContextMenuProvider)sender; - _provider.Dispose -= OnProviderClose; + _provider.Dispose -= OnProviderClose!; // Kill this poup window Dispose(); diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupGroup.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupGroup.cs index ea563e2e1..fc2cf4825 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupGroup.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupGroup.cs @@ -219,7 +219,7 @@ public void ShowCalculatingSize(ViewDrawRibbonGroup parentGroup, { // Find the size the group requests to be Size popupSize; - using (ViewLayoutContext context = new(this, Renderer)) + using (var context = new ViewLayoutContext(this, Renderer)) { popupSize = ViewGroup.GetPreferredSize(context); } @@ -262,7 +262,7 @@ private Rectangle CalculateBelowPopupRect(Rectangle parentScreenRect, Size popup workingArea.Width -= BOTTOMRIGHT_GAP; workingArea.Height -= BOTTOMRIGHT_GAP; - Point popupLocation = new(parentScreenRect.X, parentScreenRect.Bottom); + var popupLocation = new Point(parentScreenRect.X, parentScreenRect.Bottom); // Is there enough room below the parent for the entire popup height? if ((parentScreenRect.Bottom + popupSize.Height) <= workingArea.Bottom) diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupMinimized.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupMinimized.cs index 92f9d8415..612420288 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupMinimized.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupMinimized.cs @@ -270,7 +270,7 @@ private Rectangle CalculatePopupRect(ViewLayoutRibbonTabsArea tabsArea, Size popupSize; // Get the preferred size of the groups area, we only really want the height - using (ViewLayoutContext context = new(_ribbon, Renderer)) + using (var context = new ViewLayoutContext(_ribbon, Renderer)) { popupSize = drawMinimizedPanel.GetPreferredSize(context); } @@ -283,7 +283,8 @@ private Rectangle CalculatePopupRect(ViewLayoutRibbonTabsArea tabsArea, Rectangle parentTabsRect = _ribbon.RectangleToScreen(tabsArea.ClientRectangle); // Default popup is placed below the ribbon - Rectangle popupRect = new(parentRibbonRect.X, parentTabsRect.Bottom - 1, popupSize.Width, popupSize.Height); + var popupRect = new Rectangle(parentRibbonRect.X, parentTabsRect.Bottom - 1, popupSize.Width, + popupSize.Height); // Get the view element for the currently selected tab ViewDrawRibbonTab viewTab = tabsArea.LayoutTabs.GetViewForRibbonTab(_ribbon.SelectedTab); diff --git a/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupQATOverflow.cs b/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupQATOverflow.cs index 1c93b96af..63b3c91ca 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupQATOverflow.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Controls Visuals/VisualPopupQATOverflow.cs @@ -31,7 +31,7 @@ internal class VisualPopupQATOverflow : VisualPopup /// Drawing renderer. public VisualPopupQATOverflow([DisallowNull] KryptonRibbon ribbon, ViewLayoutRibbonQATContents contents, - IRenderer renderer) + IRenderer? renderer) : base(renderer, true) { Debug.Assert(ribbon != null); @@ -172,12 +172,12 @@ public void SetPreviousFocusItem() /// Screen rectangle of the parent. /// Delegate fired when popup dismissed. public void ShowCalculatingSize(Rectangle parentScreenRect, - EventHandler finishDelegate) + EventHandler? finishDelegate) { Size popupSize; // Find the size the quick access toolbar requests to be - using (ViewLayoutContext context = new(this, Renderer)) + using (var context = new ViewLayoutContext(this, Renderer)) { popupSize = _viewQAT.GetPreferredSize(context); } diff --git a/Source/Krypton Components/Krypton.Ribbon/Designers/Action Lists/KryptonGalleryActionList.cs b/Source/Krypton Components/Krypton.Ribbon/Designers/Action Lists/KryptonGalleryActionList.cs index e42a87216..f3b7d651e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Designers/Action Lists/KryptonGalleryActionList.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Designers/Action Lists/KryptonGalleryActionList.cs @@ -17,7 +17,7 @@ namespace Krypton.Ribbon internal class KryptonGalleryActionList : DesignerActionList { #region Instance Fields - private readonly KryptonGallery _gallery; + private readonly KryptonGallery? _gallery; private readonly IComponentChangeService _service; #endregion @@ -64,7 +64,7 @@ public PaletteMode PaletteMode public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + var actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_gallery != null) diff --git a/Source/Krypton Components/Krypton.Ribbon/Designers/Action Lists/KryptonRibbonActionList.cs b/Source/Krypton Components/Krypton.Ribbon/Designers/Action Lists/KryptonRibbonActionList.cs index 5f41cb245..5d1638e76 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Designers/Action Lists/KryptonRibbonActionList.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Designers/Action Lists/KryptonRibbonActionList.cs @@ -17,7 +17,7 @@ namespace Krypton.Ribbon internal class KryptonRibbonActionList : DesignerActionList { #region Instance Fields - private readonly KryptonRibbon _ribbon; + private readonly KryptonRibbon? _ribbon; private readonly IComponentChangeService _service; #endregion @@ -82,7 +82,7 @@ public PaletteMode PaletteMode public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + var actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_ribbon != null) diff --git a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonGalleryDesigner.cs b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonGalleryDesigner.cs index 71db6cc65..aeed77771 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonGalleryDesigner.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonGalleryDesigner.cs @@ -60,7 +60,7 @@ public override ICollection AssociatedComponents get { // Create a new collection for both values - ArrayList compound = new(base.AssociatedComponents); + var compound = new ArrayList(base.AssociatedComponents); // Add all the display ranges foreach (KryptonGalleryRange dropRange in _gallery.DropButtonRanges) @@ -89,9 +89,8 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + var actionLists = new DesignerActionListCollection { - // Add the gallery specific list new KryptonGalleryActionList(this) }; diff --git a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonDesigner.cs b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonDesigner.cs index 3a10edc13..1879dbfa1 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonDesigner.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonDesigner.cs @@ -90,7 +90,7 @@ public override ICollection AssociatedComponents get { // Create a new collection for both values - ArrayList compound = new(base.AssociatedComponents); + var compound = new ArrayList(base.AssociatedComponents); compound.AddRange(_ribbon.ButtonSpecs); compound.AddRange(_ribbon.QATButtons); @@ -117,7 +117,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + var actionLists = new DesignerActionListCollection { // Add the ribbon specific list new KryptonRibbonActionList(this) @@ -331,7 +331,7 @@ private void OnRibbonMouseUp(object sender, MouseEventArgs e) if (component != null) { // Select the component - ArrayList selectionList = new() + var selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupClusterDesigner.cs b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupClusterDesigner.cs index 3ff37f574..716fe74fe 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupClusterDesigner.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupClusterDesigner.cs @@ -89,7 +89,7 @@ public override ICollection AssociatedComponents { get { - ArrayList compound = new(base.AssociatedComponents); + var compound = new ArrayList(base.AssociatedComponents); compound.AddRange(_ribbonCluster.Items); return compound; } diff --git a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupDesigner.cs b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupDesigner.cs index e816c6a86..524f04060 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupDesigner.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupDesigner.cs @@ -96,7 +96,7 @@ public override ICollection AssociatedComponents { get { - ArrayList compound = new(base.AssociatedComponents); + var compound = new ArrayList(base.AssociatedComponents); compound.AddRange(_ribbonGroup.Items); return compound; } @@ -620,7 +620,7 @@ private void OnContextMenu(object sender, MouseEventArgs e) // Update sub menu options available for the 'Move To Tab' UpdateMoveToTab(); - // Update menu items state from versb + // Update menu items state from verbs _toggleHelpersMenu.Checked = _ribbonGroup.Ribbon.InDesignHelperMode; _visibleMenu.Checked = _ribbonGroup.Visible; _collapsableMenu.Checked = _ribbonGroup.AllowCollapsed; @@ -651,18 +651,18 @@ private void UpdateMoveToTab() // Create a new item per tab in the ribbon control foreach (KryptonRibbonTab tab in _ribbonGroup.Ribbon.RibbonTabs) { - // Cannot move to ourself, so ignore outself + // Cannot move to ourself, so ignore ourself if (tab != _ribbonGroup.RibbonTab) { // Create menu item for the tab - ToolStripMenuItem tabMenuItem = new() + var tabMenuItem = new ToolStripMenuItem { Text = tab.Text, Tag = tab }; // Hook into selection of the menu item - tabMenuItem.Click += OnMoveToTab; + tabMenuItem.Click += OnMoveToTab!; // Add to end of the list of options _moveToTabMenu.DropDownItems.Add(tabMenuItem); @@ -676,10 +676,10 @@ private void OnMoveToTab(object sender, EventArgs e) if ((_ribbonGroup?.Ribbon != null) && _ribbonGroup.RibbonTab.Groups.Contains(_ribbonGroup)) { // Cast to correct type - ToolStripMenuItem tabMenuItem = (ToolStripMenuItem)sender; + var tabMenuItem = (ToolStripMenuItem)sender; // Get access to the destination tab - KryptonRibbonTab destination = (KryptonRibbonTab)tabMenuItem.Tag; + var destination = (KryptonRibbonTab)tabMenuItem.Tag; // Use a transaction to support undo/redo actions DesignerTransaction transaction = _designerHost.CreateTransaction(@"KryptonRibbonGroup MoveTabTo"); diff --git a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupLinesDesigner.cs b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupLinesDesigner.cs index fe54846b2..ef35c01c2 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupLinesDesigner.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupLinesDesigner.cs @@ -126,8 +126,8 @@ public override void Initialize([DisallowNull] IComponent component) _changeService = (IComponentChangeService)GetService(typeof(IComponentChangeService)); // We need to know when we are being removed/changed - _changeService.ComponentRemoving += OnComponentRemoving; - _changeService.ComponentChanged += OnComponentChanged; + _changeService.ComponentRemoving += OnComponentRemoving!; + _changeService.ComponentChanged += OnComponentChanged!; } /// @@ -137,7 +137,7 @@ public override ICollection AssociatedComponents { get { - ArrayList compound = new(base.AssociatedComponents); + var compound = new ArrayList(base.AssociatedComponents); compound.AddRange(_ribbonLines.Items); return compound; } @@ -1113,9 +1113,9 @@ private void UpdateMoveToGroup() if (group != _ribbonLines.RibbonGroup) { // Create menu item for the group - ToolStripMenuItem groupMenuItem = new() + var groupMenuItem = new ToolStripMenuItem { - Text = group.TextLine1 + " " + group.TextLine2, + Text = $"{group.TextLine1} {group.TextLine2}", Tag = group }; diff --git a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupSeparatorDesigner.cs b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupSeparatorDesigner.cs index 5319a23c2..2f2b1b162 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupSeparatorDesigner.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupSeparatorDesigner.cs @@ -378,14 +378,14 @@ private void UpdateMoveToGroup() if (group != _ribbonSeparator.RibbonGroup) { // Create menu item for the group - ToolStripMenuItem groupMenuItem = new() + var groupMenuItem = new ToolStripMenuItem { - Text = group.TextLine1 + " " + group.TextLine2, + Text = $"{group.TextLine1} {group.TextLine2}", Tag = group }; // Hook into selection of the menu item - groupMenuItem.Click += OnMoveToGroup; + groupMenuItem.Click += OnMoveToGroup!; // Add to end of the list of options _moveToGroupMenu.DropDownItems.Add(groupMenuItem); diff --git a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupTripleDesigner.cs b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupTripleDesigner.cs index 2fac5ae75..a1768814e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupTripleDesigner.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonGroupTripleDesigner.cs @@ -121,8 +121,8 @@ public override void Initialize([DisallowNull] IComponent component) _changeService = (IComponentChangeService)GetService(typeof(IComponentChangeService)); // We need to know when we are being removed/changed - _changeService.ComponentRemoving += OnComponentRemoving; - _changeService.ComponentChanged += OnComponentChanged; + _changeService.ComponentRemoving += OnComponentRemoving!; + _changeService.ComponentChanged += OnComponentChanged!; } /// @@ -132,7 +132,7 @@ public override ICollection AssociatedComponents { get { - ArrayList compound = new(base.AssociatedComponents); + var compound = new ArrayList(base.AssociatedComponents); compound.AddRange(_ribbonTriple.Items); return compound; } @@ -1092,14 +1092,14 @@ private void UpdateMoveToGroup() if (group != _ribbonTriple.RibbonGroup) { // Create menu item for the group - ToolStripMenuItem groupMenuItem = new() + var groupMenuItem = new ToolStripMenuItem { - Text = group.TextLine1 + " " + group.TextLine2, + Text = $"{group.TextLine1} {group.TextLine2}", Tag = group }; // Hook into selection of the menu item - groupMenuItem.Click += OnMoveToGroup; + groupMenuItem.Click += OnMoveToGroup!; // Add to end of the list of options _moveToGroupMenu.DropDownItems.Add(groupMenuItem); diff --git a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonTabDesigner.cs b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonTabDesigner.cs index eb1b8c863..ea454742a 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonTabDesigner.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Designers/Designers/KryptonRibbonTabDesigner.cs @@ -73,8 +73,8 @@ public override void Initialize([DisallowNull] IComponent component) _changeService = (IComponentChangeService)GetService(typeof(IComponentChangeService)); // We need to know when we are being removed/changed - _changeService.ComponentRemoving += OnComponentRemoving; - _changeService.ComponentChanged += OnComponentChanged; + _changeService.ComponentRemoving += OnComponentRemoving!; + _changeService.ComponentChanged += OnComponentChanged!; } /// @@ -84,7 +84,7 @@ public override ICollection AssociatedComponents { get { - ArrayList compound = new(base.AssociatedComponents); + var compound = new ArrayList(base.AssociatedComponents); compound.AddRange(_ribbonTab.Groups); return compound; } diff --git a/Source/Krypton Components/Krypton.Ribbon/General/AppButtonMenuProvider.cs b/Source/Krypton Components/Krypton.Ribbon/General/AppButtonMenuProvider.cs index be42f9838..5980f6e73 100644 --- a/Source/Krypton Components/Krypton.Ribbon/General/AppButtonMenuProvider.cs +++ b/Source/Krypton Components/Krypton.Ribbon/General/AppButtonMenuProvider.cs @@ -31,17 +31,17 @@ public class AppButtonMenuProvider : IContextMenuProvider /// /// Raises the Dispose event. /// - public event EventHandler Dispose; + public event EventHandler? Dispose; /// /// Raises the Closing event. /// - public event CancelEventHandler Closing; + public event CancelEventHandler? Closing; /// /// Raises the Close event. /// - public event EventHandler Close; + public event EventHandler? Close; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/General/Definitions.cs b/Source/Krypton Components/Krypton.Ribbon/General/Definitions.cs index 765b25120..a91b4dd14 100644 --- a/Source/Krypton Components/Krypton.Ribbon/General/Definitions.cs +++ b/Source/Krypton Components/Krypton.Ribbon/General/Definitions.cs @@ -23,12 +23,12 @@ public interface IQuickAccessToolbarButton /// /// Occurs when the quick access toolbar button has been clicked. /// - event EventHandler Click; + event EventHandler? Click; /// /// Occurs after the value of a property has changed. /// - event PropertyChangedEventHandler PropertyChanged; + event PropertyChangedEventHandler? PropertyChanged; /// /// Provides a back reference to the owning ribbon control instance. @@ -480,6 +480,6 @@ public enum RibbonItemAlignment /// /// Event source. /// Delegate for finish notification. - public delegate void ClickAndFinishHandler(object sender, EventHandler clickFinished); + public delegate void ClickAndFinishHandler(object sender, EventHandler? clickFinished); #endregion } diff --git a/Source/Krypton Components/Krypton.Ribbon/General/DesignTimeDraw.cs b/Source/Krypton Components/Krypton.Ribbon/General/DesignTimeDraw.cs index c99b9146c..3c891f069 100644 --- a/Source/Krypton Components/Krypton.Ribbon/General/DesignTimeDraw.cs +++ b/Source/Krypton Components/Krypton.Ribbon/General/DesignTimeDraw.cs @@ -57,7 +57,7 @@ public static void DrawArea(KryptonRibbon ribbon, : ribbon.StateCommon.RibbonGroupButton.Back.GetBackColor1(PaletteState.Tracking); // Draw entire area in color - using SolidBrush darkBrush = new(c); + using var darkBrush = new SolidBrush(c); context.Graphics.FillRectangle(darkBrush, clientRect); } #endregion @@ -84,14 +84,14 @@ public static void DrawFlapArea(KryptonRibbon ribbon, drawRect.Width -= DESIGN_SEP_WIDTH; drawRect.Height--; drawRect.X++; - using (Pen darkPen = new(c)) + using (var darkPen = new Pen(c)) { context.Graphics.DrawRectangle(darkPen, drawRect); } // Draw the flap in the dark color drawRect.Width = DESIGN_FLAP_WIDTH - 2; - using (SolidBrush darkBrush = new(c)) + using (var darkBrush = new SolidBrush(c)) { context.Graphics.FillRectangle(darkBrush, drawRect); } diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupButton.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupButton.cs index cbbec7873..cd5c6ec61 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupButton.cs @@ -43,7 +43,7 @@ public class KryptonRibbonGroupButton : KryptonRibbonGroupItem private GroupButtonType _buttonType; private ContextMenuStrip? _contextMenuStrip; private KryptonContextMenu? _kryptonContextMenu; - private EventHandler _kcmFinishDelegate; + private EventHandler? _kcmFinishDelegate; private GroupItemSize _itemSizeMax; private GroupItemSize _itemSizeMin; private GroupItemSize _itemSizeCurrent; @@ -56,28 +56,28 @@ public class KryptonRibbonGroupButton : KryptonRibbonGroupItem /// [Category(@"Ribbon")] [Description(@"Occurs when the button is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the drop down button type is pressed. /// [Category(@"Ribbon")] [Description(@"Occurs when the drop down button type is pressed.")] - public event EventHandler DropDown; + public event EventHandler? DropDown; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity @@ -648,7 +648,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) { if (KryptonContextMenu != null) { - ContextMenuArgs contextArgs = new(KryptonContextMenu); + var contextArgs = new ContextMenuArgs(KryptonContextMenu); // Generate an event giving a chance for the krypton context menu strip to // be shown to be provided/modified or the action even to be cancelled @@ -657,7 +657,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) // If user did not cancel and there is still a krypton context menu strip to show if (contextArgs is { Cancel: false, KryptonContextMenu: { } }) { - Rectangle screenRect = Rectangle.Empty; + var screenRect = Rectangle.Empty; // Convert the view for the button into screen coordinates if ((Ribbon != null) && (ButtonView != null)) @@ -681,7 +681,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) } else if (ContextMenuStrip != null) { - ContextMenuArgs contextArgs = new(ContextMenuStrip); + var contextArgs = new ContextMenuArgs(ContextMenuStrip); // Generate an event giving a chance for the context menu strip to be // shown to be provided/modified or the action even to be cancelled @@ -690,7 +690,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) // If user did not cancel and there is still a context menu strip to show if (contextArgs is { Cancel: false, ContextMenuStrip: { } }) { - Rectangle screenRect = Rectangle.Empty; + var screenRect = Rectangle.Empty; // Convert the view for the button into screen coordinates if ((Ribbon != null) && (ButtonView != null)) diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCheckBox.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCheckBox.cs index 959faf1cb..59beb518c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCheckBox.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCheckBox.cs @@ -49,35 +49,35 @@ public class KryptonRibbonGroupCheckBox : KryptonRibbonGroupItem /// [Category(@"Ribbon")] [Description(@"Occurs when the check box is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the value of the Checked property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs whenever the Checked property has changed.")] - public event EventHandler CheckedChanged; + public event EventHandler? CheckedChanged; /// /// Occurs when the value of the CheckState property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs whenever the CheckState property has changed.")] - public event EventHandler CheckStateChanged; + public event EventHandler? CheckStateChanged; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCluster.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCluster.cs index c0d035d77..0bfeb2ce4 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCluster.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCluster.cs @@ -37,28 +37,28 @@ public class KryptonRibbonGroupCluster : KryptonRibbonGroupContainer /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time wants to add a button. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddButton; + public event EventHandler? DesignTimeAddButton; /// /// Occurs when the design time wants to add a color button. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddColorButton; + public event EventHandler? DesignTimeAddColorButton; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupClusterButton.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupClusterButton.cs index 43d357f94..99d189187 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupClusterButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupClusterButton.cs @@ -44,7 +44,7 @@ public class KryptonRibbonGroupClusterButton : KryptonRibbonGroupItem private GroupButtonType _buttonType; private ContextMenuStrip? _contextMenuStrip; private KryptonContextMenu? _kryptonContextMenu; - private EventHandler _kcmFinishDelegate; + private EventHandler? _kcmFinishDelegate; #endregion @@ -54,28 +54,28 @@ public class KryptonRibbonGroupClusterButton : KryptonRibbonGroupItem /// [Category(@"Ribbon")] [Description(@"Occurs when the button is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the drop down button type is pressed. /// [Category(@"Ribbon")] [Description(@"Occurs when the drop down button type is pressed.")] - public event EventHandler DropDown; + public event EventHandler? DropDown; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity @@ -615,7 +615,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) { if (KryptonContextMenu != null) { - ContextMenuArgs contextArgs = new(KryptonContextMenu); + var contextArgs = new ContextMenuArgs(KryptonContextMenu); // Generate an event giving a chance for the krypton context menu strip to // be shown to be provided/modified or the action even to be cancelled @@ -624,7 +624,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) // If user did not cancel and there is still a krypton context menu strip to show if (contextArgs is { Cancel: false, KryptonContextMenu: { } }) { - Rectangle screenRect = Rectangle.Empty; + var screenRect = Rectangle.Empty; // Convert the view for the button into screen coordinates if ((Ribbon != null) && (ClusterButtonView != null)) @@ -648,7 +648,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) } else if (ContextMenuStrip != null) { - ContextMenuArgs contextArgs = new(ContextMenuStrip); + var contextArgs = new ContextMenuArgs(ContextMenuStrip); // Generate an event giving a chance for the context menu strip to be // shown to be provided/modified or the action even to be cancelled @@ -657,7 +657,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) // If user did not cancel and there is still a context menu strip to show if (contextArgs is { Cancel: false, ContextMenuStrip: { } }) { - Rectangle screenRect = Rectangle.Empty; + var screenRect = Rectangle.Empty; // Convert the view for the button into screen coordinates if ((Ribbon != null) && (ClusterButtonView != null)) diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupClusterColorButton.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupClusterColorButton.cs index cd3042e26..b2c4994f2 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupClusterColorButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupClusterColorButton.cs @@ -45,20 +45,20 @@ public class KryptonRibbonGroupClusterColorButton : KryptonRibbonGroupItem private Rectangle _selectedRect; private Color _selectedColor; private Color _emptyBorderColor; - private Image _imageSmall; + private Image? _imageSmall; private KryptonCommand? _command; private GroupItemSize _itemSizeMax; private GroupItemSize _itemSizeMin; private GroupItemSize _itemSizeCurrent; private GroupButtonType _buttonType; - private EventHandler _kcmFinishDelegate; + private EventHandler? _kcmFinishDelegate; private ColorScheme _schemeThemes; private ColorScheme _schemeStandard; private int _maxRecentColors; private readonly List _recentColors; // Context menu items - private readonly KryptonContextMenu _kryptonContextMenu; + private readonly KryptonContextMenu? _kryptonContextMenu; private readonly KryptonContextMenuSeparator _separatorTheme; private readonly KryptonContextMenuSeparator _separatorStandard; private readonly KryptonContextMenuSeparator _separatorRecent; @@ -82,49 +82,49 @@ public class KryptonRibbonGroupClusterColorButton : KryptonRibbonGroupItem /// [Category(@"Ribbon")] [Description(@"Occurs when the color button is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the drop down color button type is pressed. /// [Category(@"Ribbon")] [Description(@"Occurs when the drop down color button type is pressed.")] - public event EventHandler DropDown; + public event EventHandler? DropDown; /// /// Occurs when the SelectedColor property changes value. /// [Category(@"Ribbon")] [Description(@"Occurs when the SelectedColor property changes value.")] - public event EventHandler SelectedColorChanged; + public event EventHandler? SelectedColorChanged; /// /// Occurs when the user is tracking over a color. /// [Category(@"Ribbon")] [Description(@"Occurs when user is tracking over a color.")] - public event EventHandler TrackingColor; + public event EventHandler? TrackingColor; /// /// Occurs when the user selects the more colors option. /// [Category(@"Ribbon")] [Description(@"Occurs when user selects the more colors option.")] - public event CancelEventHandler MoreColors; + public event CancelEventHandler? MoreColors; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity @@ -630,6 +630,7 @@ public void ResetShortcutKeys() /// [Category(@"Appearance")] [Description(@"Collection of recent colors.")] + [AllowNull] public Color[] RecentColors { get => _recentColors.ToArray(); @@ -670,7 +671,7 @@ public KryptonCommand? KryptonCommand { if (_command != null) { - _command.PropertyChanged -= OnCommandPropertyChanged; + _command.PropertyChanged -= OnCommandPropertyChanged!; } _command = value; @@ -678,7 +679,7 @@ public KryptonCommand? KryptonCommand if (_command != null) { - _command.PropertyChanged += OnCommandPropertyChanged; + _command.PropertyChanged += OnCommandPropertyChanged!; } } } @@ -794,7 +795,7 @@ public void PerformClick() /// Generates a Click event for a button. /// /// Delegate fired during event processing. - public void PerformClick(EventHandler finishDelegate) + public void PerformClick(EventHandler? finishDelegate) { OnClick(finishDelegate); } @@ -811,7 +812,7 @@ public void PerformDropDown() /// Generates a DropDown event for a button. /// /// Delegate fired during event processing. - public void PerformDropDown(EventHandler finishDelegate) + public void PerformDropDown(EventHandler? finishDelegate) { OnDropDown(finishDelegate); } @@ -822,7 +823,7 @@ public void PerformDropDown(EventHandler finishDelegate) [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public ViewBase ClusterColorButtonView { get; set; } + public ViewBase? ClusterColorButtonView { get; set; } #endregion @@ -855,7 +856,7 @@ protected virtual void OnCommandPropertyChanged(object sender, PropertyChangedEv /// Raises the Click event. /// /// Delegate fired during event processing. - protected virtual void OnClick(EventHandler finishDelegate) + protected virtual void OnClick(EventHandler? finishDelegate) { var fireDelegate = true; @@ -911,7 +912,7 @@ protected virtual void OnClick(EventHandler finishDelegate) /// Raises the DropDown event. /// /// Delegate fired during event processing. - protected virtual void OnDropDown(EventHandler finishDelegate) + protected virtual void OnDropDown(EventHandler? finishDelegate) { var fireDelegate = true; @@ -926,7 +927,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) { UpdateContextMenu(); - ContextMenuArgs contextArgs = new(_kryptonContextMenu); + var contextArgs = new ContextMenuArgs(_kryptonContextMenu); // Generate an event giving a chance for the krypton context menu strip to // be shown to be provided/modified or the action even to be cancelled @@ -935,7 +936,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) // If user did not cancel and there is still a krypton context menu strip to show if (contextArgs is { Cancel: false, KryptonContextMenu: { } }) { - Rectangle screenRect = Rectangle.Empty; + var screenRect = Rectangle.Empty; // Convert the view for the button into screen coordinates if ((Ribbon != null) && (ClusterColorButtonView != null)) @@ -959,7 +960,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) HookContextMenuEvents(_kryptonContextMenu.Items, true); // Show at location we were provided, but need to convert to screen coordinates - contextArgs.KryptonContextMenu.Closed += OnKryptonContextMenuClosed; + contextArgs.KryptonContextMenu.Closed += OnKryptonContextMenuClosed!; if (contextArgs.KryptonContextMenu.Show(this, new Point(screenRect.X, screenRect.Bottom + 1))) { fireDelegate = false; @@ -1085,19 +1086,19 @@ private void HookContextMenuEvents(KryptonContextMenuCollection collection, bool if (hook) { - columns.TrackingColor += OnColumnsTrackingColor; - columns.SelectedColorChanged += OnColumnsSelectedColorChanged; + columns.TrackingColor += OnColumnsTrackingColor!; + columns.SelectedColorChanged += OnColumnsSelectedColorChanged!; } else { - columns.TrackingColor -= OnColumnsTrackingColor; - columns.SelectedColorChanged -= OnColumnsSelectedColorChanged; + columns.TrackingColor -= OnColumnsTrackingColor!; + columns.SelectedColorChanged -= OnColumnsSelectedColorChanged!; } } } } - private void UpdateRecentColors(Color color) + private void UpdateRecentColors([DisallowNull] Color color) { // Do we need to update the recent colors collection? if (AutoRecentColors) @@ -1247,14 +1248,15 @@ private void OnClickNoColor(object sender, EventArgs e) private void OnClickMoreColors(object sender, EventArgs e) { // Give user a chance to cancel showing the standard more colors dialog - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); OnMoreColors(cea); // If not instructed to cancel then... if (!cea.Cancel) { // Use a standard color dialog for the selection of custom colors - ColorDialog cd = new() + // TODO: Use the Kryptonised version ?? + var cd = new ColorDialog { Color = SelectedColor, FullOpen = true @@ -1271,7 +1273,7 @@ private void OnClickMoreColors(object sender, EventArgs e) private void OnKryptonContextMenuClosed(object sender, EventArgs e) { KryptonContextMenu kcm = (KryptonContextMenu)sender; - kcm.Closed -= OnKryptonContextMenuClosed; + kcm.Closed -= OnKryptonContextMenuClosed!; // Fire any associated finish delegate if (_kcmFinishDelegate != null) diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupColorButton.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupColorButton.cs index b2cee56c0..76da4232a 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupColorButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupColorButton.cs @@ -51,7 +51,7 @@ public class KryptonRibbonGroupColorButton : KryptonRibbonGroupItem private string _textLine2; private string _keyTip; private GroupButtonType _buttonType; - private EventHandler _kcmFinishDelegate; + private EventHandler? _kcmFinishDelegate; private GroupItemSize _itemSizeMax; private GroupItemSize _itemSizeMin; private GroupItemSize _itemSizeCurrent; @@ -86,49 +86,49 @@ public class KryptonRibbonGroupColorButton : KryptonRibbonGroupItem /// [Category(@"Ribbon")] [Description(@"Occurs when the color button is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the drop down color button type is pressed. /// [Category(@"Ribbon")] [Description(@"Occurs when the drop down color button type is pressed.")] - public event EventHandler DropDown; + public event EventHandler? DropDown; /// /// Occurs when the SelectedColor property changes value. /// [Category(@"Ribbon")] [Description(@"Occurs when the SelectedColor property changes value.")] - public event EventHandler SelectedColorChanged; + public event EventHandler? SelectedColorChanged; /// /// Occurs when the user is tracking over a color. /// [Category(@"Ribbon")] [Description(@"Occurs when user is tracking over a color.")] - public event EventHandler TrackingColor; + public event EventHandler? TrackingColor; /// /// Occurs when the user selects the more colors option. /// [Category(@"Ribbon")] [Description(@"Occurs when user selects the more colors option.")] - public event CancelEventHandler MoreColors; + public event CancelEventHandler? MoreColors; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity @@ -982,7 +982,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) { UpdateContextMenu(); - ContextMenuArgs contextArgs = new(_kryptonContextMenu); + var contextArgs = new ContextMenuArgs(_kryptonContextMenu); // Generate an event giving a chance for the krypton context menu strip to // be shown to be provided/modified or the action even to be cancelled @@ -991,7 +991,7 @@ protected virtual void OnDropDown(EventHandler finishDelegate) // If user did not cancel and there is still a krypton context menu strip to show if (contextArgs is { Cancel: false, KryptonContextMenu: { } }) { - Rectangle screenRect = Rectangle.Empty; + var screenRect = Rectangle.Empty; // Convert the view for the button into screen coordinates if ((Ribbon != null) && (ColorButtonView != null)) @@ -1303,14 +1303,15 @@ private void OnClickNoColor(object sender, EventArgs e) private void OnClickMoreColors(object sender, EventArgs e) { // Give user a chance to cancel showing the standard more colors dialog - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); OnMoreColors(cea); // If not instructed to cancel then... if (!cea.Cancel) { // Use a standard color dialog for the selection of custom colors - ColorDialog cd = new() + // TODO: Use Kyptonised version ?? + var cd = new ColorDialog { Color = SelectedColor, FullOpen = true diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupComboBox.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupComboBox.cs index b7044713e..3805a01a1 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupComboBox.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupComboBox.cs @@ -37,156 +37,156 @@ public class KryptonRibbonGroupComboBox : KryptonRibbonGroupItem /// Occurs when the control receives focus. /// [Browsable(false)] - public event EventHandler GotFocus; + public event EventHandler? GotFocus; /// /// Occurs when the control loses focus. /// [Browsable(false)] - public event EventHandler LostFocus; + public event EventHandler? LostFocus; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyPressEventHandler KeyPress; + public event KeyPressEventHandler? KeyPress; /// /// Occurs when a key is released while the control has focus. /// [Description(@"Occurs when a key is released while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyUp; + public event KeyEventHandler? KeyUp; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyDown; + public event KeyEventHandler? KeyDown; /// /// Occurs before the KeyDown event when a key is pressed while focus is on this control. /// [Description(@"Occurs before the KeyDown event when a key is pressed while focus is on this control.")] [Category(@"Key")] - public event PreviewKeyDownEventHandler PreviewKeyDown; + public event PreviewKeyDownEventHandler? PreviewKeyDown; /// /// Occurs when the drop-down portion of the KryptonComboBox is shown. /// [Description(@"Occurs when the drop-down portion of the KryptonComboBox is shown.")] [Category(@"Behavior")] - public event EventHandler DropDown; + public event EventHandler? DropDown; /// /// Indicates that the drop-down portion of the KryptonComboBox has closed. /// [Description(@"Indicates that the drop-down portion of the KryptonComboBox has closed.")] [Category(@"Behavior")] - public event EventHandler DropDownClosed; + public event EventHandler? DropDownClosed; /// /// Occurs when the value of the DropDownStyle property changed. /// [Description(@"Occurs when the value of the DropDownStyle property changed.")] [Category(@"Behavior")] - public event EventHandler DropDownStyleChanged; + public event EventHandler? DropDownStyleChanged; /// /// Occurs when the value of the SelectedIndex property changes. /// [Description(@"Occurs when the value of the SelectedIndex property changes.")] [Category(@"Behavior")] - public event EventHandler SelectedIndexChanged; + public event EventHandler? SelectedIndexChanged; /// /// Occurs when an item is chosen from the drop-down list and the drop-down list is closed. /// [Description(@"Occurs when an item is chosen from the drop-down list and the drop-down list is closed.")] [Category(@"Behavior")] - public event EventHandler SelectionChangeCommitted; + public event EventHandler? SelectionChangeCommitted; /// /// Occurs when the value of the DataSource property changed. /// [Description(@"Occurs when the value of the DataSource property changed.")] [Category(@"PropertyChanged")] - public event EventHandler DataSourceChanged; + public event EventHandler? DataSourceChanged; /// /// Occurs when the value of the DisplayMember property changed. /// [Description(@"Occurs when the value of the DisplayMember property changed.")] [Category(@"PropertyChanged")] - public event EventHandler DisplayMemberChanged; + public event EventHandler? DisplayMemberChanged; /// /// Occurs when the list format has changed. /// [Description(@"Occurs when the list format has changed.")] [Category(@"PropertyChanged")] - public event EventHandler Format; + public event EventHandler? Format; /// /// Occurs when the value of the FormatInfo property changed. /// [Description(@"Occurs when the value of the FormatInfo property changed.")] [Category(@"PropertyChanged")] - public event EventHandler FormatInfoChanged; + public event EventHandler? FormatInfoChanged; /// /// Occurs when the value of the FormatString property changed. /// [Description(@"Occurs when the value of the FormatString property changed.")] [Category(@"PropertyChanged")] - public event EventHandler FormatStringChanged; + public event EventHandler? FormatStringChanged; /// /// Occurs when the value of the FormattingEnabled property changed. /// [Description(@"Occurs when the value of the FormattingEnabled property changed.")] [Category(@"PropertyChanged")] - public event EventHandler FormattingEnabledChanged; + public event EventHandler? FormattingEnabledChanged; /// /// Occurs when the value of the SelectedValue property changed. /// [Description(@"Occurs when the value of the SelectedValue property changed.")] [Category(@"PropertyChanged")] - public event EventHandler SelectedValueChanged; + public event EventHandler? SelectedValueChanged; /// /// Occurs when the value of the ValueMember property changed. /// [Description(@"Occurs when the value of the ValueMember property changed.")] [Category(@"PropertyChanged")] - public event EventHandler ValueMemberChanged; + public event EventHandler? ValueMemberChanged; /// /// Occurs when the KryptonComboBox text has changed. /// [Description(@"Occurs when the KryptonComboBox text has changed.")] [Category(@"Behavior")] - public event EventHandler TextUpdate; + public event EventHandler? TextUpdate; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; - internal event EventHandler MouseEnterControl; - internal event EventHandler MouseLeaveControl; + internal event EventHandler? MouseEnterControl; + internal event EventHandler? MouseLeaveControl; #endregion #region Identity @@ -922,7 +922,7 @@ public override ViewBase CreateView(KryptonRibbon ribbon, [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public ViewBase ComboBoxView { get; set; } + public ViewBase? ComboBoxView { get; set; } #endregion @@ -1123,7 +1123,7 @@ protected virtual void OnPropertyChanged(string propertyName) internal KryptonComboBox LastComboBox { get; set; } - internal NeedPaintHandler ViewPaintDelegate { get; set; } + internal NeedPaintHandler? ViewPaintDelegate { get; set; } internal void OnDesignTimeContextMenu(MouseEventArgs e) { diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCustomControl.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCustomControl.cs index a72c0f121..e5a68aebc 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCustomControl.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupCustomControl.cs @@ -40,17 +40,17 @@ public class KryptonRibbonGroupCustomControl : KryptonRibbonGroupItem /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; - internal event EventHandler MouseEnterControl; - internal event EventHandler MouseLeaveControl; + internal event EventHandler? MouseEnterControl; + internal event EventHandler? MouseLeaveControl; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupDateTimePicker.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupDateTimePicker.cs index d9aef9ae4..0c4daa4a8 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupDateTimePicker.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupDateTimePicker.cs @@ -39,27 +39,27 @@ public class KryptonRibbonGroupDateTimePicker : KryptonRibbonGroupItem /// Occurs when the control receives focus. /// [Browsable(false)] - public event EventHandler GotFocus; + public event EventHandler? GotFocus; /// /// Occurs when the control loses focus. /// [Browsable(false)] - public event EventHandler LostFocus; + public event EventHandler? LostFocus; /// /// Occurs when the Value property has changed value. /// [Category(@"Action")] [Description(@"Event raised when the value of the Value property is changed.")] - public event EventHandler ValueChanged; + public event EventHandler? ValueChanged; /// /// Occurs when the ValueNullable property has changed value. /// [Category(@"Action")] [Description(@"Event raised when the value of the ValueNullable property is changed.")] - public event EventHandler ValueNullableChanged; + public event EventHandler? ValueNullableChanged; /// /// Occurs when the drop down is shown. @@ -80,59 +80,59 @@ public class KryptonRibbonGroupDateTimePicker : KryptonRibbonGroupItem /// [Category(@"Property Changed")] [Description(@"Event raised when the value of the Checked property is changed.")] - public event EventHandler CheckedChanged; + public event EventHandler? CheckedChanged; /// /// Occurs when the Format property has changed value. /// [Category(@"Property Changed")] [Description(@"Event raised when the value of the Format property is changed.")] - public event EventHandler FormatChanged; + public event EventHandler? FormatChanged; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyPressEventHandler KeyPress; + public event KeyPressEventHandler? KeyPress; /// /// Occurs when a key is released while the control has focus. /// [Description(@"Occurs when a key is released while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyUp; + public event KeyEventHandler? KeyUp; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyDown; + public event KeyEventHandler? KeyDown; /// /// Occurs before the KeyDown event when a key is pressed while focus is on this control. /// [Description(@"Occurs before the KeyDown event when a key is pressed while focus is on this control.")] [Category(@"Key")] - public event PreviewKeyDownEventHandler PreviewKeyDown; + public event PreviewKeyDownEventHandler? PreviewKeyDown; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; - internal event EventHandler MouseEnterControl; - internal event EventHandler MouseLeaveControl; + internal event EventHandler? MouseEnterControl; + internal event EventHandler? MouseLeaveControl; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupDomainUpDown.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupDomainUpDown.cs index e586f1ab0..f51c2c97b 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupDomainUpDown.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupDomainUpDown.cs @@ -38,78 +38,78 @@ public class KryptonRibbonGroupDomainUpDown : KryptonRibbonGroupItem /// [Category(@"Behavior")] [Description(@"Occurs when the value of the SelectedItem property changes.")] - public event EventHandler SelectedItemChanged; + public event EventHandler? SelectedItemChanged; /// /// Occurs when the user scrolls the scroll box. /// [Category(@"Action")] [Description(@"Occurs when the user scrolls the scroll box.")] - public event ScrollEventHandler Scroll; + public event ScrollEventHandler? Scroll; /// /// Occurs when the value of the Text property changes. /// [Description(@"Occurs when the value of the Text property changes.")] [Category(@"Property Changed")] - public event EventHandler TextChanged; + public event EventHandler? TextChanged; /// /// Occurs when the control receives focus. /// [Browsable(false)] - public event EventHandler GotFocus; + public event EventHandler? GotFocus; /// /// Occurs when the control loses focus. /// [Browsable(false)] - public event EventHandler LostFocus; + public event EventHandler? LostFocus; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyPressEventHandler KeyPress; + public event KeyPressEventHandler? KeyPress; /// /// Occurs when a key is released while the control has focus. /// [Description(@"Occurs when a key is released while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyUp; + public event KeyEventHandler? KeyUp; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyDown; + public event KeyEventHandler? KeyDown; /// /// Occurs before the KeyDown event when a key is pressed while focus is on this control. /// [Description(@"Occurs before the KeyDown event when a key is pressed while focus is on this control.")] [Category(@"Key")] - public event PreviewKeyDownEventHandler PreviewKeyDown; + public event PreviewKeyDownEventHandler? PreviewKeyDown; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; - internal event EventHandler MouseEnterControl; - internal event EventHandler MouseLeaveControl; + internal event EventHandler? MouseEnterControl; + internal event EventHandler? MouseLeaveControl; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupGallery.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupGallery.cs index 488cc0855..59b09d3d6 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupGallery.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupGallery.cs @@ -51,21 +51,21 @@ public class KryptonRibbonGroupGallery : KryptonRibbonGroupContainer /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the ImageList property changes.")] - public event EventHandler ImageListChanged; + public event EventHandler? ImageListChanged; /// /// Occurs when the value of the SelectedIndex property changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the SelectedIndex property changes.")] - public event EventHandler SelectedIndexChanged; + public event EventHandler? SelectedIndexChanged; /// /// Occurs when the user is tracking over a color. /// [Category(@"Action")] [Description(@"Occurs when user is tracking over an image.")] - public event EventHandler TrackingImage; + public event EventHandler? TrackingImage; /// /// Occurs when the user invokes the drop down menu. @@ -79,31 +79,31 @@ public class KryptonRibbonGroupGallery : KryptonRibbonGroupContainer /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the control receives focus. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler GotFocus; + public event EventHandler? GotFocus; /// /// Occurs when the control loses focus. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler LostFocus; + public event EventHandler? LostFocus; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; - internal event EventHandler MouseEnterControl; - internal event EventHandler MouseLeaveControl; + internal event EventHandler? MouseEnterControl; + internal event EventHandler? MouseLeaveControl; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupLabel.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupLabel.cs index 363599b68..d2c3eb66c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupLabel.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupLabel.cs @@ -46,7 +46,7 @@ public class KryptonRibbonGroupLabel : KryptonRibbonGroupItem /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. @@ -55,7 +55,7 @@ public class KryptonRibbonGroupLabel : KryptonRibbonGroupItem [Description(@"Occurs when the design time context menu is requested.")] [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupLines.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupLines.cs index 1d621d76c..eb1dc0455 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupLines.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupLines.cs @@ -38,119 +38,119 @@ public class KryptonRibbonGroupLines : KryptonRibbonGroupContainer /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time wants to add a button. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddButton; + public event EventHandler? DesignTimeAddButton; /// /// Occurs when the design time wants to add a color button. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddColorButton; + public event EventHandler? DesignTimeAddColorButton; /// /// Occurs when the design time wants to add a check box. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddCheckBox; + public event EventHandler? DesignTimeAddCheckBox; /// /// Occurs when the design time wants to add a radio button. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddRadioButton; + public event EventHandler? DesignTimeAddRadioButton; /// /// Occurs when the design time wants to add a label. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddLabel; + public event EventHandler? DesignTimeAddLabel; /// /// Occurs when the design time wants to add a custom control. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddCustomControl; + public event EventHandler? DesignTimeAddCustomControl; /// /// Occurs when the design time wants to add a cluster. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddCluster; + public event EventHandler? DesignTimeAddCluster; /// /// Occurs when the design time wants to add a text box. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddTextBox; + public event EventHandler? DesignTimeAddTextBox; /// /// Occurs when the design time wants to add a masked text box. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddMaskedTextBox; + public event EventHandler? DesignTimeAddMaskedTextBox; /// /// Occurs when the design time wants to add a rich text box. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddRichTextBox; + public event EventHandler? DesignTimeAddRichTextBox; /// /// Occurs when the design time wants to add a combobox. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddComboBox; + public event EventHandler? DesignTimeAddComboBox; /// /// Occurs when the design time wants to add a numeric up down. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddNumericUpDown; + public event EventHandler? DesignTimeAddNumericUpDown; /// /// Occurs when the design time wants to add a domain up down. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddDomainUpDown; + public event EventHandler? DesignTimeAddDomainUpDown; /// /// Occurs when the design time wants to add a date time picker. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddDateTimePicker; + public event EventHandler? DesignTimeAddDateTimePicker; /// /// Occurs when the design time wants to add a track bar. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddTrackBar; + public event EventHandler? DesignTimeAddTrackBar; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupMaskedTextBox.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupMaskedTextBox.cs index 1b9f33ee3..21cbe1e43 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupMaskedTextBox.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupMaskedTextBox.cs @@ -37,121 +37,121 @@ public class KryptonRibbonGroupMaskedTextBox : KryptonRibbonGroupItem /// Occurs when the control receives focus. /// [Browsable(false)] - public event EventHandler GotFocus; + public event EventHandler? GotFocus; /// /// Occurs when the control loses focus. /// [Browsable(false)] - public event EventHandler LostFocus; + public event EventHandler? LostFocus; /// /// Occurs when the value of the Text property changes. /// [Description(@"Occurs when the value of the Text property changes.")] [Category(@"Property Changed")] - public event EventHandler TextChanged; + public event EventHandler? TextChanged; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyPressEventHandler KeyPress; + public event KeyPressEventHandler? KeyPress; /// /// Occurs when a key is released while the control has focus. /// [Description(@"Occurs when a key is released while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyUp; + public event KeyEventHandler? KeyUp; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyDown; + public event KeyEventHandler? KeyDown; /// /// Occurs before the KeyDown event when a key is pressed while focus is on this control. /// [Description(@"Occurs before the KeyDown event when a key is pressed while focus is on this control.")] [Category(@"Key")] - public event PreviewKeyDownEventHandler PreviewKeyDown; + public event PreviewKeyDownEventHandler? PreviewKeyDown; /// /// Occurs when the value of the HideSelection property changes. /// [Description(@"Occurs when the value of the HideSelection property changes.")] [Category(@"Property Changed")] - public event EventHandler HideSelectionChanged; + public event EventHandler? HideSelectionChanged; /// /// Occurs when the value of the Modified property changes. /// [Description(@"Occurs when the value of the Modified property changes.")] [Category(@"Property Changed")] - public event EventHandler ModifiedChanged; + public event EventHandler? ModifiedChanged; /// /// Occurs when the value of the ReadOnly property changes. /// [Description(@"Occurs when the value of the ReadOnly property changes.")] [Category(@"Property Changed")] - public event EventHandler ReadOnlyChanged; + public event EventHandler? ReadOnlyChanged; /// /// Occurs when the value of the TextAlign property changes. /// [Description(@"Occurs when the value of the TextAlign property changes.")] [Category(@"Property Changed")] - public event EventHandler TextAlignChanged; + public event EventHandler? TextAlignChanged; /// /// Occurs when the value of the Mask property changes. /// [Description(@"Occurs when the value of the Mask property changes.")] [Category(@"Property Changed")] - public event EventHandler MaskChanged; + public event EventHandler? MaskChanged; /// /// Occurs when the value of the IsOverwriteMode property changes. /// [Description(@"Occurs when the value of the IsOverwriteMode property changes.")] [Category(@"Property Changed")] - public event EventHandler IsOverwriteModeChanged; + public event EventHandler? IsOverwriteModeChanged; /// /// Occurs when the input character or text does not comply with the mask specification. /// [Description(@"Occurs when the input character or text does not comply with the mask specification.")] [Category(@"Behavior")] - public event MaskInputRejectedEventHandler MaskInputRejected; + public event MaskInputRejectedEventHandler? MaskInputRejected; /// /// Occurs when the validating type object has completed parsing the input text. /// [Description(@"Occurs when the validating type object has completed parsing the input text.")] [Category(@"Focus")] - public event TypeValidationEventHandler TypeValidationCompleted; + public event TypeValidationEventHandler? TypeValidationCompleted; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; - internal event EventHandler MouseEnterControl; - internal event EventHandler MouseLeaveControl; + internal event EventHandler? MouseEnterControl; + internal event EventHandler? MouseLeaveControl; #endregion #region Identity @@ -288,7 +288,7 @@ public string KeyTip value = @"X"; } - _keyTip = value!.ToUpper(); + _keyTip = value.ToUpper(); } } diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupNumericUpDown.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupNumericUpDown.cs index b74dcc83e..f08c22a4c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupNumericUpDown.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupNumericUpDown.cs @@ -40,64 +40,64 @@ public class KryptonRibbonGroupNumericUpDown : KryptonRibbonGroupItem /// [Description(@"Occurs when the value of the Value property changes.")] [Category(@"Property Changed")] - public event EventHandler ValueChanged; + public event EventHandler? ValueChanged; /// /// Occurs when the control receives focus. /// [Browsable(false)] - public event EventHandler GotFocus; + public event EventHandler? GotFocus; /// /// Occurs when the control loses focus. /// [Browsable(false)] - public event EventHandler LostFocus; + public event EventHandler? LostFocus; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyPressEventHandler KeyPress; + public event KeyPressEventHandler? KeyPress; /// /// Occurs when a key is released while the control has focus. /// [Description(@"Occurs when a key is released while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyUp; + public event KeyEventHandler? KeyUp; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyDown; + public event KeyEventHandler? KeyDown; /// /// Occurs before the KeyDown event when a key is pressed while focus is on this control. /// [Description(@"Occurs before the KeyDown event when a key is pressed while focus is on this control.")] [Category(@"Key")] - public event PreviewKeyDownEventHandler PreviewKeyDown; + public event PreviewKeyDownEventHandler? PreviewKeyDown; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; - internal event EventHandler MouseEnterControl; - internal event EventHandler MouseLeaveControl; + internal event EventHandler? MouseEnterControl; + internal event EventHandler? MouseLeaveControl; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupRadioButton.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupRadioButton.cs index af7b5f25a..fffc459ed 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupRadioButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupRadioButton.cs @@ -45,21 +45,21 @@ public class KryptonRibbonGroupRadioButton : KryptonRibbonGroupItem /// [Category(@"Ribbon")] [Description(@"Occurs when the radio button is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the value of the Checked property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs whenever the Checked property has changed.")] - public event EventHandler CheckedChanged; + public event EventHandler? CheckedChanged; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. @@ -68,7 +68,7 @@ public class KryptonRibbonGroupRadioButton : KryptonRibbonGroupItem [Description(@"Occurs when the design time context menu is requested.")] [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupRichTextBox.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupRichTextBox.cs index 6f8447c6e..690bf524e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupRichTextBox.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupRichTextBox.cs @@ -38,134 +38,134 @@ public class KryptonRibbonGroupRichTextBox : KryptonRibbonGroupItem /// [Description(@"Occurs when the value of the Text property changes.")] [Category(@"Property Changed")] - public event EventHandler TextChanged; + public event EventHandler? TextChanged; /// /// Occurs when the control receives focus. /// [Browsable(false)] - public event EventHandler GotFocus; + public event EventHandler? GotFocus; /// /// Occurs when the control loses focus. /// [Browsable(false)] - public event EventHandler LostFocus; + public event EventHandler? LostFocus; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyPressEventHandler KeyPress; + public event KeyPressEventHandler? KeyPress; /// /// Occurs when a key is released while the control has focus. /// [Description(@"Occurs when a key is released while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyUp; + public event KeyEventHandler? KeyUp; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyDown; + public event KeyEventHandler? KeyDown; /// /// Occurs before the KeyDown event when a key is pressed while focus is on this control. /// [Description(@"Occurs before the KeyDown event when a key is pressed while focus is on this control.")] [Category(@"Key")] - public event PreviewKeyDownEventHandler PreviewKeyDown; + public event PreviewKeyDownEventHandler? PreviewKeyDown; /// /// Occurs when the value of the AcceptsTab property changes. /// [Description(@"Occurs when the value of the AcceptsTab property changes.")] [Category(@"Property Changed")] - public event EventHandler AcceptsTabChanged; + public event EventHandler? AcceptsTabChanged; /// /// Occurs when the value of the HideSelection property changes. /// [Description(@"Occurs when the value of the HideSelection property changes.")] [Category(@"Property Changed")] - public event EventHandler HideSelectionChanged; + public event EventHandler? HideSelectionChanged; /// /// Occurs when the value of the Modified property changes. /// [Description(@"Occurs when the value of the Modified property changes.")] [Category(@"Property Changed")] - public event EventHandler ModifiedChanged; + public event EventHandler? ModifiedChanged; /// /// Occurs when the value of the Multiline property changes. /// [Description(@"Occurs when the value of the Multiline property changes.")] [Category(@"Property Changed")] - public event EventHandler MultilineChanged; + public event EventHandler? MultilineChanged; /// /// Occurs when the value of the ReadOnly property changes. /// [Description(@"Occurs when the value of the ReadOnly property changes.")] [Category(@"Property Changed")] - public event EventHandler ReadOnlyChanged; + public event EventHandler? ReadOnlyChanged; /// /// Occurs when the current selection has changed. /// [Description(@"Occurs when the current selection has changed.")] [Category(@"Behavior")] - public event EventHandler SelectionChanged; + public event EventHandler? SelectionChanged; /// /// Occurs when the user takes an action that would change a protected range of text. /// [Description(@"Occurs when the user takes an action that would change a protected range of text.")] [Category(@"Behavior")] - public event EventHandler Protected; + public event EventHandler? Protected; /// /// Occurs when a hyperlink in the text is clicked. /// [Description(@"Occurs when a hyperlink in the text is clicked.")] [Category(@"Behavior")] - public event EventHandler LinkClicked; + public event EventHandler? LinkClicked; /// /// Occurs when the horizontal scroll bar is clicked. /// [Description(@"Occurs when the horizontal scroll bar is clicked.")] [Category(@"Behavior")] - public event EventHandler HScroll; + public event EventHandler? HScroll; /// /// Occurs when the vertical scroll bar is clicked. /// [Description(@"Occurs when the vertical scroll bar is clicked.")] [Category(@"Behavior")] - public event EventHandler VScroll; + public event EventHandler? VScroll; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; - internal event EventHandler MouseEnterControl; - internal event EventHandler MouseLeaveControl; + internal event EventHandler? MouseEnterControl; + internal event EventHandler? MouseLeaveControl; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupSeparator.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupSeparator.cs index a16efcc98..92c28a500 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupSeparator.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupSeparator.cs @@ -36,7 +36,7 @@ public class KryptonRibbonGroupSeparator : KryptonRibbonGroupContainer /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. @@ -45,7 +45,7 @@ public class KryptonRibbonGroupSeparator : KryptonRibbonGroupContainer [Description(@"Occurs when the design time context menu is requested.")] [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTextBox.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTextBox.cs index 419e49a49..39fc4f4ea 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTextBox.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTextBox.cs @@ -38,106 +38,106 @@ public class KryptonRibbonGroupTextBox : KryptonRibbonGroupItem /// [Description(@"Occurs when the value of the Text property changes.")] [Category(@"Property Changed")] - public event EventHandler TextChanged; + public event EventHandler? TextChanged; /// /// Occurs when the control receives focus. /// [Browsable(false)] - public event EventHandler GotFocus; + public event EventHandler? GotFocus; /// /// Occurs when the control loses focus. /// [Browsable(false)] - public event EventHandler LostFocus; + public event EventHandler? LostFocus; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyPressEventHandler KeyPress; + public event KeyPressEventHandler? KeyPress; /// /// Occurs when a key is released while the control has focus. /// [Description(@"Occurs when a key is released while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyUp; + public event KeyEventHandler? KeyUp; /// /// Occurs when a key is pressed while the control has focus. /// [Description(@"Occurs when a key is pressed while the control has focus.")] [Category(@"Key")] - public event KeyEventHandler KeyDown; + public event KeyEventHandler? KeyDown; /// /// Occurs before the KeyDown event when a key is pressed while focus is on this control. /// [Description(@"Occurs before the KeyDown event when a key is pressed while focus is on this control.")] [Category(@"Key")] - public event PreviewKeyDownEventHandler PreviewKeyDown; + public event PreviewKeyDownEventHandler? PreviewKeyDown; /// /// Occurs when the value of the AcceptsTab property changes. /// [Description(@"Occurs when the value of the AcceptsTab property changes.")] [Category(@"Property Changed")] - public event EventHandler AcceptsTabChanged; + public event EventHandler? AcceptsTabChanged; /// /// Occurs when the value of the HideSelection property changes. /// [Description(@"Occurs when the value of the HideSelection property changes.")] [Category(@"Property Changed")] - public event EventHandler HideSelectionChanged; + public event EventHandler? HideSelectionChanged; /// /// Occurs when the value of the TextAlign property changes. /// [Description(@"Occurs when the value of the TextAlign property changes.")] [Category(@"Property Changed")] - public event EventHandler TextAlignChanged; + public event EventHandler? TextAlignChanged; /// /// Occurs when the value of the Modified property changes. /// [Description(@"Occurs when the value of the Modified property changes.")] [Category(@"Property Changed")] - public event EventHandler ModifiedChanged; + public event EventHandler? ModifiedChanged; /// /// Occurs when the value of the Multiline property changes. /// [Description(@"Occurs when the value of the Multiline property changes.")] [Category(@"Property Changed")] - public event EventHandler MultilineChanged; + public event EventHandler? MultilineChanged; /// /// Occurs when the value of the ReadOnly property changes. /// [Description(@"Occurs when the value of the ReadOnly property changes.")] [Category(@"Property Changed")] - public event EventHandler ReadOnlyChanged; + public event EventHandler? ReadOnlyChanged; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; - internal event EventHandler MouseEnterControl; - internal event EventHandler MouseLeaveControl; + internal event EventHandler? MouseEnterControl; + internal event EventHandler? MouseLeaveControl; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupThemeComboBox.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupThemeComboBox.cs index 07e32034f..b281e89a9 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupThemeComboBox.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupThemeComboBox.cs @@ -55,7 +55,7 @@ public KryptonManager Manager { get; - } = new(); + } = new KryptonManager(); #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTrackBar.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTrackBar.cs index 283024b5a..973e1bf8d 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTrackBar.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTrackBar.cs @@ -41,37 +41,37 @@ public class KryptonRibbonGroupTrackBar : KryptonRibbonGroupItem /// Occurs when the control receives focus. /// [Browsable(false)] - public event EventHandler GotFocus; + public event EventHandler? GotFocus; /// /// Occurs when the control loses focus. /// [Browsable(false)] - public event EventHandler LostFocus; + public event EventHandler? LostFocus; /// /// Occurs when the value of the Value property changes. /// [Category(@"Action")] [Description(@"Occurs when the value of the Value property changes.")] - public event EventHandler ValueChanged; + public event EventHandler? ValueChanged; /// /// Occurs after the value of a property has changed. /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; - internal event EventHandler MouseEnterControl; - internal event EventHandler MouseLeaveControl; + internal event EventHandler? MouseEnterControl; + internal event EventHandler? MouseLeaveControl; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTriple.cs b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTriple.cs index dfb3b9f4d..da193338b 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTriple.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Group Contents/KryptonRibbonGroupTriple.cs @@ -38,112 +38,112 @@ public class KryptonRibbonGroupTriple : KryptonRibbonGroupContainer /// [Category(@"Ribbon")] [Description(@"Occurs after the value of a property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; /// /// Occurs when the design time wants to add a button. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddButton; + public event EventHandler? DesignTimeAddButton; /// /// Occurs when the design time wants to add a color button. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddColorButton; + public event EventHandler? DesignTimeAddColorButton; /// /// Occurs when the design time wants to add a checkbox. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddCheckBox; + public event EventHandler? DesignTimeAddCheckBox; /// /// Occurs when the design time wants to add a radio button. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddRadioButton; + public event EventHandler? DesignTimeAddRadioButton; /// /// Occurs when the design time wants to add a label. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddLabel; + public event EventHandler? DesignTimeAddLabel; /// /// Occurs when the design time wants to add a custom control. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddCustomControl; + public event EventHandler? DesignTimeAddCustomControl; /// /// Occurs when the design time wants to add a text box. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddTextBox; + public event EventHandler? DesignTimeAddTextBox; /// /// Occurs when the design time wants to add a masked text box. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddMaskedTextBox; + public event EventHandler? DesignTimeAddMaskedTextBox; /// /// Occurs when the design time wants to add a rich text box. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddRichTextBox; + public event EventHandler? DesignTimeAddRichTextBox; /// /// Occurs when the design time wants to add a combobox. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddComboBox; + public event EventHandler? DesignTimeAddComboBox; /// /// Occurs when the design time wants to add a numeric up down. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddNumericUpDown; + public event EventHandler? DesignTimeAddNumericUpDown; /// /// Occurs when the design time wants to add a domain up down. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddDomainUpDown; + public event EventHandler? DesignTimeAddDomainUpDown; /// /// Occurs when the design time wants to add a date time picker. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddDateTimePicker; + public event EventHandler? DesignTimeAddDateTimePicker; /// /// Occurs when the design time wants to add a track bar. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event EventHandler DesignTimeAddTrackBar; + public event EventHandler? DesignTimeAddTrackBar; /// /// Occurs when the design time context menu is requested. /// [EditorBrowsable(EditorBrowsableState.Never)] [Browsable(false)] - public event MouseEventHandler DesignTimeContextMenu; + public event MouseEventHandler? DesignTimeContextMenu; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Ribbon/Palette/ContextTabSet.cs b/Source/Krypton Components/Krypton.Ribbon/Palette/ContextTabSet.cs index 9a78b7346..f759d0d4f 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Palette/ContextTabSet.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Palette/ContextTabSet.cs @@ -86,7 +86,7 @@ public void UpdateLastTab([DisallowNull] ViewDrawRibbonTab tab) /// Screen position. public Point GetLeftScreenPosition() { - Point ret = new(FirstTab.ClientLocation.X - 1, FirstTab.ClientLocation.Y); + var ret = new Point(FirstTab.ClientLocation.X - 1, FirstTab.ClientLocation.Y); if (FirstTab.OwningControl != null) { @@ -102,7 +102,7 @@ public Point GetLeftScreenPosition() /// Screen position. public Point GetRightScreenPosition() { - Point ret = new(_lastTab.ClientRectangle.Right + 1, _lastTab.ClientLocation.Y); + var ret = new Point(_lastTab.ClientRectangle.Right + 1, _lastTab.ClientLocation.Y); if (_lastTab.OwningControl != null) { diff --git a/Source/Krypton Components/Krypton.Ribbon/Palette/RibbonRecentDocsTitleToContent.cs b/Source/Krypton Components/Krypton.Ribbon/Palette/RibbonRecentDocsTitleToContent.cs index 490c17e52..586bc493c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Palette/RibbonRecentDocsTitleToContent.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Palette/RibbonRecentDocsTitleToContent.cs @@ -17,7 +17,7 @@ namespace Krypton.Ribbon internal class RibbonRecentDocsTitleToContent : RibbonToContent { #region Static Fields - private static readonly Padding _titlePadding = new(5, 3, 5, 1); + private static readonly Padding _titlePadding = new Padding(5, 3, 5, 1); #endregion #region Instance Fields diff --git a/Source/Krypton Components/Krypton.Ribbon/Palette/RibbonThemeManager.cs b/Source/Krypton Components/Krypton.Ribbon/Palette/RibbonThemeManager.cs index 6763ca3df..3b90675e5 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Palette/RibbonThemeManager.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Palette/RibbonThemeManager.cs @@ -22,7 +22,8 @@ public class RibbonThemeManager /// The supported themes /// // TODO: This should use the list from Z:\GitHub\Krypton-Suite\Standard-Toolkit\Source\Krypton Components\Krypton.Toolkit\Converters\PaletteModeConverter.cs - private static readonly BiDictionary _supportedThemes = new(new Dictionary + private static readonly BiDictionary _supportedThemes = + new BiDictionary(new Dictionary { { @"Professional - System", PaletteMode.ProfessionalSystem }, { @"Professional - Office 2003", PaletteMode.ProfessionalOffice2003 }, @@ -198,9 +199,9 @@ public static void LoadCustomTheme(KryptonCustomPaletteBase palette, KryptonMana /// /// The palette mode. /// - public static string ReturnPaletteModeAsString(PaletteMode paletteMode) + public static string? ReturnPaletteModeAsString(PaletteMode paletteMode) { - PaletteModeConverter modeConverter = new(); + var modeConverter = new PaletteModeConverter(); return modeConverter.ConvertToString(paletteMode); } diff --git a/Source/Krypton Components/Krypton.Ribbon/Utilities/ExceptionHandler.cs b/Source/Krypton Components/Krypton.Ribbon/Utilities/ExceptionHandler.cs index 7838ea604..e45773382 100644 --- a/Source/Krypton Components/Krypton.Ribbon/Utilities/ExceptionHandler.cs +++ b/Source/Krypton Components/Krypton.Ribbon/Utilities/ExceptionHandler.cs @@ -65,13 +65,11 @@ public static void PrintStackTrace(Exception exc, string fileName) File.Create(fileName); } - StreamWriter writer = new(fileName); + using var writer = new StreamWriter(fileName); writer.Write(exc.ToString()); writer.Close(); - - writer.Dispose(); } catch (Exception e) { @@ -91,13 +89,11 @@ public static void PrintExceptionStackTrace(Exception exc, string fileName) File.Create(fileName); } - StreamWriter writer = new(fileName); + using var writer = new StreamWriter(fileName); writer.Write(exc.StackTrace); writer.Close(); - - writer.Dispose(); } catch (Exception e) { diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppButton.cs index b86109bfd..6ae7155aa 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppButton.cs @@ -57,7 +57,7 @@ public ViewDrawRibbonAppButton([DisallowNull] KryptonRibbon ribbon, bool bottomH /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonAppButton:" + Id; + $@"ViewDrawRibbonAppButton:{Id}"; /// /// Clean up any resources being used. @@ -132,7 +132,7 @@ public override void Layout([DisallowNull] ViewLayoutContext context) public override void RenderBefore(RenderContext context) { // New clipping region is at most our own client size - using Region combineRegion = new(_clipRect); + using var combineRegion = new Region(_clipRect); // Remember the current clipping region Region clipRegion = context.Graphics.Clip.Clone(); @@ -174,7 +174,8 @@ public override void RenderBefore(RenderContext context) localImage = CommonHelper.ScaleImageForSizedDisplay(localImage, localImage.Width * FactorDpiX, localImage.Height * FactorDpiY); - Rectangle imageRect = new(ClientLocation.X + (int)(7 * FactorDpiX), ClientLocation.Y + (int)(6 * FactorDpiY), (int)(24 * FactorDpiX), (int)(24 * FactorDpiY)); + var imageRect = new Rectangle(ClientLocation.X + (int)(7 * FactorDpiX), + ClientLocation.Y + (int)(6 * FactorDpiY), (int)(24 * FactorDpiX), (int)(24 * FactorDpiY)); if (_ribbon.Enabled) { @@ -183,7 +184,7 @@ public override void RenderBefore(RenderContext context) else { // Use a color matrix to convert to black and white - using ImageAttributes attribs = new(); + using var attribs = new ImageAttributes(); attribs.SetColorMatrix(CommonHelper.MatrixDisabled); context.Graphics.DrawImage(localImage, diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenu.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenu.cs index 627881c84..2d79ab04a 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenu.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenu.cs @@ -48,7 +48,7 @@ public ViewDrawRibbonAppMenu(IPaletteBack paletteBack, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonAppMenu:" + Id; + $@"ViewDrawRibbonAppMenu:{Id}"; #endregion @@ -68,7 +68,8 @@ public override void RenderAfter(RenderContext renderContext) if (screenRect.Contains(_fixedScreenRect) && (screenRect.Y == _fixedScreenRect.Y)) { // Position the element appropriately - using (ViewLayoutContext layoutContext = new(renderContext.Control, renderContext.Renderer)) + using (var layoutContext = + new ViewLayoutContext(renderContext.Control, renderContext.Renderer)) { layoutContext.DisplayRectangle = renderContext.TopControl.RectangleToClient(_fixedScreenRect); _fixedElement.Layout(layoutContext); diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuDocs.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuDocs.cs index 8b95a23e7..f067e9133 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuDocs.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuDocs.cs @@ -37,7 +37,7 @@ internal class ViewDrawRibbonAppMenuDocs : ViewLayoutDocker /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonAppMenuRecentDocs:" + Id; + $@"ViewDrawRibbonAppMenuRecentDocs:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuInner.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuInner.cs index 0b760d7ac..098c1d27c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuInner.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuInner.cs @@ -37,7 +37,7 @@ internal class ViewDrawRibbonAppMenuInner : ViewLayoutDocker /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonAppMenuInner:" + Id; + $@"ViewDrawRibbonAppMenuInner:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuOuter.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuOuter.cs index a481998ae..b014db9e7 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuOuter.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuOuter.cs @@ -37,7 +37,7 @@ internal class ViewDrawRibbonAppMenuOuter : ViewLayoutDocker /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonAppMenuOuter:" + Id; + $@"ViewDrawRibbonAppMenuOuter:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuRecentDoc.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuRecentDoc.cs index 6e531b94d..51c6b7f83 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuRecentDoc.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppMenuRecentDoc.cs @@ -49,10 +49,10 @@ public ViewDrawRibbonAppMenuRecentDec(KryptonRibbon ribbon, _maxWidth = maxWidth; Provider = provider; RecentDoc = recentDoc; - ShortcutText = index < 10 ? @"&" + index.ToString() : @"A"; + ShortcutText = index < 10 ? $@"&{index}" : @"A"; // Use docker to organize horizontal items - ViewLayoutDocker docker = new() + var docker = new ViewLayoutDocker { // End of line gap @@ -60,25 +60,28 @@ public ViewDrawRibbonAppMenuRecentDec(KryptonRibbon ribbon, }; // Add the text/extraText/Image entry - FixedContentValue entryContent = new(recentDoc.Text, recentDoc.ExtraText, recentDoc.Image, recentDoc.ImageTransparentColor); - RibbonRecentDocsEntryToContent entryPalette = new(ribbon.StateCommon.RibbonGeneral, ribbon.StateCommon.RibbonAppMenuDocsEntry); - ViewDrawContent entryDraw = new(entryPalette, entryContent, VisualOrientation.Top); + var entryContent = new FixedContentValue(recentDoc.Text, recentDoc.ExtraText, recentDoc.Image, + recentDoc.ImageTransparentColor); + var entryPalette = new RibbonRecentDocsEntryToContent(ribbon.StateCommon.RibbonGeneral, + ribbon.StateCommon.RibbonAppMenuDocsEntry); + ViewDrawContent entryDraw = new ViewDrawContent(entryPalette, entryContent, VisualOrientation.Top); docker.Add(entryDraw, ViewDockStyle.Fill); // Shortcut to Content gap docker.Add(new ViewLayoutSeparator(5), ViewDockStyle.Left); // Add the shortcut column - FixedContentValue shortcutContent = new(ShortcutText, null, null, Color.Empty); - RibbonRecentDocsShortcutToContent shortcutPalette = new(ribbon.StateCommon.RibbonGeneral, ribbon.StateCommon.RibbonAppMenuDocsEntry); - ViewDrawRibbonRecentShortcut shortcutDraw = new(shortcutPalette, shortcutContent); + FixedContentValue shortcutContent = new FixedContentValue(ShortcutText, null, null, Color.Empty); + var shortcutPalette = new RibbonRecentDocsShortcutToContent(ribbon.StateCommon.RibbonGeneral, + ribbon.StateCommon.RibbonAppMenuDocsEntry); + var shortcutDraw = new ViewDrawRibbonRecentShortcut(shortcutPalette, shortcutContent); docker.Add(shortcutDraw, ViewDockStyle.Left); // Start of line gap docker.Add(new ViewLayoutSeparator(3), ViewDockStyle.Left); // Attach a controller so menu item can be tracked and pressed - RecentDocController controller = new(Provider.ProviderViewManager, this, needPaintDelegate); + var controller = new RecentDocController(Provider.ProviderViewManager, this, needPaintDelegate); MouseController = controller; KeyController = controller; SourceController = controller; @@ -92,7 +95,7 @@ public ViewDrawRibbonAppMenuRecentDec(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonAppMenuRecentDec:" + Id; + $@"ViewDrawRibbonAppMenuRecentDec:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppTab.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppTab.cs index 2742daf6d..b472bac3f 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppTab.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonAppTab.cs @@ -55,7 +55,7 @@ public ViewDrawRibbonAppTab([DisallowNull] KryptonRibbon ribbon) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonAppTab:" + Id; + $@"ViewDrawRibbonAppTab:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonCaptionArea.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonCaptionArea.cs index 17613eb49..15b470765 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonCaptionArea.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonCaptionArea.cs @@ -731,9 +731,9 @@ public ViewDrawRibbonCaptionArea([DisallowNull] KryptonRibbon ribbon, CAPTION_TEXT_GAPS = (int)(FactorDpiX * 10); // 4 below and 6 above MIN_SELF_HEIGHT = (int)(FactorDpiY * 28); // Min height to show application button and the mini bar and context tabs // Remember incoming references - _ribbon = ribbon!; - _compositionArea = compositionArea!; - _needPaintDelegate = needPaintDelegate!; + _ribbon = ribbon; + _compositionArea = compositionArea; + _needPaintDelegate = needPaintDelegate; _needIntegratedDelegate = OnIntegratedNeedPaint; // Create a special redirector for overriding the border setting @@ -781,7 +781,7 @@ protected override void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawRibbonCaptionArea:" + Id; + $"ViewDrawRibbonCaptionArea:{Id}"; #endregion @@ -1046,10 +1046,12 @@ public bool DoesCurrentMouseDownEndAllTracking(Point pt) { // Search the context title elements for a match foreach (ViewBase child in ContextTitles) + { if ((child is ViewDrawRibbonContextTitle) && child.ClientRectangle.Contains(formPt)) { return false; } + } } } @@ -1067,7 +1069,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) Debug.Assert(context != null); // Enforce the minimum height - Size preferredSize = base.GetPreferredSize(context!); + Size preferredSize = base.GetPreferredSize(context); preferredSize.Height = Math.Max(_calculatedHeight, preferredSize.Height); return preferredSize; @@ -1110,11 +1112,11 @@ private void CreateViewElements() Target1 = _captionAppButton.AppButton, Target2 = _otherAppButton.AppButton }; - _appButtonController.NeedPaint += OnAppButtonNeedPaint; + _appButtonController.NeedPaint += OnAppButtonNeedPaint!; _captionAppButton.MouseController = _appButtonController; _otherAppButton.MouseController = _appButtonController; _appTabController = new AppTabController(_ribbon); - _appTabController.NeedPaint += OnAppButtonNeedPaint; + _appTabController.NeedPaint += OnAppButtonNeedPaint!; // When not showing the app button we show this spacer instead _spaceInsteadOfAppButton = new ViewLayoutSeparator(0) diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonCompoRightBorder.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonCompoRightBorder.cs index f1fc59902..92214b836 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonCompoRightBorder.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonCompoRightBorder.cs @@ -37,7 +37,7 @@ internal class ViewDrawRibbonCompoRightBorder : ViewLeaf /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonCompoRightBorder:" + Id; + $@"ViewDrawRibbonCompoRightBorder:{Id}"; #endregion @@ -56,7 +56,7 @@ public override string ToString() => /// Layout context. public override Size GetPreferredSize(ViewLayoutContext context) { - Size preferredSize = Size.Empty; + var preferredSize = Size.Empty; // We need an owning form to perform calculations if (CompOwnerForm is { ApplyCustomChrome: true, ApplyComposition: true }) @@ -65,7 +65,7 @@ public override Size GetPreferredSize(ViewLayoutContext context) try { // Create structure that will be populated by call to WM_GETTITLEBARINFOEX - PI.TITLEBARINFOEX tbi = new(); + var tbi = new PI.TITLEBARINFOEX(); tbi.cbSize = (uint) Marshal.SizeOf(tbi); // Ask the window for the title bar information diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonComposition.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonComposition.cs index 6df9e956b..0c1f0a2dd 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonComposition.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonComposition.cs @@ -58,7 +58,7 @@ public ViewDrawRibbonComposition([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonComposition:" + Id; + $@"ViewDrawRibbonComposition:{Id}"; #endregion @@ -142,7 +142,7 @@ public void CompNeedPaint(bool needLayout) /// Discover the preferred size of the element. /// /// Layout context. - public override Size GetPreferredSize(ViewLayoutContext context) => new (0, CONSTANT_COMPOSITION_HEIGHT); + public override Size GetPreferredSize(ViewLayoutContext context) => new Size(0, CONSTANT_COMPOSITION_HEIGHT); /// /// Perform a layout of the elements. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonContextTitle.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonContextTitle.cs index 9bd41408a..d4e698372 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonContextTitle.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonContextTitle.cs @@ -27,10 +27,10 @@ internal class ViewDrawRibbonContextTitle : ViewLeaf, private ContextTabSet _context; private readonly IPaletteRibbonBack _inherit; private readonly ContextToContent _contentProvider; - private IDisposable _mementoBack; - private IDisposable _mementoContentText; - private IDisposable _mementoContentShadow1; - private IDisposable _mementoContentShadow2; + private IDisposable? _mementoBack; + private IDisposable? _mementoContentText; + private IDisposable? _mementoContentShadow1; + private IDisposable? _mementoContentShadow2; private Rectangle _textRect; private readonly int TEXT_SIDE_GAP; // = 4; private readonly int TEXT_SIDE_GAP_COMPOSITION; // = 2; @@ -67,7 +67,7 @@ public ViewDrawRibbonContextTitle([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonContextTitle:" + Id; + $@"ViewDrawRibbonContextTitle:{Id}"; /// /// Clean up any resources being used. @@ -155,7 +155,7 @@ public override void Layout([DisallowNull] ViewLayoutContext context) ClientRectangle = context.DisplayRectangle; // We always extend an extra pixel downwards to draw over the containers border - Rectangle adjustRect = new(ClientRectangle.X, ClientRectangle.Y, ClientWidth, ClientHeight + 1); + var adjustRect = new Rectangle(ClientRectangle.X, ClientRectangle.Y, ClientWidth, ClientHeight + 1); // Get the client rect of the parent Rectangle parentRect = Parent.ClientRectangle; @@ -207,8 +207,8 @@ public override void Layout([DisallowNull] ViewLayoutContext context) // Office 2010 draws a shadow effect of the text if (_ribbon.RibbonShape is PaletteRibbonShape.Office2010 or PaletteRibbonShape.Office2013 or PaletteRibbonShape.Microsoft365) { - Rectangle shadowTextRect1 = new(_textRect.X - 1, _textRect.Y + 1, _textRect.Width, _textRect.Height); - Rectangle shadowTextRect2 = new(_textRect.X + 1, _textRect.Y + 1, _textRect.Width, _textRect.Height); + var shadowTextRect1 = new Rectangle(_textRect.X - 1, _textRect.Y + 1, _textRect.Width, _textRect.Height); + var shadowTextRect2 = new Rectangle(_textRect.X + 1, _textRect.Y + 1, _textRect.Width, _textRect.Height); _contentProvider.OverrideTextColor = Color.FromArgb(128, ControlPaint.Dark(GetRibbonBackColor1(PaletteState.Normal))); @@ -254,8 +254,8 @@ public override void RenderBefore(RenderContext context) // Use renderer to draw the tab background _mementoBack = context.Renderer.RenderRibbon.DrawRibbonTabContextTitle(_ribbon.RibbonShape, context, ClientRectangle, _ribbon.StateCommon.RibbonGeneral, this, _mementoBack); - Rectangle shadowTextRect1 = new(_textRect.X - 1, _textRect.Y + 1, _textRect.Width, _textRect.Height); - Rectangle shadowTextRect2 = new(_textRect.X + 1, _textRect.Y + 1, _textRect.Width, _textRect.Height); + var shadowTextRect1 = new Rectangle(_textRect.X - 1, _textRect.Y + 1, _textRect.Width, _textRect.Height); + var shadowTextRect2 = new Rectangle(_textRect.X + 1, _textRect.Y + 1, _textRect.Width, _textRect.Height); _contentProvider.OverrideTextColor = Color.FromArgb(128, ControlPaint.Dark(GetRibbonBackColor1(PaletteState.Normal))); @@ -417,8 +417,8 @@ private void RenderOnComposition(RenderContext context) { // Convert the clipping rectangle from floating to int version RectangleF rectClipF = context.Graphics.ClipBounds; - Rectangle rectClip = new((int)rectClipF.X, (int)rectClipF.Y, - (int)rectClipF.Width, (int)rectClipF.Height); + var rectClip = new Rectangle((int)rectClipF.X, (int)rectClipF.Y, (int)rectClipF.Width, + (int)rectClipF.Height); // No point drawing unless some of the client fits into the clipping area if (rectClip.IntersectsWith(ClientRectangle)) @@ -427,7 +427,7 @@ private void RenderOnComposition(RenderContext context) IntPtr gDC = context.Graphics.GetHdc(); IntPtr mDC = PI.CreateCompatibleDC(gDC); - PI.BITMAPINFO bmi = new(); + var bmi = new PI.BITMAPINFO(); bmi.biSize = (uint)Marshal.SizeOf(bmi); bmi.biWidth = ClientWidth; bmi.biHeight = -ClientHeight; @@ -442,13 +442,11 @@ private void RenderOnComposition(RenderContext context) // To call the renderer we need to convert from Win32 HDC to Graphics object using (Graphics bitmapG = Graphics.FromHdc(mDC)) { - Rectangle renderClientRect = new(0, 0, ClientWidth, ClientHeight); + var renderClientRect = new Rectangle(0, 0, ClientWidth, ClientHeight); // Create new render context that uses the bitmap graphics instance - using (RenderContext bitmapContext = new(context.Control, - bitmapG, - renderClientRect, - context.Renderer)) + using (var bitmapContext = new RenderContext(context.Control, + bitmapG, renderClientRect, context.Renderer)) { // Finally we get the renderer to draw the background for the bitmap _mementoBack = context.Renderer.RenderRibbon.DrawRibbonTabContextTitle(_ribbon.RibbonShape, bitmapContext, renderClientRect, _ribbon.StateCommon.RibbonGeneral, this, _mementoBack); @@ -460,17 +458,17 @@ private void RenderOnComposition(RenderContext context) PI.SelectObject(mDC, hFont); // Get renderer for the correct state - VisualStyleRenderer renderer = new(VisualStyleElement.Window.Caption.Active); + var renderer = new VisualStyleRenderer(VisualStyleElement.Window.Caption.Active); // Create structures needed for theme drawing call - PI.RECT textBounds = new() + var textBounds = new PI.RECT { left = TEXT_SIDE_GAP_COMPOSITION, top = 0, right = ClientWidth - (TEXT_SIDE_GAP_COMPOSITION * 2), bottom = ClientHeight }; - PI.DTTOPTS dttOpts = new() + var dttOpts = new PI.DTTOPTS { dwSize = Marshal.SizeOf(typeof(PI.DTTOPTS)), dwFlags = PI.DTT_COMPOSITED | PI.DTT_GLOWSIZE | PI.DTT_TEXTCOLOR, diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignBase.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignBase.cs index af7f22d57..5231fad0c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignBase.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignBase.cs @@ -47,8 +47,8 @@ public ViewDrawRibbonDesignBase([DisallowNull] KryptonRibbon ribbon, Add(new ViewDrawContent(_contentProvider, this, VisualOrientation.Top)); // Use a controller to change state because of mouse movement - ViewHightlightController controller = new(this, needPaint); - controller.Click += OnClick; + var controller = new ViewHightlightController(this, needPaint); + controller.Click += OnClick!; MouseController = controller; } @@ -58,7 +58,7 @@ public ViewDrawRibbonDesignBase([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonDesignBase:" + Id; + $@"ViewDrawRibbonDesignBase:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignCluster.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignCluster.cs index af946e9f2..0a5184e02 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignCluster.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignCluster.cs @@ -66,7 +66,7 @@ public ViewDrawRibbonDesignCluster(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonDesignCluster:" + Id; + $@"ViewDrawRibbonDesignCluster:{Id}"; #endregion @@ -108,8 +108,8 @@ protected override void OnClick(object sender, EventArgs e) }; // Create child items - ToolStripMenuItem menuButton = new("Add Cluster Button", null, OnAddButton); - ToolStripMenuItem menuColorButton = new("Add Cluster Color Button", null, OnAddColorButton); + var menuButton = new ToolStripMenuItem("Add Cluster Button", null, OnAddButton); + var menuColorButton = new ToolStripMenuItem("Add Cluster Color Button", null, OnAddColorButton); // Assign correct images menuButton.ImageIndex = 0; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroup.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroup.cs index b17cd7af7..cb503c856 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroup.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroup.cs @@ -38,7 +38,7 @@ public ViewDrawRibbonDesignGroup(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonDesignGroup:" + Id; + $@"ViewDrawRibbonDesignGroup:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupContainer.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupContainer.cs index 2b943c8a8..1aaed802a 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupContainer.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupContainer.cs @@ -68,7 +68,7 @@ public ViewDrawRibbonDesignGroupContainer(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonDesignGroupContainer:" + Id; + $@"ViewDrawRibbonDesignGroupContainer:{Id}"; #endregion @@ -110,10 +110,10 @@ protected override void OnClick(object sender, EventArgs e) }; // Create child items - ToolStripMenuItem menuTriple = new("Add Triple", null, OnAddTriple); - ToolStripMenuItem menuLines = new("Add Lines", null, OnAddLines); - ToolStripMenuItem menuSeparator = new("Add Separator", null, OnAddSeparator); - ToolStripMenuItem menuGallery = new("Add Gallery", null, OnAddGallery); + var menuTriple = new ToolStripMenuItem("Add Triple", null, OnAddTriple); + var menuLines = new ToolStripMenuItem("Add Lines", null, OnAddLines); + var menuSeparator = new ToolStripMenuItem("Add Separator", null, OnAddSeparator); + var menuGallery = new ToolStripMenuItem("Add Gallery", null, OnAddGallery); // Assign correct images menuTriple.ImageIndex = 0; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupLines.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupLines.cs index 25a8884c8..6c2f5062d 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupLines.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupLines.cs @@ -83,7 +83,7 @@ public ViewDrawRibbonDesignGroupLines(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonDesignGroupLines:" + Id; + $@"ViewDrawRibbonDesignGroupLines:{Id}"; #endregion @@ -133,21 +133,21 @@ protected override void OnClick(object sender, EventArgs e) }; // Create child items - ToolStripMenuItem menuButton = new("Add Button", null, OnAddButton); - ToolStripMenuItem menuColorButton = new("Add Color Button", null, OnAddColorButton); - ToolStripMenuItem menuCheckBox = new("Add CheckBox", null, OnAddCheckBox); - ToolStripMenuItem menuRadioButton = new("Add RadioButton", null, OnAddRadioButton); - ToolStripMenuItem menuLabel = new("Add Label", null, OnAddLabel); - ToolStripMenuItem menuCustomControl = new("Add Custom Control", null, OnAddCustomControl); - ToolStripMenuItem menuCluster = new("Add Cluster", null, OnAddCluster); - ToolStripMenuItem menuTextBox = new("Add TextBox", null, OnAddTextBox); - ToolStripMenuItem menuMaskedTextBox = new("Add MaskedTextBox", null, OnAddMaskedTextBox); - ToolStripMenuItem menuRichTextBox = new("Add RichTextBox", null, OnAddRichTextBox); - ToolStripMenuItem menuComboBox = new("Add ComboBox", null, OnAddComboBox); - ToolStripMenuItem menuNumericUpDown = new("Add NumericUpDown", null, OnAddNumericUpDown); - ToolStripMenuItem menuDomainUpDown = new("Add DomainUpDown", null, OnAddDomainUpDown); - ToolStripMenuItem menuDateTimePicker = new("Add DateTimePicker", null, OnAddDateTimePicker); - ToolStripMenuItem menuTrackBar = new("Add TrackBar", null, OnAddTrackBar); + var menuButton = new ToolStripMenuItem("Add Button", null, OnAddButton); + var menuColorButton = new ToolStripMenuItem("Add Color Button", null, OnAddColorButton); + var menuCheckBox = new ToolStripMenuItem("Add CheckBox", null, OnAddCheckBox); + var menuRadioButton = new ToolStripMenuItem("Add RadioButton", null, OnAddRadioButton); + var menuLabel = new ToolStripMenuItem("Add Label", null, OnAddLabel); + var menuCustomControl = new ToolStripMenuItem("Add Custom Control", null, OnAddCustomControl); + var menuCluster = new ToolStripMenuItem("Add Cluster", null, OnAddCluster); + var menuTextBox = new ToolStripMenuItem("Add TextBox", null, OnAddTextBox); + var menuMaskedTextBox = new ToolStripMenuItem("Add MaskedTextBox", null, OnAddMaskedTextBox); + var menuRichTextBox = new ToolStripMenuItem("Add RichTextBox", null, OnAddRichTextBox); + var menuComboBox = new ToolStripMenuItem("Add ComboBox", null, OnAddComboBox); + var menuNumericUpDown = new ToolStripMenuItem("Add NumericUpDown", null, OnAddNumericUpDown); + var menuDomainUpDown = new ToolStripMenuItem("Add DomainUpDown", null, OnAddDomainUpDown); + var menuDateTimePicker = new ToolStripMenuItem("Add DateTimePicker", null, OnAddDateTimePicker); + var menuTrackBar = new ToolStripMenuItem("Add TrackBar", null, OnAddTrackBar); // Assign correct images menuButton.ImageIndex = 0; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupTriple.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupTriple.cs index d2add2835..c1d2a1ef6 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupTriple.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignGroupTriple.cs @@ -88,7 +88,7 @@ public ViewDrawRibbonDesignGroupTriple(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonDesignGroupTriple:" + Id; + $@"ViewDrawRibbonDesignGroupTriple:{Id}"; #endregion @@ -138,20 +138,20 @@ protected override void OnClick(object sender, EventArgs e) }; // Create child items - ToolStripMenuItem menuButton = new("Add Button", null, OnAddButton); - ToolStripMenuItem menuColorButton = new("Add Color Button", null, OnAddColorButton); - ToolStripMenuItem menuCheckBox = new("Add CheckBox", null, OnAddCheckBox); - ToolStripMenuItem menuCustomControl = new("Add Custom Control", null, OnAddCustomControl); - ToolStripMenuItem menuLabel = new("Add Label", null, OnAddLabel); - ToolStripMenuItem menuRadioButton = new("Add RadioButton", null, OnAddRadioButton); - ToolStripMenuItem menuTextBox = new("Add TextBox", null, OnAddTextBox); - ToolStripMenuItem menuMaskedTextBox = new("Add MaskedTextBox", null, OnAddMaskedTextBox); - ToolStripMenuItem menuRichTextBox = new("Add RichTextBox", null, OnAddRichTextBox); - ToolStripMenuItem menuComboBox = new("Add ComboBox", null, OnAddComboBox); - ToolStripMenuItem menuNumericUpDown = new("Add NumericUpDown", null, OnAddNumericUpDown); - ToolStripMenuItem menuDomainUpDown = new("Add DomainUpDown", null, OnAddDomainUpDown); - ToolStripMenuItem menuDateTimePicker = new("Add DateTimePicker", null, OnAddDateTimePicker); - ToolStripMenuItem menuTrackBar = new("Add TrackBar", null, OnAddTrackBar); + var menuButton = new ToolStripMenuItem("Add Button", null, OnAddButton); + var menuColorButton = new ToolStripMenuItem("Add Color Button", null, OnAddColorButton); + var menuCheckBox = new ToolStripMenuItem("Add CheckBox", null, OnAddCheckBox); + var menuCustomControl = new ToolStripMenuItem("Add Custom Control", null, OnAddCustomControl); + var menuLabel = new ToolStripMenuItem("Add Label", null, OnAddLabel); + var menuRadioButton = new ToolStripMenuItem("Add RadioButton", null, OnAddRadioButton); + var menuTextBox = new ToolStripMenuItem("Add TextBox", null, OnAddTextBox); + var menuMaskedTextBox = new ToolStripMenuItem("Add MaskedTextBox", null, OnAddMaskedTextBox); + var menuRichTextBox = new ToolStripMenuItem("Add RichTextBox", null, OnAddRichTextBox); + var menuComboBox = new ToolStripMenuItem("Add ComboBox", null, OnAddComboBox); + var menuNumericUpDown = new ToolStripMenuItem("Add NumericUpDown", null, OnAddNumericUpDown); + var menuDomainUpDown = new ToolStripMenuItem("Add DomainUpDown", null, OnAddDomainUpDown); + var menuDateTimePicker = new ToolStripMenuItem("Add DateTimePicker", null, OnAddDateTimePicker); + var menuTrackBar = new ToolStripMenuItem("Add TrackBar", null, OnAddTrackBar); // Assign correct images menuButton.ImageIndex = 0; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignTab.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignTab.cs index d09a43379..ca7ca1d23 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignTab.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDesignTab.cs @@ -38,7 +38,7 @@ public ViewDrawRibbonDesignTab(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonDesignTab:" + Id; + $@"ViewDrawRibbonDesignTab:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDropArrow.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDropArrow.cs index bda8a6f07..cf24e953d 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDropArrow.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonDropArrow.cs @@ -42,7 +42,7 @@ public ViewDrawRibbonDropArrow([DisallowNull] KryptonRibbon ribbon) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonDropArrow:" + Id; + $@"ViewDrawRibbonDropArrow:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGalleryButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGalleryButton.cs index e7126829e..85cb3e5c2 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGalleryButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGalleryButton.cs @@ -37,7 +37,7 @@ internal class ViewDrawRibbonGalleryButton : ViewLeaf, IContentValues /// /// Occurs when the mouse is used to left click the target. /// - public event MouseEventHandler Click; + public event MouseEventHandler? Click; #endregion #region Identity @@ -64,7 +64,7 @@ public ViewDrawRibbonGalleryButton(PaletteBase? palette, _paletteBorder = new PaletteBorderToPalette(palette, PaletteBorderStyle.ButtonGallery); _paletteContent = new PaletteContentToPalette(palette, PaletteContentStyle.ButtonGallery); _controller = new GalleryButtonController(this, needPaint, alignment != PaletteRelativeAlign.Far); - _controller.Click += OnButtonClick; + _controller.Click += OnButtonClick!; base.MouseController = _controller; } @@ -74,7 +74,7 @@ public ViewDrawRibbonGalleryButton(PaletteBase? palette, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGalleryButton:" + Id; + $@"ViewDrawRibbonGalleryButton:{Id}"; /// /// Clean up any resources being used. @@ -183,8 +183,8 @@ public override void RenderBefore(RenderContext context) Color borderColor = _paletteBorder.GetBorderColor1(State); // Draw the border last to overlap the background - using AntiAlias aa = new(context.Graphics); - using Pen borderPen = new(borderColor); + using var aa = new AntiAlias(context.Graphics); + using var borderPen = new Pen(borderColor); context.Graphics.DrawPath(borderPen, borderPath); } } @@ -203,7 +203,7 @@ public void ForceLeave() #region Implementation private GraphicsPath CreateBorderPath(Rectangle rect) { - GraphicsPath path = new(); + var path = new GraphicsPath(); switch (_alignment) { diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGalleryItem.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGalleryItem.cs index 8902e2dce..3c6877921 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGalleryItem.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGalleryItem.cs @@ -50,7 +50,7 @@ public ViewDrawRibbonGalleryItem(KryptonGallery gallery, // Need controller to handle tracking/pressing etc _controller = new GalleryItemController(this, layout, needPaint); - _controller.Click += OnItemClick; + _controller.Click += OnItemClick!; MouseController = _controller; SourceController = _controller; KeyController = _controller; @@ -62,7 +62,7 @@ public ViewDrawRibbonGalleryItem(KryptonGallery gallery, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGalleryItem:" + Id; + $@"ViewDrawRibbonGalleryItem:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroup.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroup.cs index 95e92c45b..e58474756 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroup.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroup.cs @@ -118,7 +118,7 @@ public ViewDrawRibbonGroup([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawRibbonGroup:" + Id; + $"ViewDrawRibbonGroup:{Id}"; /// /// Clean up any resources being used. @@ -190,7 +190,7 @@ public void GetGroupKeyTips(KeyTipInfoList keyTipList) Rectangle viewRect = _ribbon.KeyTipToScreen(_layoutCollapsedMain); // The keytip should be centered at the bottom of the view - Point screenPt = new(viewRect.Left + (viewRect.Width / 2), viewRect.Bottom + 4); + var screenPt = new Point(viewRect.Left + (viewRect.Width / 2), viewRect.Bottom + 4); keyTipList.Add(new KeyTipInfo(true, _ribbonGroup.KeyTipGroup, screenPt, _layoutCollapsedMain.ClientRectangle, _collapsedController)); @@ -204,7 +204,7 @@ public void GetGroupKeyTips(KeyTipInfoList keyTipList) Rectangle viewRect = _ribbon.KeyTipToScreen(_viewNormalDialog); // The keytip should be centered at the bottom of the view - Point screenPt = new(viewRect.Left + (viewRect.Width / 2), viewRect.Bottom + 4); + var screenPt = new Point(viewRect.Left + (viewRect.Width / 2), viewRect.Bottom + 4); keyTipList.Add(new KeyTipInfo(true, _ribbonGroup.KeyTipDialogLauncher, screenPt, _viewNormalDialog.ClientRectangle, _viewNormalDialog.DialogButtonController)); @@ -450,7 +450,7 @@ public GroupSizeWidth[] GetPossibleSizes(ViewLayoutContext context) // Find the size of the group when collapsed var collapsed = Collapsed; Collapsed = true; - GroupSizeWidth retCollapsed = new(GetPreferredSize(context).Width, null); + var retCollapsed = new GroupSizeWidth(GetPreferredSize(context).Width, null); Collapsed = collapsed; // We never allow a collapsed state if that is smaller than the smallest valid permutation @@ -613,8 +613,8 @@ private void CreateNormalView() if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the group - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; _layoutNormalMain.MouseController = controller; } @@ -657,21 +657,21 @@ private void CreateCollapsedView() // Add a mouse controller so we know when it has been pressed _collapsedController = new CollapsedGroupController(_ribbon, _layoutCollapsedMain, _needPaint); - _collapsedController.Click += OnCollapsedClick; + _collapsedController.Click += OnCollapsedClick!; _layoutCollapsedMain.MouseController = _collapsedController; _layoutCollapsedMain.SourceController = _collapsedController; _layoutCollapsedMain.KeyController = _collapsedController; // Reduce layout area to remove the group border - ViewLayoutRibbonPadding layoutCollapsedInsidePadding = new(COLLAPSED_PADDING); + var layoutCollapsedInsidePadding = new ViewLayoutRibbonPadding(COLLAPSED_PADDING); _layoutCollapsedMain.Add(layoutCollapsedInsidePadding, ViewDockStyle.Fill); // Position at top an area that is padded for containing the image - ViewLayoutDocker layoutCollapsedInside = new(); + var layoutCollapsedInside = new ViewLayoutDocker(); layoutCollapsedInsidePadding.Add(layoutCollapsedInside); // Create the layout for the second line of text - ViewLayoutRibbonRowCenter layoutCollapsedText2 = new(); + var layoutCollapsedText2 = new ViewLayoutRibbonRowCenter(); _viewCollapsedText2 = new ViewDrawRibbonGroupText(_ribbon, _ribbonGroup, false); layoutCollapsedText2.Add(_viewCollapsedText2); layoutCollapsedText2.Add(new ViewLayoutRibbonSeparator(2, 10, true)); @@ -688,7 +688,7 @@ private void CreateCollapsedView() layoutCollapsedInside.Add(_layoutCollapsedImagePadding, ViewDockStyle.Top); // Finally we add the actual drawing element for the collapsed group image - ViewDrawRibbonGroupImage drawCollapsedImage = new(_ribbon, _ribbonGroup, this); + var drawCollapsedImage = new ViewDrawRibbonGroupImage(_ribbon, _ribbonGroup, this); _layoutCollapsedImagePadding.Add(drawCollapsedImage); } diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButton.cs index e60072bcd..1f24c4f35 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButton.cs @@ -92,7 +92,7 @@ public ViewDrawRibbonGroupButton([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupButton:" + Id; + $@"ViewDrawRibbonGroupButton:{Id}"; /// /// Clean up any resources being used. @@ -359,11 +359,11 @@ private void CreateLargeButtonView() } // Create the layout docker for the contents of the button - ViewLayoutDocker contentLayout = new(); + var contentLayout = new ViewLayoutDocker(); // Add the large button at the top _viewLargeImage = new ViewDrawRibbonGroupButtonImage(_ribbon, GroupButton, true); - ViewLayoutRibbonCenterPadding largeImagePadding = new(_largeImagePadding) + var largeImagePadding = new ViewLayoutRibbonCenterPadding(_largeImagePadding) { _viewLargeImage }; @@ -415,7 +415,7 @@ private void CreateMediumSmallButtonView() } // Create the layout docker for the contents of the button - ViewLayoutDocker contentLayout = new(); + var contentLayout = new ViewLayoutDocker(); // Create the image and drop down content _viewMediumSmallImage = new ViewDrawRibbonGroupButtonImage(_ribbon, GroupButton, false); @@ -424,7 +424,7 @@ private void CreateMediumSmallButtonView() _viewMediumSmallDropArrow = new ViewDrawRibbonDropArrow(_ribbon); _viewMediumSmallText2Sep2 = new ViewLayoutRibbonSeparator(3, false); _viewMediumSmallText2Sep3 = new ViewLayoutRibbonSeparator(3, false); - ViewLayoutRibbonCenterPadding imagePadding = new(_smallImagePadding) + var imagePadding = new ViewLayoutRibbonCenterPadding(_smallImagePadding) { _viewMediumSmallImage }; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonBackBorder.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonBackBorder.cs index 65d1d18b1..ba9133b10 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonBackBorder.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonBackBorder.cs @@ -35,17 +35,17 @@ internal class ViewDrawRibbonGroupButtonBackBorder : ViewComposite /// /// Occurs when the button is left clicked. /// - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the button is right clicked. /// - public event MouseEventHandler ContextClick; + public event MouseEventHandler? ContextClick; /// /// Occurs when the drop down button is clicked. /// - public event EventHandler DropDown; + public event EventHandler? DropDown; #endregion #region Identity @@ -89,13 +89,13 @@ public ViewDrawRibbonGroupButtonBackBorder([DisallowNull] KryptonRibbon ribbon, DrawNonTrackingAreas = true; // Create delegate used to process end of click action - FinishDelegate = ActionFinished; + FinishDelegate = ActionFinished!; // Attach a controller to this element for the pressing of the button Controller = new GroupButtonController(_ribbon, this, needPaint); - Controller.Click += OnClick; - Controller.ContextClick += OnContextClick; - Controller.DropDown += OnDropDown; + Controller.Click += OnClick!; + Controller.ContextClick += OnContextClick!; + Controller.DropDown += OnDropDown!; MouseController = Controller; SourceController = Controller; KeyController = Controller; @@ -108,7 +108,7 @@ public ViewDrawRibbonGroupButtonBackBorder([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupButtonBackBorder:" + Id; + $@"ViewDrawRibbonGroupButtonBackBorder:{Id}"; /// /// Clean up any resources being used. @@ -203,7 +203,7 @@ public GroupButtonType ButtonType /// /// Gets access to the associated finish delegate. /// - public EventHandler FinishDelegate { get; } + public EventHandler? FinishDelegate { get; } #endregion @@ -291,11 +291,11 @@ private void DrawVerticalSplit(RenderContext context, PaletteState drawState) { // We need the rectangle that represents just the split area var partialHeight = ClientHeight / 3 * 2; - Rectangle partialRect = new(ClientLocation, new Size(ClientWidth, partialHeight)); - Rectangle splitRectangle = Controller.SplitRectangle; - Rectangle aboveSplitRect = new(ClientLocation, new Size(ClientWidth, splitRectangle.Y - ClientLocation.Y)); - Rectangle splitterRect = new(splitRectangle.Location, new Size(ClientWidth, 1)); - Rectangle belowSplitRect = new(ClientLocation.X, splitRectangle.Y, ClientWidth, splitRectangle.Height); + var partialRect = new Rectangle(ClientLocation, new Size(ClientWidth, partialHeight)); + var splitRectangle = Controller.SplitRectangle; + var aboveSplitRect = new Rectangle(ClientLocation, new Size(ClientWidth, splitRectangle.Y - ClientLocation.Y)); + var splitterRect = new Rectangle(splitRectangle.Location, new Size(ClientWidth, 1)); + var belowSplitRect = new Rectangle(ClientLocation.X, splitRectangle.Y, ClientWidth, splitRectangle.Height); var splitWithFading = SplitWithFading(drawState); switch (drawState) @@ -312,7 +312,7 @@ private void DrawVerticalSplit(RenderContext context, PaletteState drawState) // Draw the background for the click and split areas if (Controller.MouseInSplit) { - using (Clipping clipToSplitter = new(context.Graphics, belowSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, belowSplitRect)) { if (splitWithFading) { @@ -327,13 +327,14 @@ private void DrawVerticalSplit(RenderContext context, PaletteState drawState) } } - Rectangle belowSplitRect1 = new(belowSplitRect.X, belowSplitRect.Y + 1, belowSplitRect.Width, belowSplitRect.Height - 1); - using (Clipping clipToSplitter = new(context.Graphics, belowSplitRect1)) + var belowSplitRect1 = new Rectangle(belowSplitRect.X, belowSplitRect.Y + 1, + belowSplitRect.Width, belowSplitRect.Height - 1); + using (var clipToSplitter = new Clipping(context.Graphics, belowSplitRect1)) { DrawBackground(_paletteBack, context, ClientRectangle, PaletteState.Tracking); } - using (Clipping clipToSplitter = new(context.Graphics, aboveSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, aboveSplitRect)) { if (splitWithFading) { @@ -350,12 +351,12 @@ private void DrawVerticalSplit(RenderContext context, PaletteState drawState) } else { - using (Clipping clipToSplitter = new(context.Graphics, aboveSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, aboveSplitRect)) { DrawBackground(_paletteBack, context, partialRect, PaletteState.Tracking); } - using (Clipping clipToSplitter = new(context.Graphics, belowSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, belowSplitRect)) { if (splitWithFading) { @@ -372,7 +373,7 @@ private void DrawVerticalSplit(RenderContext context, PaletteState drawState) } // Draw the single pixel splitter line - using (Clipping clipToSplitter = new(context.Graphics, splitterRect)) + using (var clipToSplitter = new Clipping(context.Graphics, splitterRect)) { DrawBorder(_paletteBorderAll, context, new Rectangle(splitRectangle.X, splitRectangle.Y, splitRectangle.Width, 2), PaletteState.Tracking); } @@ -384,7 +385,7 @@ private void DrawVerticalSplit(RenderContext context, PaletteState drawState) // Draw the background for the click and split areas if (Controller.MouseInSplit) { - using (Clipping clipToSplitter = new(context.Graphics, belowSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, belowSplitRect)) { if (splitWithFading) { @@ -399,13 +400,14 @@ private void DrawVerticalSplit(RenderContext context, PaletteState drawState) } } - Rectangle belowSplitRect1 = new(belowSplitRect.X, belowSplitRect.Y + 1, belowSplitRect.Width, belowSplitRect.Height - 1); - using (Clipping clipToSplitter = new(context.Graphics, belowSplitRect1)) + var belowSplitRect1 = new Rectangle(belowSplitRect.X, belowSplitRect.Y + 1, + belowSplitRect.Width, belowSplitRect.Height - 1); + using (var clipToSplitter = new Clipping(context.Graphics, belowSplitRect1)) { DrawBackground(_paletteBack, context, ClientRectangle, PaletteState.Pressed); } - using (Clipping clipToSplitter = new(context.Graphics, aboveSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, aboveSplitRect)) { if (splitWithFading) { @@ -422,12 +424,12 @@ private void DrawVerticalSplit(RenderContext context, PaletteState drawState) } else { - using (Clipping clipToSplitter = new(context.Graphics, aboveSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, aboveSplitRect)) { DrawBackground(_paletteBack, context, partialRect, PaletteState.Pressed); } - using (Clipping clipToSplitter = new(context.Graphics, belowSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, belowSplitRect)) { if (splitWithFading) { @@ -447,7 +449,7 @@ private void DrawVerticalSplit(RenderContext context, PaletteState drawState) DrawBorder(_paletteBorder, context, ClientRectangle, PaletteState.Tracking); // Draw the single pixel splitter line - using (Clipping clipToSplitter = new(context.Graphics, splitterRect)) + using (var clipToSplitter = new Clipping(context.Graphics, splitterRect)) { DrawBorder(_paletteBorderAll, context, new Rectangle(splitRectangle.X, splitRectangle.Y, splitRectangle.Width, 2), PaletteState.Pressed); } @@ -455,12 +457,12 @@ private void DrawVerticalSplit(RenderContext context, PaletteState drawState) // Draw the border for the click and split areas if (Controller.MouseInSplit) { - using Clipping clipToSplitter = new(context.Graphics, belowSplitRect); + using var clipToSplitter = new Clipping(context.Graphics, belowSplitRect); DrawBorder(_paletteBorder, context, ClientRectangle, PaletteState.Pressed); } else { - using Clipping clipToSplitter = new(context.Graphics, aboveSplitRect); + using var clipToSplitter = new Clipping(context.Graphics, aboveSplitRect); DrawBorder(_paletteBorder, context, ClientRectangle, PaletteState.Pressed); } break; @@ -474,10 +476,10 @@ private void DrawVerticalSplit(RenderContext context, PaletteState drawState) private void DrawHorizontalSplit(RenderContext context, PaletteState drawState) { // We need the rectangle that represents just the split area - Rectangle splitRectangle = Controller.SplitRectangle; - Rectangle beforeSplitRect = new(ClientLocation, new Size(splitRectangle.X - ClientLocation.X, ClientHeight)); - Rectangle splitterRect = new(splitRectangle.Location, new Size(1, ClientHeight)); - Rectangle afterSplitRect = new(splitRectangle.X, ClientLocation.Y, splitRectangle.Width, ClientHeight); + var splitRectangle = Controller.SplitRectangle; + var beforeSplitRect = new Rectangle(ClientLocation, new Size(splitRectangle.X - ClientLocation.X, ClientHeight)); + var splitterRect = new Rectangle(splitRectangle.Location, new Size(1, ClientHeight)); + var afterSplitRect = new Rectangle(splitRectangle.X, ClientLocation.Y, splitRectangle.Width, ClientHeight); var splitWithFading = SplitWithFading(drawState); switch (drawState) @@ -494,7 +496,7 @@ private void DrawHorizontalSplit(RenderContext context, PaletteState drawState) // Draw the background for the click and split areas if (Controller.MouseInSplit) { - using (Clipping clipToSplitter = new(context.Graphics, afterSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, afterSplitRect)) { if (splitWithFading) { @@ -509,13 +511,14 @@ private void DrawHorizontalSplit(RenderContext context, PaletteState drawState) } } - Rectangle afterSplitRect1 = new(afterSplitRect.X + 1, afterSplitRect.Y, afterSplitRect.Width - 1, afterSplitRect.Height); - using (Clipping clipToSplitter = new(context.Graphics, afterSplitRect1)) + var afterSplitRect1 = new Rectangle(afterSplitRect.X + 1, afterSplitRect.Y, + afterSplitRect.Width - 1, afterSplitRect.Height); + using (var clipToSplitter = new Clipping(context.Graphics, afterSplitRect1)) { DrawBackground(_paletteBack, context, ClientRectangle, PaletteState.Tracking); } - using (Clipping clipToSplitter = new(context.Graphics, beforeSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, beforeSplitRect)) { if (splitWithFading) { @@ -532,12 +535,12 @@ private void DrawHorizontalSplit(RenderContext context, PaletteState drawState) } else { - using (Clipping clipToSplitter = new(context.Graphics, beforeSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, beforeSplitRect)) { DrawBackground(_paletteBack, context, ClientRectangle, PaletteState.Tracking); } - using (Clipping clipToSplitter = new(context.Graphics, afterSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, afterSplitRect)) { if (splitWithFading) { @@ -554,7 +557,7 @@ private void DrawHorizontalSplit(RenderContext context, PaletteState drawState) } // Draw the single pixel splitter line - using (Clipping clipToSplitter = new(context.Graphics, splitterRect)) + using (var clipToSplitter = new Clipping(context.Graphics, splitterRect)) { DrawBorder(_paletteBorderAll, context, new Rectangle(splitRectangle.X, splitRectangle.Y, 2, splitRectangle.Height), PaletteState.Tracking); } @@ -576,7 +579,7 @@ private void DrawHorizontalSplit(RenderContext context, PaletteState drawState) // Draw the background for the click and split areas if (Controller.MouseInSplit) { - using (Clipping clipToSplitter = new(context.Graphics, afterSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, afterSplitRect)) { if (splitWithFading) { @@ -591,13 +594,14 @@ private void DrawHorizontalSplit(RenderContext context, PaletteState drawState) } } - Rectangle afterSplitRect1 = new(afterSplitRect.X + 1, afterSplitRect.Y, afterSplitRect.Width - 1, afterSplitRect.Height); - using (Clipping clipToSplitter = new(context.Graphics, afterSplitRect1)) + var afterSplitRect1 = new Rectangle(afterSplitRect.X + 1, afterSplitRect.Y, + afterSplitRect.Width - 1, afterSplitRect.Height); + using (var clipToSplitter = new Clipping(context.Graphics, afterSplitRect1)) { DrawBackground(_paletteBack, context, ClientRectangle, PaletteState.Pressed); } - using (Clipping clipToSplitter = new(context.Graphics, beforeSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, beforeSplitRect)) { if (splitWithFading) { @@ -614,12 +618,12 @@ private void DrawHorizontalSplit(RenderContext context, PaletteState drawState) } else { - using (Clipping clipToSplitter = new(context.Graphics, beforeSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, beforeSplitRect)) { DrawBackground(_paletteBack, context, ClientRectangle, PaletteState.Pressed); } - using (Clipping clipToSplitter = new(context.Graphics, afterSplitRect)) + using (var clipToSplitter = new Clipping(context.Graphics, afterSplitRect)) { if (splitWithFading) { @@ -636,7 +640,7 @@ private void DrawHorizontalSplit(RenderContext context, PaletteState drawState) } // Draw the single pixel splitter line - using (Clipping clipToSplitter = new(context.Graphics, splitterRect)) + using (var clipToSplitter = new Clipping(context.Graphics, splitterRect)) { DrawBorder(_paletteBorderAll, context, new Rectangle(splitRectangle.X, splitRectangle.Y, 2, splitRectangle.Height), PaletteState.Pressed); } @@ -656,12 +660,12 @@ private void DrawHorizontalSplit(RenderContext context, PaletteState drawState) // Draw the border for the click and split areas if (Controller.MouseInSplit) { - using Clipping clipToSplitter = new(context.Graphics, afterSplitRect); + using var clipToSplitter = new Clipping(context.Graphics, afterSplitRect); DrawBorder(_paletteBorder, context, ClientRectangle, PaletteState.Pressed); } else { - using Clipping clipToSplitter = new(context.Graphics, beforeSplitRect); + using var clipToSplitter = new Clipping(context.Graphics, beforeSplitRect); DrawBorder(_paletteBorder, context, ClientRectangle, PaletteState.Pressed); } } @@ -729,7 +733,7 @@ private void ActionFinished(object sender, EventArgs e) // Remove any popups that result from an action occurring if ((_ribbon != null) && fireAction) { - _ribbon.Actionoccurred(); + _ribbon.ActionOccurred(); } // Remove the fixed pressed appearance diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonImage.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonImage.cs index 0caca5f81..67e2794c4 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonImage.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonImage.cs @@ -52,7 +52,7 @@ public ViewDrawRibbonGroupButtonImage(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupButtonImage:" + Id; + $@"ViewDrawRibbonGroupButtonImage:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonText.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonText.cs index fdf403c14..6e1f6d585 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonText.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupButtonText.cs @@ -64,7 +64,7 @@ public ViewDrawRibbonGroupButtonText([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupButtonText:" + Id; + $@"ViewDrawRibbonGroupButtonText:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBox.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBox.cs index 8f6019ddd..8525b2bff 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBox.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBox.cs @@ -30,14 +30,14 @@ internal class ViewDrawRibbonGroupCheckBox : ViewComposite, private ViewDrawRibbonGroupCheckBoxText _viewLargeText1; private ViewDrawRibbonGroupCheckBoxText _viewLargeText2; private GroupCheckBoxController? _viewLargeController; - private readonly EventHandler _finishDelegateLarge; + private readonly EventHandler? _finishDelegateLarge; private ViewLayoutRibbonCheckBox _viewMediumSmall; private ViewLayoutRibbonRowCenter _viewMediumSmallCenter; private ViewDrawRibbonGroupCheckBoxImage _viewMediumSmallImage; private ViewDrawRibbonGroupCheckBoxText _viewMediumSmallText1; private ViewDrawRibbonGroupCheckBoxText _viewMediumSmallText2; private GroupCheckBoxController? _viewMediumSmallController; - private readonly EventHandler _finishDelegateMediumSmall; + private readonly EventHandler? _finishDelegateMediumSmall; private readonly NeedPaintHandler _needPaint; private GroupItemSize _currentSize; #endregion @@ -91,7 +91,7 @@ public ViewDrawRibbonGroupCheckBox([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupCheckBox:" + Id; + $@"ViewDrawRibbonGroupCheckBox:{Id}"; /// /// Clean up any resources being used. @@ -321,7 +321,7 @@ private void CreateLargeCheckBoxView() // Add the large button at the top _viewLargeImage = new ViewDrawRibbonGroupCheckBoxImage(_ribbon, GroupCheckBox, true); - ViewLayoutRibbonCenterPadding largeImagePadding = new(_largeImagePadding) + ViewLayoutRibbonCenterPadding largeImagePadding = new ViewLayoutRibbonCenterPadding(_largeImagePadding) { _viewLargeImage }; @@ -360,7 +360,7 @@ private void CreateMediumSmallCheckBoxView() _viewMediumSmallImage = new ViewDrawRibbonGroupCheckBoxImage(_ribbon, GroupCheckBox, false); _viewMediumSmallText1 = new ViewDrawRibbonGroupCheckBoxText(_ribbon, GroupCheckBox, true); _viewMediumSmallText2 = new ViewDrawRibbonGroupCheckBoxText(_ribbon, GroupCheckBox, false); - ViewLayoutRibbonCenterPadding imagePadding = new(_smallImagePadding) + ViewLayoutRibbonCenterPadding imagePadding = new ViewLayoutRibbonCenterPadding(_smallImagePadding) { _viewMediumSmallImage }; @@ -473,7 +473,7 @@ private void OnContextClick(object sender, MouseEventArgs e) private void ActionFinishedLarge(object sender, EventArgs e) { // Remove any popups that result from an action occuring - _ribbon?.Actionoccurred(); + _ribbon?.ActionOccurred(); // Remove the fixed pressed appearance _viewLargeController.RemoveFixed(); @@ -482,7 +482,7 @@ private void ActionFinishedLarge(object sender, EventArgs e) private void ActionFinishedMediumSmall(object sender, EventArgs e) { // Remove any popups that result from an action occuring - _ribbon?.Actionoccurred(); + _ribbon?.ActionOccurred(); // Remove the fixed pressed appearance _viewMediumSmallController.RemoveFixed(); diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBoxImage.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBoxImage.cs index 22eec6ccb..3843dc413 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBoxImage.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBoxImage.cs @@ -45,7 +45,7 @@ public ViewDrawRibbonGroupCheckBoxImage(KryptonRibbon ribbon, _large = large; // Use redirector to get the check box images and redirect to parent palette - PaletteRedirectCheckBox? redirectImages = new(ribbon.GetRedirector(), ribbon.StateCommon.RibbonImages.CheckBox); + var redirectImages = new PaletteRedirectCheckBox(ribbon.GetRedirector(), ribbon.StateCommon.RibbonImages.CheckBox); // Create drawing element _drawCheckBox = new ViewDrawCheckBox(redirectImages); @@ -63,7 +63,7 @@ public ViewDrawRibbonGroupCheckBoxImage(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupCheckBoxImage:" + Id; + $@"ViewDrawRibbonGroupCheckBoxImage:{Id}"; #endregion @@ -128,7 +128,7 @@ public override void Layout(ViewLayoutContext context) ClientRectangle = context.DisplayRectangle; // Get the size of the check box when it is drawn - Rectangle checkBoxRect = new(Point.Empty, _drawCheckBox.GetPreferredSize(context)); + var checkBoxRect = new Rectangle(Point.Empty, _drawCheckBox.GetPreferredSize(context)); // Decide on correct position within our rectangle if (_large) diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBoxText.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBoxText.cs index a22d2d79f..5062f1866 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBoxText.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCheckBoxText.cs @@ -64,7 +64,7 @@ public ViewDrawRibbonGroupCheckBoxText([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupCheckBoxText:" + Id; + $@"ViewDrawRibbonGroupCheckBoxText:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButton.cs index 689b1e031..3c8f5b3c3 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButton.cs @@ -80,7 +80,7 @@ public ViewDrawRibbonGroupClusterButton([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupClusterButton:" + Id; + $@"ViewDrawRibbonGroupClusterButton:{Id}"; /// /// Clean up any resources being used. @@ -366,7 +366,7 @@ private void CreateView() } // Create the layout docker for the contents of the button - ViewLayoutDocker contentLayout = new(); + var contentLayout = new ViewLayoutDocker(); // Create the image and drop down content _viewMediumSmallImage = new ViewDrawRibbonGroupClusterButtonImage(_ribbon, GroupClusterButton); @@ -377,7 +377,7 @@ private void CreateView() _viewMediumSmallDropArrow = new ViewDrawRibbonDropArrow(_ribbon); _viewMediumSmallText2Sep1 = new ViewLayoutRibbonSeparator(3, false); _viewMediumSmallText2Sep2 = new ViewLayoutRibbonSeparator(3, false); - ViewLayoutRibbonCenterPadding imagePadding = new(_smallImagePadding) + var imagePadding = new ViewLayoutRibbonCenterPadding(_smallImagePadding) { _viewMediumSmallImage }; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButtonImage.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButtonImage.cs index cf72b6ba2..7de7671f4 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButtonImage.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButtonImage.cs @@ -47,7 +47,7 @@ public ViewDrawRibbonGroupClusterButtonImage(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupClusterButtonImage:" + Id; + $@"ViewDrawRibbonGroupClusterButtonImage:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButtonText.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButtonText.cs index 45e08539e..80ecc3907 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButtonText.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterButtonText.cs @@ -61,7 +61,7 @@ public ViewDrawRibbonGroupClusterButtonText([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupClusterButtonText:" + Id; + $@"ViewDrawRibbonGroupClusterButtonText:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButton.cs index 4b50d42c8..44ab363b3 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButton.cs @@ -80,7 +80,7 @@ public ViewDrawRibbonGroupClusterColorButton([DisallowNull] KryptonRibbon ribbon /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"KryptonRibbonGroupClusterColorButton:" + Id; + $@"KryptonRibbonGroupClusterColorButton:{Id}"; /// /// Clean up any resources being used. @@ -366,7 +366,7 @@ private void CreateView() } // Create the layout docker for the contents of the button - ViewLayoutDocker contentLayout = new(); + var contentLayout = new ViewLayoutDocker(); // Create the image and drop down content _viewMediumSmallImage = new ViewDrawRibbonGroupClusterColorButtonImage(_ribbon, GroupClusterColorButton); @@ -377,7 +377,7 @@ private void CreateView() _viewMediumSmallDropArrow = new ViewDrawRibbonDropArrow(_ribbon); _viewMediumSmallText2Sep1 = new ViewLayoutRibbonSeparator(3, false); _viewMediumSmallText2Sep2 = new ViewLayoutRibbonSeparator(3, false); - ViewLayoutRibbonCenterPadding imagePadding = new(_smallImagePadding) + var imagePadding = new ViewLayoutRibbonCenterPadding(_smallImagePadding) { _viewMediumSmallImage }; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButtonImage.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButtonImage.cs index 587c9e997..5ba9640b7 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButtonImage.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButtonImage.cs @@ -54,7 +54,7 @@ public ViewDrawRibbonGroupClusterColorButtonImage(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupClusterColorButtonImage:" + Id; + $@"ViewDrawRibbonGroupClusterColorButtonImage:{Id}"; /// /// Clean up any resources being used. @@ -107,7 +107,7 @@ protected override Image DrawImage if ((newImage != null) && (_compositeImage == null)) { // Create a copy of the source image - Bitmap copyBitmap = new(newImage); + var copyBitmap = new Bitmap(newImage); // Paint over the image with a color indicator using (Graphics g = Graphics.FromImage(copyBitmap)) @@ -115,10 +115,10 @@ protected override Image DrawImage // If the color is not defined, i.e. it is empty then... if (_selectedColor.Equals(Color.Empty)) { - // Indicate the absense of a color by drawing a border around + // Indicate the absence of a color by drawing a border around // the selected color area, thus indicating the area inside the // block is blank/empty. - using Pen borderPen = new(_emptyBorderColor); + using var borderPen = new Pen(_emptyBorderColor); g.DrawRectangle(borderPen, new Rectangle(_selectedRect.X, _selectedRect.Y, _selectedRect.Width - 1, @@ -127,7 +127,7 @@ protected override Image DrawImage else { // We have a valid selected color so draw a solid block of color - using SolidBrush colorBrush = new(_selectedColor); + using var colorBrush = new SolidBrush(_selectedColor); g.FillRectangle(colorBrush, _selectedRect); } } diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButtonText.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButtonText.cs index 677e0a073..b71b1c14a 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButtonText.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterColorButtonText.cs @@ -61,7 +61,7 @@ public ViewDrawRibbonGroupClusterColorButtonText([DisallowNull] KryptonRibbon ri /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupClusterColorButtonText:" + Id; + $@"ViewDrawRibbonGroupClusterColorButtonText:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterEdge.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterEdge.cs index 2e9872725..bba6da71e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterEdge.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterEdge.cs @@ -52,10 +52,8 @@ public override void RenderBefore(RenderContext context) // Let base class perform standard drawing first base.RenderBefore(context); - Rectangle drawRect = new(ClientLocation.X, - ClientLocation.Y + ClientWidth, - ClientWidth, - ClientHeight - (ClientWidth * 2)); + var drawRect = new Rectangle(ClientLocation.X, ClientLocation.Y + ClientWidth, ClientWidth, + ClientHeight - (ClientWidth * 2)); context.Renderer.RenderRibbon.DrawRibbonClusterEdge(_ribbon.RibbonShape, context, drawRect, _palette, State); } diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterSeparator.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterSeparator.cs index 335de6f0b..77fad61ed 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterSeparator.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupClusterSeparator.cs @@ -45,7 +45,7 @@ public ViewDrawRibbonGroupClusterSeparator([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupClusterSeparator:" + Id; + $@"ViewDrawRibbonGroupClusterSeparator:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButton.cs index f0e096eb5..041440500 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButton.cs @@ -90,7 +90,7 @@ public ViewDrawRibbonGroupColorButton([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupColorButton:" + Id; + $@"ViewDrawRibbonGroupColorButton:{Id}"; /// /// Clean up any resources being used. @@ -357,11 +357,11 @@ private void CreateLargeButtonView() } // Create the layout docker for the contents of the button - ViewLayoutDocker contentLayout = new(); + var contentLayout = new ViewLayoutDocker(); // Add the large button at the top _viewLargeImage = new ViewDrawRibbonGroupColorButtonImage(_ribbon, GroupColorButton, true); - ViewLayoutRibbonCenterPadding largeImagePadding = new(_largeImagePadding) + var largeImagePadding = new ViewLayoutRibbonCenterPadding(_largeImagePadding) { _viewLargeImage }; @@ -413,7 +413,7 @@ private void CreateMediumSmallButtonView() } // Create the layout docker for the contents of the button - ViewLayoutDocker contentLayout = new(); + var contentLayout = new ViewLayoutDocker(); // Create the image and drop down content _viewMediumSmallImage = new ViewDrawRibbonGroupColorButtonImage(_ribbon, GroupColorButton, false); @@ -422,7 +422,7 @@ private void CreateMediumSmallButtonView() _viewMediumSmallDropArrow = new ViewDrawRibbonDropArrow(_ribbon); _viewMediumSmallText2Sep2 = new ViewLayoutRibbonSeparator(3, false); _viewMediumSmallText2Sep3 = new ViewLayoutRibbonSeparator(3, false); - ViewLayoutRibbonCenterPadding imagePadding = new(_smallImagePadding) + var imagePadding = new ViewLayoutRibbonCenterPadding(_smallImagePadding) { _viewMediumSmallImage }; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButtonImage.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButtonImage.cs index ffbf137ba..f2529cad4 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButtonImage.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButtonImage.cs @@ -63,7 +63,7 @@ public ViewDrawRibbonGroupColorButtonImage(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupColorButtonImage:" + Id; + $@"ViewDrawRibbonGroupColorButtonImage:{Id}"; #endregion @@ -114,7 +114,7 @@ protected override Image DrawImage if ((newImage != null) && (_compositeImage == null)) { // Create a copy of the source image - Bitmap copyBitmap = new(newImage); + var copyBitmap = new Bitmap(newImage); // Paint over the image with a color indicator using (Graphics g = Graphics.FromImage(copyBitmap)) @@ -124,10 +124,10 @@ protected override Image DrawImage // If the color is not defined, i.e. it is empty then... if (_selectedColor.Equals(Color.Empty)) { - // Indicate the absense of a color by drawing a border around + // Indicate the absence of a color by drawing a border around // the selected color area, thus indicating the area inside the // block is blank/empty. - using Pen borderPen = new(_emptyBorderColor); + using var borderPen = new Pen(_emptyBorderColor); g.DrawRectangle(borderPen, new Rectangle(selectedRect.X, selectedRect.Y, selectedRect.Width - 1, @@ -136,7 +136,7 @@ protected override Image DrawImage else { // We have a valid selected color so draw a solid block of color - using SolidBrush colorBrush = new(_selectedColor); + using var colorBrush = new SolidBrush(_selectedColor); g.FillRectangle(colorBrush, selectedRect); } } diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButtonText.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButtonText.cs index 958334e8a..0721bd5fd 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButtonText.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupColorButtonText.cs @@ -64,7 +64,7 @@ public ViewDrawRibbonGroupColorButtonText([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupColorButtonText:" + Id; + $@"ViewDrawRibbonGroupColorButtonText:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupComboBox.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupComboBox.cs index 6e33684b3..a1959081c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupComboBox.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupComboBox.cs @@ -60,8 +60,8 @@ public ViewDrawRibbonGroupComboBox([DisallowNull] KryptonRibbon ribbon, if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the combobox - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; MouseController = controller; } @@ -71,8 +71,8 @@ public ViewDrawRibbonGroupComboBox([DisallowNull] KryptonRibbon ribbon, KeyController = _controller; // We need to rest visibility of the combobox for each layout cycle - _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction; - _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction; + _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction!; + _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction!; // Define back reference to view for the combo box definition GroupComboBox.ComboBoxView = this; @@ -81,7 +81,7 @@ public ViewDrawRibbonGroupComboBox([DisallowNull] KryptonRibbon ribbon, GroupComboBox.ViewPaintDelegate = needPaint; // Hook into changes in the ribbon custom definition - GroupComboBox.PropertyChanged += OnComboBoxPropertyChanged; + GroupComboBox.PropertyChanged += OnComboBoxPropertyChanged!; NULL_CONTROL_WIDTH = (int)(50 * FactorDpiX); } @@ -92,7 +92,7 @@ public ViewDrawRibbonGroupComboBox([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupComboBox:" + Id; + $@"ViewDrawRibbonGroupComboBox:{Id}"; /// /// Clean up any resources being used. @@ -105,12 +105,12 @@ protected override void Dispose(bool disposing) if (GroupComboBox != null) { // Must unhook to prevent memory leaks - GroupComboBox.MouseEnterControl -= OnMouseEnterControl; - GroupComboBox.MouseLeaveControl -= OnMouseLeaveControl; + GroupComboBox.MouseEnterControl -= OnMouseEnterControl!; + GroupComboBox.MouseLeaveControl -= OnMouseLeaveControl!; GroupComboBox.ViewPaintDelegate = null; - GroupComboBox.PropertyChanged -= OnComboBoxPropertyChanged; - _ribbon.ViewRibbonManager.LayoutAfter -= OnLayoutAction; - _ribbon.ViewRibbonManager.LayoutBefore -= OnLayoutAction; + GroupComboBox.PropertyChanged -= OnComboBoxPropertyChanged!; + _ribbon.ViewRibbonManager.LayoutAfter -= OnLayoutAction!; + _ribbon.ViewRibbonManager.LayoutBefore -= OnLayoutAction!; // Remove association with definition GroupComboBox.ComboBoxView = null; @@ -126,7 +126,7 @@ protected override void Dispose(bool disposing) /// /// Gets access to the owning group combobox instance. /// - public KryptonRibbonGroupComboBox GroupComboBox { get; private set; } + public KryptonRibbonGroupComboBox? GroupComboBox { get; private set; } #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCustomControl.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCustomControl.cs index 2dd9a6ad6..e9e909bce 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCustomControl.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupCustomControl.cs @@ -51,8 +51,8 @@ public ViewDrawRibbonGroupCustomControl([DisallowNull] KryptonRibbon ribbon, _currentSize = GroupCustomControl.ItemSizeCurrent; // Hook into the custom control events - GroupCustomControl.MouseEnterControl += OnMouseEnterControl; - GroupCustomControl.MouseLeaveControl += OnMouseLeaveControl; + GroupCustomControl.MouseEnterControl += OnMouseEnterControl!; + GroupCustomControl.MouseLeaveControl += OnMouseLeaveControl!; // Associate this view with the source component (required for design time selection) Component = GroupCustomControl; @@ -60,8 +60,8 @@ public ViewDrawRibbonGroupCustomControl([DisallowNull] KryptonRibbon ribbon, if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the label - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; MouseController = controller; } @@ -71,8 +71,8 @@ public ViewDrawRibbonGroupCustomControl([DisallowNull] KryptonRibbon ribbon, KeyController = _controller; // We need to rest visibility of the custom control for each layout cycle - _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction; - _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction; + _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction!; + _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction!; // Provide back reference to the custom control definition GroupCustomControl.CustomControlView = this; @@ -91,7 +91,7 @@ public ViewDrawRibbonGroupCustomControl([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupCustom:" + Id; + $@"ViewDrawRibbonGroupCustom:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDateTimePicker.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDateTimePicker.cs index 9038d9d33..e57319ba6 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDateTimePicker.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDateTimePicker.cs @@ -51,8 +51,8 @@ public ViewDrawRibbonGroupDateTimePicker([DisallowNull] KryptonRibbon ribbon, _currentSize = GroupDateTimePicker.ItemSizeCurrent; // Hook into the date time picker events - GroupDateTimePicker.MouseEnterControl += OnMouseEnterControl; - GroupDateTimePicker.MouseLeaveControl += OnMouseLeaveControl; + GroupDateTimePicker.MouseEnterControl += OnMouseEnterControl!; + GroupDateTimePicker.MouseLeaveControl += OnMouseLeaveControl!; // Associate this view with the source component (required for design time selection) Component = GroupDateTimePicker; @@ -60,8 +60,8 @@ public ViewDrawRibbonGroupDateTimePicker([DisallowNull] KryptonRibbon ribbon, if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the date time picker - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; MouseController = controller; } @@ -71,8 +71,8 @@ public ViewDrawRibbonGroupDateTimePicker([DisallowNull] KryptonRibbon ribbon, KeyController = _controller; // We need to rest visibility of the date time picker for each layout cycle - _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction; - _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction; + _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction!; + _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction!; // Define back reference to view for the text box definition GroupDateTimePicker.DateTimePickerView = this; @@ -91,7 +91,7 @@ public ViewDrawRibbonGroupDateTimePicker([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupDateTimePicker:" + Id; + $@"ViewDrawRibbonGroupDateTimePicker:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDialogButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDialogButton.cs index dec788952..25a1a3dcc 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDialogButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDialogButton.cs @@ -48,7 +48,7 @@ public ViewDrawRibbonGroupDialogButton([DisallowNull] KryptonRibbon ribbon, _ribbonGroup = ribbonGroup; // Attach a controller to this element for the pressing of the button - DialogLauncherButtonController controller = new(ribbon, this, needPaint); + var controller = new DialogLauncherButtonController(ribbon, this, needPaint); controller.Click += OnClick; MouseController = controller; SourceController = controller; @@ -65,7 +65,7 @@ public ViewDrawRibbonGroupDialogButton([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupButton:" + Id; + $@"ViewDrawRibbonGroupButton:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDomainUpDown.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDomainUpDown.cs index adf51a1c6..caa4ba5aa 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDomainUpDown.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupDomainUpDown.cs @@ -51,8 +51,8 @@ public ViewDrawRibbonGroupDomainUpDown([DisallowNull] KryptonRibbon ribbon, _currentSize = GroupDomainUpDown.ItemSizeCurrent; // Hook into the domain up-down events - GroupDomainUpDown.MouseEnterControl += OnMouseEnterControl; - GroupDomainUpDown.MouseLeaveControl += OnMouseLeaveControl; + GroupDomainUpDown.MouseEnterControl += OnMouseEnterControl!; + GroupDomainUpDown.MouseLeaveControl += OnMouseLeaveControl!; // Associate this view with the source component (required for design time selection) Component = GroupDomainUpDown; @@ -60,8 +60,8 @@ public ViewDrawRibbonGroupDomainUpDown([DisallowNull] KryptonRibbon ribbon, if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the domain up-down - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; MouseController = controller; } @@ -71,8 +71,8 @@ public ViewDrawRibbonGroupDomainUpDown([DisallowNull] KryptonRibbon ribbon, KeyController = _controller; // We need to rest visibility of the domain up-down for each layout cycle - _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction; - _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction; + _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction!; + _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction!; // Define back reference to view for the domain up-down definition GroupDomainUpDown.DomainUpDownView = this; @@ -91,7 +91,7 @@ public ViewDrawRibbonGroupDomainUpDown([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupDomainUpDown:" + Id; + $@"ViewDrawRibbonGroupDomainUpDown:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGallery.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGallery.cs index 7ccc01da5..8757dce4b 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGallery.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGallery.cs @@ -64,8 +64,8 @@ public ViewDrawRibbonGroupGallery([DisallowNull] KryptonRibbon ribbon, CreateLargeButtonView(); // Hook into the gallery events - GroupGallery.MouseEnterControl += OnMouseEnterControl; - GroupGallery.MouseLeaveControl += OnMouseLeaveControl; + GroupGallery.MouseEnterControl += OnMouseEnterControl!; + GroupGallery.MouseLeaveControl += OnMouseLeaveControl!; // Associate this view with the source component (required for design time selection) Component = GroupGallery; @@ -73,8 +73,8 @@ public ViewDrawRibbonGroupGallery([DisallowNull] KryptonRibbon ribbon, if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the gallery - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; MouseController = controller; } @@ -84,8 +84,8 @@ public ViewDrawRibbonGroupGallery([DisallowNull] KryptonRibbon ribbon, KeyController = _controller; // We need to rest visibility of the gallery for each layout cycle - _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction; - _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction; + _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction!; + _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction!; // Define back reference to view for the gallery definition GroupGallery.GalleryView = this; @@ -105,7 +105,7 @@ public ViewDrawRibbonGroupGallery([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupGallery:" + Id; + $@"ViewDrawRibbonGroupGallery:{Id}"; /// /// Clean up any resources being used. @@ -328,7 +328,7 @@ public ItemSizeWidth[] GetPossibleSizes(ViewLayoutContext context) ((int)GroupGallery.ItemSizeMinimum <= (int)GroupItemSize.Medium)) { LastGallery.InternalPreferredItemSize = new Size(GroupGallery.MediumItemCount, 1); - ItemSizeWidth mediumWidth = new(GroupItemSize.Medium, GetPreferredSize(context).Width); + var mediumWidth = new ItemSizeWidth(GroupItemSize.Medium, GetPreferredSize(context).Width); if (_ribbon.InDesignHelperMode) { @@ -358,7 +358,7 @@ public ItemSizeWidth[] GetPossibleSizes(ViewLayoutContext context) _currentSize = GroupItemSize.Small; // Get the width of the large button view - ItemSizeWidth smallWidth = new(GroupItemSize.Small, GetPreferredSize(context).Width); + var smallWidth = new ItemSizeWidth(GroupItemSize.Small, GetPreferredSize(context).Width); if (_ribbon.InDesignHelperMode) { @@ -388,7 +388,7 @@ public ItemSizeWidth[] GetPossibleSizes(ViewLayoutContext context) } else { - return new ItemSizeWidth[] { new(GroupItemSize.Large, NULL_CONTROL_WIDTH) }; + return new ItemSizeWidth[] { new ItemSizeWidth(GroupItemSize.Large, NULL_CONTROL_WIDTH) }; } } @@ -560,11 +560,11 @@ private void CreateLargeButtonView() } // Create the layout docker for the contents of the button - ViewLayoutDocker contentLayout = new(); + var contentLayout = new ViewLayoutDocker(); // Add the large button at the top _viewLargeImage = new ViewDrawRibbonGroupGalleryImage(_ribbon, GroupGallery); - ViewLayoutRibbonCenterPadding largeImagePadding = new(_largeImagePadding) + var largeImagePadding = new ViewLayoutRibbonCenterPadding(_largeImagePadding) { _viewLargeImage }; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGalleryImage.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGalleryImage.cs index 305e8b7a6..ff9f9af05 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGalleryImage.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGalleryImage.cs @@ -47,7 +47,7 @@ public ViewDrawRibbonGroupGalleryImage(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupGalleryImage:" + Id; + $@"ViewDrawRibbonGroupGalleryImage:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGalleryText.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGalleryText.cs index 0e0704431..b314d0917 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGalleryText.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupGalleryText.cs @@ -64,7 +64,7 @@ public ViewDrawRibbonGroupGalleryText([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupGalleryText:" + Id; + $@"ViewDrawRibbonGroupGalleryText:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupImage.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupImage.cs index 2abba7430..9cf101683 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupImage.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupImage.cs @@ -68,7 +68,7 @@ public ViewDrawRibbonGroupImage([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupImage:" + Id; + $@"ViewDrawRibbonGroupImage:{Id}"; /// /// Clean up any resources being used. @@ -189,9 +189,7 @@ public override void RenderBefore(RenderContext context) if (_ribbonGroup.Image != null) { // Determine the rectangle for the fixed size of image drawing - Rectangle drawRect = new(new Point(ClientLocation.X + IMAGE_OFFSET_X, - ClientLocation.Y + _offsetY), - _imageSize); + var drawRect = new Rectangle(new Point(ClientLocation.X + IMAGE_OFFSET_X, ClientLocation.Y + _offsetY), _imageSize); context.Graphics.DrawImage(_ribbonGroup.Image, drawRect); } diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupImageBase.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupImageBase.cs index 0b0778585..18b69f8de 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupImageBase.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupImageBase.cs @@ -37,7 +37,7 @@ public ViewDrawRibbonGroupImageBase([DisallowNull] KryptonRibbon ribbon) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupImageBase:" + Id; + $@"ViewDrawRibbonGroupImageBase:{Id}"; #endregion @@ -76,7 +76,7 @@ public override void RenderBefore(RenderContext context) { // Have to rescale the image when drawing, so need to use own // mechanism for the converting of the image to a disabled one - using ImageAttributes attribs = new(); + using var attribs = new ImageAttributes(); // Use attributes to wash out the color to look disabled attribs.SetColorMatrix(CommonHelper.MatrixDisabled); diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabel.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabel.cs index 2e7367030..429634b89 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabel.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabel.cs @@ -86,7 +86,7 @@ public ViewDrawRibbonGroupLabel([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupLabel:" + Id; + $@"ViewDrawRibbonGroupLabel:{Id}"; /// /// Clean up any resources being used. @@ -274,8 +274,8 @@ private void CreateLargeLabelView() if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the label - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; _viewLarge.MouseController = controller; } @@ -311,8 +311,8 @@ private void CreateMediumSmallLabelView() if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the label - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; _viewMediumSmall.MouseController = controller; } diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabelImage.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabelImage.cs index 280fd87a9..bcc3c94e5 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabelImage.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabelImage.cs @@ -53,7 +53,7 @@ public ViewDrawRibbonGroupLabelImage(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupLabelImage:" + Id; + $@"ViewDrawRibbonGroupLabelImage:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabelText.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabelText.cs index 702d97adb..bafaba12c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabelText.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupLabelText.cs @@ -66,7 +66,7 @@ public ViewDrawRibbonGroupLabelText([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupLabelText:" + Id; + $@"ViewDrawRibbonGroupLabelText:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupMaskedTextBox.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupMaskedTextBox.cs index 2cda357d8..510f2246a 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupMaskedTextBox.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupMaskedTextBox.cs @@ -51,8 +51,8 @@ public ViewDrawRibbonGroupMaskedTextBox([DisallowNull] KryptonRibbon ribbon, _currentSize = GroupMaskedTextBox.ItemSizeCurrent; // Hook into the masked textbox events - GroupMaskedTextBox.MouseEnterControl += OnMouseEnterControl; - GroupMaskedTextBox.MouseLeaveControl += OnMouseLeaveControl; + GroupMaskedTextBox.MouseEnterControl += OnMouseEnterControl!; + GroupMaskedTextBox.MouseLeaveControl += OnMouseLeaveControl!; // Associate this view with the source component (required for design time selection) Component = GroupMaskedTextBox; @@ -60,8 +60,8 @@ public ViewDrawRibbonGroupMaskedTextBox([DisallowNull] KryptonRibbon ribbon, if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the masked textbox - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; MouseController = controller; } @@ -71,8 +71,8 @@ public ViewDrawRibbonGroupMaskedTextBox([DisallowNull] KryptonRibbon ribbon, KeyController = _controller; // We need to rest visibility of the masked textbox for each layout cycle - _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction; - _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction; + _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction!; + _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction!; // Define back reference to view for the masked text box definition GroupMaskedTextBox.MaskedTextBoxView = this; @@ -81,7 +81,7 @@ public ViewDrawRibbonGroupMaskedTextBox([DisallowNull] KryptonRibbon ribbon, GroupMaskedTextBox.ViewPaintDelegate = needPaint; // Hook into changes in the ribbon custom definition - GroupMaskedTextBox.PropertyChanged += OnMaskedTextBoxPropertyChanged; + GroupMaskedTextBox.PropertyChanged += OnMaskedTextBoxPropertyChanged!; NULL_CONTROL_WIDTH = (int)(50 * FactorDpiX); } @@ -91,7 +91,7 @@ public ViewDrawRibbonGroupMaskedTextBox([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupMaskedTextBox:" + Id; + $@"ViewDrawRibbonGroupMaskedTextBox:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupNumericUpDown.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupNumericUpDown.cs index a8c409d91..45d58efcc 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupNumericUpDown.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupNumericUpDown.cs @@ -51,8 +51,8 @@ public ViewDrawRibbonGroupNumericUpDown([DisallowNull] KryptonRibbon ribbon, _currentSize = GroupNumericUpDown.ItemSizeCurrent; // Hook into the numeric up-down events - GroupNumericUpDown.MouseEnterControl += OnMouseEnterControl; - GroupNumericUpDown.MouseLeaveControl += OnMouseLeaveControl; + GroupNumericUpDown.MouseEnterControl += OnMouseEnterControl!; + GroupNumericUpDown.MouseLeaveControl += OnMouseLeaveControl!; // Associate this view with the source component (required for design time selection) Component = GroupNumericUpDown; @@ -60,8 +60,8 @@ public ViewDrawRibbonGroupNumericUpDown([DisallowNull] KryptonRibbon ribbon, if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the numeric up-down - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; MouseController = controller; } @@ -71,8 +71,8 @@ public ViewDrawRibbonGroupNumericUpDown([DisallowNull] KryptonRibbon ribbon, KeyController = _controller; // We need to rest visibility of the numeric up-down for each layout cycle - _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction; - _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction; + _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction!; + _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction!; // Define back reference to view for the numeric up-down definition GroupNumericUpDown.NumericUpDownView = this; @@ -81,7 +81,7 @@ public ViewDrawRibbonGroupNumericUpDown([DisallowNull] KryptonRibbon ribbon, GroupNumericUpDown.ViewPaintDelegate = needPaint; // Hook into changes in the ribbon custom definition - GroupNumericUpDown.PropertyChanged += OnNumericUpDownPropertyChanged; + GroupNumericUpDown.PropertyChanged += OnNumericUpDownPropertyChanged!; NULL_CONTROL_WIDTH = (int)(50 * FactorDpiX); } @@ -91,7 +91,7 @@ public ViewDrawRibbonGroupNumericUpDown([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupNumericUpDown:" + Id; + $@"ViewDrawRibbonGroupNumericUpDown:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButton.cs index ae2188e51..50473e12f 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButton.cs @@ -22,22 +22,22 @@ internal class ViewDrawRibbonGroupRadioButton : ViewComposite, IContentValues { #region Instance Fields - private readonly Padding _largeImagePadding = new(3, 2, 3, 3); - private readonly Padding _smallImagePadding = new(3); + private readonly Padding _largeImagePadding; // = new Padding(3, 2, 3, 3); + private readonly Padding _smallImagePadding; // = new Padding(3); private readonly KryptonRibbon _ribbon; private ViewLayoutRibbonRadioButton _viewLarge; private ViewDrawRibbonGroupRadioButtonImage _viewLargeImage; private ViewDrawRibbonGroupRadioButtonText _viewLargeText1; private ViewDrawRibbonGroupRadioButtonText _viewLargeText2; private GroupRadioButtonController? _viewLargeController; - private readonly EventHandler _finishDelegateLarge; + private readonly EventHandler? _finishDelegateLarge; private ViewLayoutRibbonRadioButton _viewMediumSmall; private ViewLayoutRibbonRowCenter _viewMediumSmallCenter; private ViewDrawRibbonGroupRadioButtonImage _viewMediumSmallImage; private ViewDrawRibbonGroupRadioButtonText _viewMediumSmallText1; private ViewDrawRibbonGroupRadioButtonText _viewMediumSmallText2; private GroupRadioButtonController? _viewMediumSmallController; - private readonly EventHandler _finishDelegateMediumSmall; + private readonly EventHandler? _finishDelegateMediumSmall; private readonly NeedPaintHandler _needPaint; private GroupItemSize _currentSize; #endregion @@ -91,7 +91,7 @@ public ViewDrawRibbonGroupRadioButton([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupRadioButton:" + Id; + $@"ViewDrawRibbonGroupRadioButton:{Id}"; /// /// Clean up any resources being used. @@ -321,7 +321,7 @@ private void CreateLargeRadioButtonView() // Add the large button at the top _viewLargeImage = new ViewDrawRibbonGroupRadioButtonImage(_ribbon, GroupRadioButton, true); - ViewLayoutRibbonCenterPadding largeImagePadding = new(_largeImagePadding) + var largeImagePadding = new ViewLayoutRibbonCenterPadding(_largeImagePadding) { _viewLargeImage }; @@ -360,7 +360,7 @@ private void CreateMediumSmallRadioButtonView() _viewMediumSmallImage = new ViewDrawRibbonGroupRadioButtonImage(_ribbon, GroupRadioButton, false); _viewMediumSmallText1 = new ViewDrawRibbonGroupRadioButtonText(_ribbon, GroupRadioButton, true); _viewMediumSmallText2 = new ViewDrawRibbonGroupRadioButtonText(_ribbon, GroupRadioButton, false); - ViewLayoutRibbonCenterPadding imagePadding = new(_smallImagePadding) + var imagePadding = new ViewLayoutRibbonCenterPadding(_smallImagePadding) { _viewMediumSmallImage }; @@ -463,7 +463,7 @@ private void OnContextClick(object sender, MouseEventArgs e) private void ActionFinishedLarge(object sender, EventArgs e) { // Remove any popups that result from an action occuring - _ribbon?.Actionoccurred(); + _ribbon?.ActionOccurred(); // Remove the fixed pressed appearance _viewLargeController.RemoveFixed(); @@ -472,7 +472,7 @@ private void ActionFinishedLarge(object sender, EventArgs e) private void ActionFinishedMediumSmall(object sender, EventArgs e) { // Remove any popups that result from an action occuring - _ribbon?.Actionoccurred(); + _ribbon?.ActionOccurred(); // Remove the fixed pressed appearance _viewMediumSmallController.RemoveFixed(); diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButtonImage.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButtonImage.cs index 0fcd9866a..16af7f422 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButtonImage.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButtonImage.cs @@ -45,7 +45,7 @@ public ViewDrawRibbonGroupRadioButtonImage(KryptonRibbon ribbon, _large = large; // Use redirector to get the radio button images and redirect to parent palette - PaletteRedirectRadioButton redirectImages = new(ribbon.GetRedirector(), ribbon.StateCommon.RibbonImages.RadioButton); + var redirectImages = new PaletteRedirectRadioButton(ribbon.GetRedirector(), ribbon.StateCommon.RibbonImages.RadioButton); // Create drawing element _drawRadioButton = new ViewDrawRadioButton(redirectImages); @@ -62,7 +62,7 @@ public ViewDrawRibbonGroupRadioButtonImage(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupRadioButtonImage:" + Id; + $@"ViewDrawRibbonGroupRadioButtonImage:{Id}"; #endregion @@ -127,7 +127,7 @@ public override void Layout(ViewLayoutContext context) ClientRectangle = context.DisplayRectangle; // Get the size of the radio button when it is drawn - Rectangle radioButtonRect = new(Point.Empty, _drawRadioButton.GetPreferredSize(context)); + var radioButtonRect = new Rectangle(Point.Empty, _drawRadioButton.GetPreferredSize(context)); // Decide on correct position within our rectangle if (_large) diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButtonText.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButtonText.cs index 510b3cea3..5eb97a75c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButtonText.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRadioButtonText.cs @@ -64,7 +64,7 @@ public ViewDrawRibbonGroupRadioButtonText([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupRadioButtonText:" + Id; + $@"ViewDrawRibbonGroupRadioButtonText:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRichTextBox.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRichTextBox.cs index 49b3ca757..2744932f6 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRichTextBox.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupRichTextBox.cs @@ -51,8 +51,8 @@ public ViewDrawRibbonGroupRichTextBox([DisallowNull] KryptonRibbon ribbon, _currentSize = GroupRichTextBox.ItemSizeCurrent; // Hook into the richtextbox events - GroupRichTextBox.MouseEnterControl += OnMouseEnterControl; - GroupRichTextBox.MouseLeaveControl += OnMouseLeaveControl; + GroupRichTextBox.MouseEnterControl += OnMouseEnterControl!; + GroupRichTextBox.MouseLeaveControl += OnMouseLeaveControl!; // Associate this view with the source component (required for design time selection) Component = GroupRichTextBox; @@ -60,8 +60,8 @@ public ViewDrawRibbonGroupRichTextBox([DisallowNull] KryptonRibbon ribbon, if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the textbox - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; MouseController = controller; } @@ -71,8 +71,8 @@ public ViewDrawRibbonGroupRichTextBox([DisallowNull] KryptonRibbon ribbon, KeyController = _controller; // We need to rest visibility of the richtextbox for each layout cycle - _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction; - _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction; + _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction!; + _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction!; // Define back reference to view for the rich text box definition GroupRichTextBox.RichTextBoxView = this; @@ -81,7 +81,7 @@ public ViewDrawRibbonGroupRichTextBox([DisallowNull] KryptonRibbon ribbon, GroupRichTextBox.ViewPaintDelegate = needPaint; // Hook into changes in the ribbon custom definition - GroupRichTextBox.PropertyChanged += OnRichTextBoxPropertyChanged; + GroupRichTextBox.PropertyChanged += OnRichTextBoxPropertyChanged!; NULL_CONTROL_WIDTH = (int)(50 * FactorDpiX); } @@ -91,7 +91,7 @@ public ViewDrawRibbonGroupRichTextBox([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupRichTextBox:" + Id; + $@"ViewDrawRibbonGroupRichTextBox:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupSeparator.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupSeparator.cs index 9ff2fc992..cdacd5f11 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupSeparator.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupSeparator.cs @@ -55,8 +55,8 @@ public ViewDrawRibbonGroupSeparator([DisallowNull] KryptonRibbon ribbon, if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the label - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; MouseController = controller; } @@ -64,7 +64,7 @@ public ViewDrawRibbonGroupSeparator([DisallowNull] KryptonRibbon ribbon, _ribbonSeparator.SeparatorView = this; // Hook into changes in the ribbon separator definition - _ribbonSeparator.PropertyChanged += OnSeparatorPropertyChanged; + _ribbonSeparator.PropertyChanged += OnSeparatorPropertyChanged!; _preferredSize2007 = new Size((int)(4 * FactorDpiX), (int)(4 * FactorDpiY)); _preferredSize2010 = new Size((int)(7 * FactorDpiX), (int)(4 * FactorDpiY)); @@ -80,7 +80,7 @@ public ViewDrawRibbonGroupSeparator([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupSeparator:" + Id; + $@"ViewDrawRibbonGroupSeparator:{Id}"; /// /// Clean up any resources being used. @@ -186,7 +186,7 @@ public ItemSizeWidth[] GetPossibleSizes(ViewLayoutContext context) } // Return the one possible size allowed - return new ItemSizeWidth[] { new(GroupItemSize.Large, _preferredSize.Width) }; + return new ItemSizeWidth[] { new ItemSizeWidth(GroupItemSize.Large, _preferredSize.Width) }; } /// diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupText.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupText.cs index 4c7c0e49e..78d31ce58 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupText.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupText.cs @@ -63,7 +63,7 @@ public ViewDrawRibbonGroupText([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupText:" + Id; + $@"ViewDrawRibbonGroupText:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTextBox.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTextBox.cs index 3e27f6650..6e98b3fbe 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTextBox.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTextBox.cs @@ -51,8 +51,8 @@ public ViewDrawRibbonGroupTextBox([DisallowNull] KryptonRibbon ribbon, _currentSize = GroupTextBox.ItemSizeCurrent; // Hook into the textbox events - GroupTextBox.MouseEnterControl += OnMouseEnterControl; - GroupTextBox.MouseLeaveControl += OnMouseLeaveControl; + GroupTextBox.MouseEnterControl += OnMouseEnterControl!; + GroupTextBox.MouseLeaveControl += OnMouseLeaveControl!; // Associate this view with the source component (required for design time selection) Component = GroupTextBox; @@ -60,8 +60,8 @@ public ViewDrawRibbonGroupTextBox([DisallowNull] KryptonRibbon ribbon, if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the textbox - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; MouseController = controller; } @@ -71,8 +71,8 @@ public ViewDrawRibbonGroupTextBox([DisallowNull] KryptonRibbon ribbon, KeyController = _controller; // We need to rest visibility of the textbox for each layout cycle - _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction; - _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction; + _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction!; + _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction!; // Define back reference to view for the text box definition GroupTextBox.TextBoxView = this; @@ -81,7 +81,7 @@ public ViewDrawRibbonGroupTextBox([DisallowNull] KryptonRibbon ribbon, GroupTextBox.ViewPaintDelegate = needPaint; // Hook into changes in the ribbon custom definition - GroupTextBox.PropertyChanged += OnTextBoxPropertyChanged; + GroupTextBox.PropertyChanged += OnTextBoxPropertyChanged!; NULL_CONTROL_WIDTH = (int)(50 * FactorDpiX); } @@ -91,7 +91,7 @@ public ViewDrawRibbonGroupTextBox([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupTextBox:" + Id; + $@"ViewDrawRibbonGroupTextBox:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTitle.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTitle.cs index 25e1ec9a9..4f2a08a03 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTitle.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTitle.cs @@ -56,7 +56,7 @@ public ViewDrawRibbonGroupTitle([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupTitle:" + Id; + $@"ViewDrawRibbonGroupTitle:{Id}"; /// /// Clean up any resources being used. @@ -111,7 +111,7 @@ public IPaletteRibbonText PaletteRibbonGroup /// Discover the preferred size of the element. /// /// Layout context. - public override Size GetPreferredSize(ViewLayoutContext context) => new (0, Height); + public override Size GetPreferredSize(ViewLayoutContext context) => new Size(0, Height); /// /// Perform a layout of the elements. @@ -196,7 +196,7 @@ public string GetShortText() { if (!string.IsNullOrEmpty(_ribbonGroup.TextLine2)) { - return _ribbonGroup.TextLine1 + " " + _ribbonGroup.TextLine2; + return $"{_ribbonGroup.TextLine1} {_ribbonGroup.TextLine2}"; } else { diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTrackBar.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTrackBar.cs index d9c4043d7..7f43e430e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTrackBar.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupTrackBar.cs @@ -51,8 +51,8 @@ public ViewDrawRibbonGroupTrackBar([DisallowNull] KryptonRibbon ribbon, _currentSize = GroupTrackBar.ItemSizeCurrent; // Hook into the textbox events - GroupTrackBar.MouseEnterControl += OnMouseEnterControl; - GroupTrackBar.MouseLeaveControl += OnMouseLeaveControl; + GroupTrackBar.MouseEnterControl += OnMouseEnterControl!; + GroupTrackBar.MouseLeaveControl += OnMouseLeaveControl!; // Associate this view with the source component (required for design time selection) Component = GroupTrackBar; @@ -60,8 +60,8 @@ public ViewDrawRibbonGroupTrackBar([DisallowNull] KryptonRibbon ribbon, if (_ribbon.InDesignMode) { // At design time we need to know when the user right clicks the textbox - ContextClickController controller = new(); - controller.ContextClick += OnContextClick; + var controller = new ContextClickController(); + controller.ContextClick += OnContextClick!; MouseController = controller; } @@ -71,8 +71,8 @@ public ViewDrawRibbonGroupTrackBar([DisallowNull] KryptonRibbon ribbon, KeyController = _controller; // We need to rest visibility of the textbox for each layout cycle - _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction; - _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction; + _ribbon.ViewRibbonManager.LayoutBefore += OnLayoutAction!; + _ribbon.ViewRibbonManager.LayoutAfter += OnLayoutAction!; // Define back reference to view for the text box definition GroupTrackBar.TrackBarView = this; @@ -81,7 +81,7 @@ public ViewDrawRibbonGroupTrackBar([DisallowNull] KryptonRibbon ribbon, GroupTrackBar.ViewPaintDelegate = needPaint; // Hook into changes in the ribbon custom definition - GroupTrackBar.PropertyChanged += OnTextBoxPropertyChanged; + GroupTrackBar.PropertyChanged += OnTextBoxPropertyChanged!; NULL_CONTROL_WIDTH = (int)(50 * FactorDpiX); } @@ -91,7 +91,7 @@ public ViewDrawRibbonGroupTrackBar([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupTrackBar:" + Id; + $@"ViewDrawRibbonGroupTrackBar:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupsBorder.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupsBorder.cs index bf5dee9b3..0877a2069 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupsBorder.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupsBorder.cs @@ -60,7 +60,7 @@ public ViewDrawRibbonGroupsBorder([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupsBorder:" + Id; + $@"ViewDrawRibbonGroupsBorder:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupsBorderSynch.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupsBorderSynch.cs index 008fbcdb6..77c561da0 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupsBorderSynch.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonGroupsBorderSynch.cs @@ -51,7 +51,7 @@ public ViewDrawRibbonGroupsBorderSynch(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonGroupsBorderSynch:" + Id; + $@"ViewDrawRibbonGroupsBorderSynch:{Id}"; #endregion @@ -204,12 +204,12 @@ private void SyncChildrenToRibbonTabs() Clear(); // Create a new lookup that reflects any changes in tabs - TabToView regenerate = new(); + var regenerate = new TabToView(); // Make sure we have a view element to match each tab foreach (KryptonRibbonTab tab in Ribbon.RibbonTabs) { - ViewLayoutRibbonScrollPort view = null; + ViewLayoutRibbonScrollPort? view = null; // Get the currently cached view for the tab if (_tabToView.ContainsKey(tab)) @@ -220,7 +220,7 @@ private void SyncChildrenToRibbonTabs() // If a new tab, create a view for it now if (view == null) { - ViewLayoutRibbonGroups groups = new(Ribbon, tab, NeedPaintDelegate); + var groups = new ViewLayoutRibbonGroups(Ribbon, tab, NeedPaintDelegate); view = new ViewLayoutRibbonScrollPort(Ribbon, Orientation.Horizontal, groups, false, SCROLL_SPEED, NeedPaintDelegate) { TransparentBackground = true diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonMinimizeBar.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonMinimizeBar.cs index 770257792..01ffe7071 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonMinimizeBar.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonMinimizeBar.cs @@ -45,7 +45,7 @@ public ViewDrawRibbonMinimizeBar([DisallowNull] IPaletteRibbonGeneral palette) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawRibbonMinimizeBar:" + Id; + $"ViewDrawRibbonMinimizeBar:{Id}"; #endregion @@ -56,8 +56,8 @@ public override string ToString() => /// Rendering context. public override void RenderBefore(RenderContext context) { - using Pen darkPen = new(_palette.GetRibbonMinimizeBarDark(PaletteState.Normal)), - lightPen = new(_palette.GetRibbonMinimizeBarLight(PaletteState.Normal)); + using var darkPen = new Pen(_palette.GetRibbonMinimizeBarDark(PaletteState.Normal)); + using var lightPen = new Pen(_palette.GetRibbonMinimizeBarLight(PaletteState.Normal)); context.Graphics.DrawLine(darkPen, ClientRectangle.Left, ClientRectangle.Bottom - 2, ClientRectangle.Right - 1, ClientRectangle.Bottom - 2); context.Graphics.DrawLine(lightPen, ClientRectangle.Left, ClientRectangle.Bottom - 1, ClientRectangle.Right - 1, ClientRectangle.Bottom - 1); } diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonPanel.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonPanel.cs index 4b2f52ea7..ddb4a68e2 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonPanel.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonPanel.cs @@ -70,7 +70,9 @@ public override void RenderBefore(RenderContext context) var tabsHeight = _ribbon.TabsArea.ClientHeight; // Clip to prevent drawing over the tabs area - using (Clipping clip = new(context.Graphics, new Rectangle(ClientLocation.X, ClientLocation.Y + tabsHeight, ClientWidth, ClientHeight - tabsHeight))) + using (var clip = new Clipping(context.Graphics, + new Rectangle(ClientLocation.X, ClientLocation.Y + tabsHeight, ClientWidth, + ClientHeight - tabsHeight))) { base.RenderBefore(context); } @@ -107,9 +109,9 @@ public void PaintRectangle(Graphics? g, Rectangle rect, bool edges, Control? sen } else if ((sender != null) && !_ribbon.MinimizedMode) { - using ViewDrawRibbonGroupsBorder border = new(_ribbon, false, _paintDelegate); + using var border = new ViewDrawRibbonGroupsBorder(_ribbon, false, _paintDelegate); border.ClientRectangle = new Rectangle(-sender.Location.X, rect.Bottom - 1, _ribbon.Width, 10); - using RenderContext context = new(_ribbon, g, rect, _ribbon.Renderer); + using var context = new RenderContext(_ribbon, g, rect, _ribbon.Renderer); border.Render(context); } @@ -127,20 +129,22 @@ public void PaintRectangle(Graphics? g, Rectangle rect, bool edges, Control? sen ? Color.FromArgb(39, 39, 39) : Color.White; - using LinearGradientBrush backBrush = new(new Rectangle(rect.X, rect.Y - 1, rect.Width, rect.Height + 1), Color.Transparent, gradientColor, 90f); + using var backBrush = new LinearGradientBrush( + new Rectangle(rect.X, rect.Y - 1, rect.Width, rect.Height + 1), Color.Transparent, + gradientColor, 90f); backBrush.Blend = _compBlend; g.FillRectangle(backBrush, new Rectangle(rect.X, rect.Y, rect.Width, rect.Height - 1)); break; } case PaletteRibbonShape.Office2013: { - using SolidBrush backBrush = new(Color.White); + using var backBrush = new SolidBrush(Color.White); g.FillRectangle(backBrush, new Rectangle(rect.X, rect.Y, rect.Width, rect.Height - 1)); break; } case PaletteRibbonShape.Microsoft365: { - using SolidBrush backBrush = new(Color.White); + using var backBrush = new SolidBrush(Color.White); g.FillRectangle(backBrush, new Rectangle(rect.X, rect.Y, rect.Width, rect.Height - 1)); break; } diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATBorder.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATBorder.cs index 61a588529..08f328a8e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATBorder.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATBorder.cs @@ -60,8 +60,8 @@ public ViewDrawRibbonQATBorder([DisallowNull] KryptonRibbon ribbon, _fullbarBorderPadding_2010 = new Padding((int)(2 * FactorDpiX), (int)(2 * FactorDpiY), (int)(2 * FactorDpiX), (int)(2 * FactorDpiY)); _noBorderPadding = new Padding((int)(1 * FactorDpiX), 0, (int)(1 * FactorDpiX), 0); // Remember incoming references - _ribbon = ribbon!; - _needPaintDelegate = needPaintDelegate!; + _ribbon = ribbon; + _needPaintDelegate = needPaintDelegate; _minibar = minibar; OverlapAppButton = true; } @@ -72,7 +72,7 @@ public ViewDrawRibbonQATBorder([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonQATBorder:" + Id; + $@"ViewDrawRibbonQATBorder:{Id}"; /// /// Clean up any resources being used. @@ -158,7 +158,7 @@ public override void Layout([DisallowNull] ViewLayoutContext context) { Debug.Assert(context != null); - Rectangle clientRect = context!.DisplayRectangle; + Rectangle clientRect = context.DisplayRectangle; // For the minibar we have to position ourself at bottom of available area if (_minibar) diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATButton.cs index 3baa9eacf..fcfdac01e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATButton.cs @@ -54,8 +54,8 @@ public ViewDrawRibbonQATButton([DisallowNull] KryptonRibbon ribbon, Component = qatButton as Component; // Attach a controller to this element for the pressing of the button - QATButtonController? controller = new(ribbon, this, needPaint); - controller.Click += OnClick; + var controller = new QATButtonController(ribbon, this, needPaint); + controller.Click += OnClick!; SourceController = controller; KeyController = controller; @@ -84,7 +84,7 @@ public ViewDrawRibbonQATButton([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonQATButton:" + Id; + $@"ViewDrawRibbonQATButton:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATExtraButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATExtraButton.cs index d841747d7..eb61cad92 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATExtraButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATExtraButton.cs @@ -19,13 +19,14 @@ namespace Krypton.Ribbon /// internal class ViewDrawRibbonQATExtraButton : ViewLeaf { - private static readonly Size _contentSize = new(-4, -7); + // TODO: Needs to be scaled + private static readonly Size _contentSize = new Size(-4, -7); #region Instance Fields private readonly Size _viewSize; // = new(13, 22); private readonly KryptonRibbon _ribbon; private IDisposable? _mementoBack; - private readonly EventHandler _finishDelegate; + private readonly EventHandler? _finishDelegate; #endregion @@ -33,7 +34,7 @@ internal class ViewDrawRibbonQATExtraButton : ViewLeaf /// /// Occurs when the quick access toolbar button has been clicked. /// - public event ClickAndFinishHandler ClickAndFinish; + public event ClickAndFinishHandler? ClickAndFinish; #endregion #region Identity @@ -51,11 +52,11 @@ public ViewDrawRibbonQATExtraButton([DisallowNull] KryptonRibbon ribbon, _ribbon = ribbon; // Create delegate used to process end of click action - _finishDelegate = ClickFinished; + _finishDelegate = ClickFinished!; // Attach a controller to this element for the pressing of the button - QATExtraButtonController controller = new(ribbon, this, needPaint); - controller.Click += OnClick; + var controller = new QATExtraButtonController(ribbon, this, needPaint); + controller.Click += OnClick!; MouseController = controller; SourceController = controller; KeyController = controller; @@ -68,7 +69,7 @@ public ViewDrawRibbonQATExtraButton([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonQATExtraButton:" + Id; + $@"ViewDrawRibbonQATExtraButton:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATExtraButtonMini.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATExtraButtonMini.cs index d70a02400..9259b9ccf 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATExtraButtonMini.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATExtraButtonMini.cs @@ -41,7 +41,7 @@ public ViewDrawRibbonQATExtraButtonMini(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonQATExtraButtonMini:" + Id; + $@"ViewDrawRibbonQATExtraButtonMini:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATOverflow.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATOverflow.cs index 1e7cd3f07..2305d9df1 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATOverflow.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonQATOverflow.cs @@ -52,7 +52,7 @@ public ViewDrawRibbonQATOverflow([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonQATOverflow:" + Id; + $@"ViewDrawRibbonQATOverflow:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonRecentDocs.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonRecentDocs.cs index fc85d9ffa..72146070d 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonRecentDocs.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonRecentDocs.cs @@ -47,7 +47,7 @@ public ViewDrawRibbonRecentDocs([DisallowNull] KryptonRibbon ribbon) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonRecentDocs:" + Id; + $@"ViewDrawRibbonRecentDocs:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonRecentShortcut.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonRecentShortcut.cs index 26f5523eb..30c33f3d0 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonRecentShortcut.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonRecentShortcut.cs @@ -37,7 +37,7 @@ public ViewDrawRibbonRecentShortcut(IPaletteContent? paletteContent, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonRecentShortcut:" + Id; + $@"ViewDrawRibbonRecentShortcut:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonScrollButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonScrollButton.cs index e8da8ad6e..c070ec80e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonScrollButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonScrollButton.cs @@ -43,7 +43,7 @@ public ViewDrawRibbonScrollButton(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonScrollButton:" + Id; + $@"ViewDrawRibbonScrollButton:{Id}"; /// /// Clean up any resources being used. @@ -115,8 +115,8 @@ public override void RenderBefore(RenderContext context) if (_ribbon.StateCommon.RibbonScroller.PaletteBorder.GetBorderDraw(State) == InheritBool.True) { // Draw the border shadow - using AntiAlias aa = new(context.Graphics); - using SolidBrush shadowBrush = new(Color.FromArgb(16, Color.Black)); + using var aa = new AntiAlias(context.Graphics); + using var shadowBrush = new SolidBrush(Color.FromArgb(16, Color.Black)); context.Graphics.FillPath(shadowBrush, shadowPath); } @@ -145,8 +145,8 @@ public override void RenderBefore(RenderContext context) Color borderColor = _ribbon.StateCommon.RibbonScroller.PaletteBorder.GetBorderColor1(State); // Draw the border last to overlap the background - using AntiAlias aa = new(context.Graphics); - using Pen borderPen = new(borderColor); + using var aa = new AntiAlias(context.Graphics); + using var borderPen = new Pen(borderColor); context.Graphics.DrawPath(borderPen, borderPath); } } @@ -155,7 +155,7 @@ public override void RenderBefore(RenderContext context) #region Implementation private GraphicsPath CreateBorderPath(Rectangle rect) { - GraphicsPath path = new(); + var path = new GraphicsPath(); switch (Orientation) { @@ -200,7 +200,7 @@ private void DrawArrow(Graphics? g, Color textColor, Rectangle rect) { // Create path that describes the arrow in orientation needed using GraphicsPath arrowPath = CreateArrowPath(rect); - using SolidBrush arrowBrush = new(textColor); + using var arrowBrush = new SolidBrush(textColor); g.FillPath(arrowBrush, arrowPath); } @@ -221,7 +221,7 @@ private GraphicsPath CreateArrowPath(Rectangle rect) } // Create triangle using a series of lines - GraphicsPath path = new(); + var path = new GraphicsPath(); switch (Orientation) { diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonTab.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonTab.cs index 8fed9f84b..ac2a537f3 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonTab.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonTab.cs @@ -83,9 +83,9 @@ public ViewDrawRibbonTab([DisallowNull] KryptonRibbon ribbon, Debug.Assert(needPaint != null); // Cache incoming values - Ribbon = ribbon!; - ViewLayoutRibbonTabs = layoutTabs!; - _needPaint = needPaint!; + Ribbon = ribbon; + ViewLayoutRibbonTabs = layoutTabs; + _needPaint = needPaint; // Create overrides for handling a focus state _paletteGeneral = Ribbon.StateCommon.RibbonGeneral; @@ -106,9 +106,9 @@ public ViewDrawRibbonTab([DisallowNull] KryptonRibbon ribbon, _contentProvider = new RibbonTabToContent(_paletteGeneral, _paletteContextCurrent); // Use a controller to change state because of mouse movement - RibbonTabController controller = new(Ribbon, this, _needPaint); - controller.Click += OnTabClicked; - controller.ContextClick += OnTabContextClicked; + var controller = new RibbonTabController(Ribbon, this, _needPaint); + controller.Click += OnTabClicked!; + controller.ContextClick += OnTabContextClicked!; MouseController = controller; SourceController = controller; KeyController = controller; @@ -134,7 +134,7 @@ public ViewDrawRibbonTab([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDrawRibbonTab:" + Id; + $@"ViewDrawRibbonTab:{Id}"; /// /// Clean up any resources being used. @@ -353,10 +353,10 @@ public override void Layout([DisallowNull] ViewLayoutContext context) Debug.Assert(context != null); // Ensure that child elements have correct palette state - CheckPaletteState(context!); + CheckPaletteState(context); // We take on all the available display area - ClientRectangle = context!.DisplayRectangle; + ClientRectangle = context.DisplayRectangle; // A change in state always causes a size and layout calculation if (_cacheState != State) @@ -504,14 +504,16 @@ private void RenderBefore2007ContextTab(RenderContext context, ContextTabSet? ct Color sepColor = _paletteGeneral.GetRibbonTabSeparatorContextColor(PaletteState.Normal); Rectangle parentRect = Parent.ClientRectangle; - Rectangle contextRect = new(ClientRectangle.X - 1, parentRect.Y, ClientRectangle.Width + 2, parentRect.Height); - Rectangle gradientRect = new(ClientRectangle.X - 1, parentRect.Y - 1, ClientRectangle.Width + 2, parentRect.Height + 2); + var contextRect = new Rectangle(ClientRectangle.X - 1, parentRect.Y, ClientRectangle.Width + 2, + parentRect.Height); + var gradientRect = new Rectangle(ClientRectangle.X - 1, parentRect.Y - 1, + ClientRectangle.Width + 2, parentRect.Height + 2); - using LinearGradientBrush sepBrush = new(gradientRect, sepColor, Color.Transparent, 90f); + using var sepBrush = new LinearGradientBrush(gradientRect, sepColor, Color.Transparent, 90f); // We need to customize the way the color blends over the background sepBrush.Blend = _contextBlend2007; - using Pen sepPen = new(sepBrush); + using var sepPen = new Pen(sepBrush); if (cts.IsFirstTab(this)) { context.Graphics.DrawLine(sepPen, contextRect.X, contextRect.Y, contextRect.X, contextRect.Bottom - 1); @@ -532,16 +534,18 @@ private void RenderBefore2010ContextTab(RenderContext context, ContextTabSet? ct Color lightC2 = ControlPaint.Light(c2); Color c3 = CommonHelper.MergeColors(Color.Black, 0.1f, c2, 0.9f); - Rectangle contextRect = new(ClientRectangle.X - 1, ClientRectangle.Y - 1, ClientRectangle.Width + 2, ClientRectangle.Height + 1); - Rectangle fillRect = new(ClientRectangle.X - 2, ClientRectangle.Y - 1, ClientRectangle.Width + 4, ClientRectangle.Height); + var contextRect = new Rectangle(ClientRectangle.X - 1, ClientRectangle.Y - 1, + ClientRectangle.Width + 2, ClientRectangle.Height + 1); + var fillRect = new Rectangle(ClientRectangle.X - 2, ClientRectangle.Y - 1, ClientRectangle.Width + 4, + ClientRectangle.Height); - using LinearGradientBrush outerBrush = new(contextRect, c1, Color.Transparent, 90f), - innerBrush = new(contextRect, c3, Color.Transparent, 90f), - fillBrush = new(contextRect, Color.FromArgb(64, lightC2), Color.Transparent, 90f); + using var outerBrush = new LinearGradientBrush(contextRect, c1, Color.Transparent, 90f); + using var innerBrush = new LinearGradientBrush(contextRect, c3, Color.Transparent, 90f); + using var fillBrush = new LinearGradientBrush(contextRect, Color.FromArgb(64, lightC2), Color.Transparent, 90f); fillBrush.Blend = _contextBlend2010; - using Pen outerPen = new(outerBrush), - innerPen = new(innerBrush); + using var outerPen = new Pen(outerBrush); + using var innerPen = new Pen(innerBrush); if (cts.IsFirstTab(this)) { // Draw left separators diff --git a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonTabSep.cs b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonTabSep.cs index 367630342..09332232d 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonTabSep.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Draw/ViewDrawRibbonTabSep.cs @@ -58,7 +58,7 @@ public ViewDrawRibbonTabSep([DisallowNull] IPaletteRibbonGeneral palette) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawRibbonTabSep:" + Id; + $"ViewDrawRibbonTabSep:{Id}"; #endregion @@ -79,8 +79,9 @@ public override void RenderBefore(RenderContext context) { if (Draw) { - RectangleF rectF = new(ClientLocation.X, ClientLocation.Y - 0.5f, ClientWidth, ClientHeight + 1); - using LinearGradientBrush sepBrush = new(rectF, Color.Transparent, _palette.GetRibbonTabSeparatorColor(PaletteState.Normal), 90f); + var rectF = new RectangleF(ClientLocation.X, ClientLocation.Y - 0.5f, ClientWidth, ClientHeight + 1); + using var sepBrush = new LinearGradientBrush(rectF, Color.Transparent, + _palette.GetRibbonTabSeparatorColor(PaletteState.Normal), 90f); sepBrush.Blend = _fadeBlend; switch (_palette.GetRibbonShape()) @@ -96,7 +97,7 @@ public override void RenderBefore(RenderContext context) case PaletteRibbonShape.Office2010: context.Graphics.FillRectangle(sepBrush, ClientLocation.X + 1, ClientLocation.Y, 1, ClientHeight - 1); - using (LinearGradientBrush sepLightBrush = new(rectF, Color.Transparent, _lighten1, 90f)) + using (var sepLightBrush = new LinearGradientBrush(rectF, Color.Transparent, _lighten1, 90f)) { context.Graphics.FillRectangle(sepLightBrush, ClientLocation.X + 2, ClientLocation.Y, 1, ClientHeight - 1); } diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonAppButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonAppButton.cs index 54a00a9d3..c6911fd87 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonAppButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonAppButton.cs @@ -63,7 +63,7 @@ public ViewLayoutRibbonAppButton([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonAppButton:" + Id; + $"ViewLayoutRibbonAppButton:{Id}"; #endregion @@ -130,7 +130,7 @@ public override void Layout(ViewLayoutContext context) #region Implementation private void UpdateSeparatorSize() { - Size separatorSize = new(APPBUTTON_GAP, APPBUTTON_GAP); + var separatorSize = new Size(APPBUTTON_GAP, APPBUTTON_GAP); // Do we need to add on extra sizing to the separator? if (OwnerForm != null) diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonAppTab.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonAppTab.cs index 2af4df4f0..a7ce453ab 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonAppTab.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonAppTab.cs @@ -47,7 +47,7 @@ public ViewLayoutRibbonAppTab([DisallowNull] KryptonRibbon ribbon) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonAppTab:" + Id; + $"ViewLayoutRibbonAppTab:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonCenter.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonCenter.cs index 680cb39d9..e6b8fe42e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonCenter.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonCenter.cs @@ -33,7 +33,7 @@ public ViewLayoutRibbonCenter() /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonCenter:" + Id; + $"ViewLayoutRibbonCenter:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonCenterPadding.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonCenterPadding.cs index 5ffff5e13..fe1628c31 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonCenterPadding.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonCenterPadding.cs @@ -32,7 +32,7 @@ internal class ViewLayoutRibbonCenterPadding : ViewLayoutRibbonCenter /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonCenterPadding:" + Id; + $"ViewLayoutRibbonCenterPadding:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonContextTitles.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonContextTitles.cs index 8764fde92..1ed6c4191 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonContextTitles.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonContextTitles.cs @@ -53,7 +53,7 @@ public ViewLayoutRibbonContextTitles([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewLayoutRibbonContextTitles:" + Id; + $@"ViewLayoutRibbonContextTitles:{Id}"; /// /// Clean up any resources being used. @@ -169,7 +169,7 @@ public override void Render(RenderContext context) clipRect.Height++; // Limit drawing to our client area - using Clipping clip = new(context.Graphics, clipRect); + using var clip = new Clipping(context.Graphics, clipRect); base.Render(context); } #endregion @@ -198,7 +198,7 @@ private void SyncChildrenToContexts() for (var i = _contextTitlesCache.Count; i < ViewLayoutRibbonTabs.ContextTabSets.Count; i++) { // Create a new view element and an associated button controller - ViewDrawRibbonContextTitle viewContextTitle = new(_ribbon, _ribbon.StateContextCheckedNormal.RibbonTab) + var viewContextTitle = new ViewDrawRibbonContextTitle(_ribbon, _ribbon.StateContextCheckedNormal.RibbonTab) { MouseController = new ContextTitleController(_ribbon) }; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGalleryButtons.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGalleryButtons.cs index bba62efca..0817fd7c6 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGalleryButtons.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGalleryButtons.cs @@ -33,7 +33,7 @@ public ViewLayoutRibbonGalleryButtons() /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonGalleryButtons:" + Id; + $"ViewLayoutRibbonGalleryButtons:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGalleryItems.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGalleryItems.cs index d0ebc6db8..68c5f7b75 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGalleryItems.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGalleryItems.cs @@ -104,7 +104,7 @@ public ViewLayoutRibbonGalleryItems([DisallowNull] PaletteBase palette, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonGalleryItems:" + Id; + $"ViewLayoutRibbonGalleryItems:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupButton.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupButton.cs index d5af68e82..890587026 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupButton.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupButton.cs @@ -51,7 +51,7 @@ public ViewLayoutRibbonGroupButton(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonGroupButton:" + Id; + $"ViewLayoutRibbonGroupButton:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupCluster.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupCluster.cs index c7ac4801e..1f714a553 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupCluster.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupCluster.cs @@ -76,7 +76,7 @@ public ViewLayoutRibbonGroupCluster([DisallowNull] KryptonRibbon ribbon, _endSepVisible = false; // Create palette used to supply a width to a border edge view - PaletteBorderEdgeRedirect borderEdgeRedirect = new(_ribbon.StateCommon.RibbonGroupClusterButton.Border, needPaint); + var borderEdgeRedirect = new PaletteBorderEdgeRedirect(_ribbon.StateCommon.RibbonGroupClusterButton.Border, needPaint); _paletteBorderEdge = new PaletteBorderEdge(borderEdgeRedirect, needPaint); _lastShape = PaletteRibbonShape.Office2007; @@ -93,7 +93,7 @@ public ViewLayoutRibbonGroupCluster([DisallowNull] KryptonRibbon ribbon, // At design time we want to track the mouse and show feedback if (_ribbon.InDesignMode) { - ViewHightlightController? controller = new(this, needPaint); + var controller = new ViewHightlightController(this, needPaint); controller.ContextClick += OnContextClick; MouseController = controller; } @@ -105,7 +105,7 @@ public ViewLayoutRibbonGroupCluster([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonGroupCluster:" + Id; + $"ViewLayoutRibbonGroupCluster:{Id}"; /// /// Clean up any resources being used. @@ -502,8 +502,8 @@ private void SyncChildrenToRibbonGroupItems() Add(_startSep); // Create new lookups which are up to date - ItemToView regenView = new(); - ViewToEdge regenEdge = new(); + var regenView = new ItemToView(); + var regenEdge = new ViewToEdge(); // Cache the first and last visible children ViewBase? viewFirst = null; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupContent.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupContent.cs index 4b27fa259..6cf04dfff 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupContent.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupContent.cs @@ -27,7 +27,7 @@ private class ContainerToView : Dictionary { } #region Static Fields private const int EMPTY_WIDTH = 48; - private static readonly Padding _padding = new(1, 0, 1, 1); + private static readonly Padding _padding = new Padding(1, 0, 1, 1); #endregion #region Instance Fields @@ -70,7 +70,7 @@ public ViewLayoutRibbonGroupContent([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonGroupContent:" + Id; + $"ViewLayoutRibbonGroupContent:{Id}"; /// /// Clean up any resources being used. @@ -684,7 +684,7 @@ private void SyncChildrenToRibbonGroupItems() // Remove all child elements Clear(); - ContainerToView regenerate = new(); + var regenerate = new ContainerToView(); // Add a view element for each group item foreach (KryptonRibbonGroupContainer container in _ribbonGroup.Items) diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupLines.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupLines.cs index ce4738fea..9720a5d2b 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupLines.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupLines.cs @@ -100,14 +100,14 @@ public ViewLayoutRibbonGroupLines([DisallowNull] KryptonRibbon ribbon, ApplySize(ribbonLines.ItemSizeCurrent); // Hook into changes in the ribbon triple definition - _ribbonLines.PropertyChanged += OnLinesPropertyChanged; + _ribbonLines.PropertyChanged += OnLinesPropertyChanged!; _ribbonLines.LinesView = this; // At design time we want to track the mouse and show feedback if (_ribbon.InDesignMode) { - ViewHightlightController controller = new(this, needPaint); - controller.ContextClick += OnContextClick; + var controller = new ViewHightlightController(this, needPaint); + controller.ContextClick += OnContextClick!; MouseController = controller; } } @@ -118,7 +118,7 @@ public ViewLayoutRibbonGroupLines([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonGroupLines:" + Id; + $"ViewLayoutRibbonGroupLines:{Id}"; /// /// Clean up any resources being used. @@ -433,7 +433,7 @@ public ItemSizeWidth[] GetPossibleSizes(ViewLayoutContext context) ((int)_ribbonLines.ItemSizeMinimum <= (int)GroupItemSize.Medium)) { ApplySize(GroupItemSize.Medium); - ItemSizeWidth mediumWidth = new(GroupItemSize.Medium, GetPreferredSize(context).Width); + var mediumWidth = new ItemSizeWidth(GroupItemSize.Medium, GetPreferredSize(context).Width); if (_ribbon.InDesignHelperMode) { @@ -459,7 +459,7 @@ public ItemSizeWidth[] GetPossibleSizes(ViewLayoutContext context) if (_ribbonLines.ItemSizeMinimum == GroupItemSize.Small) { ApplySize(GroupItemSize.Small); - ItemSizeWidth smallWidth = new(GroupItemSize.Small, GetPreferredSize(context).Width); + var smallWidth = new ItemSizeWidth(GroupItemSize.Small, GetPreferredSize(context).Width); if (_ribbon.InDesignHelperMode) { @@ -727,8 +727,8 @@ private void SyncChildrenToRibbonGroupItems() // Remove all child elements Clear(); - ItemToView regenItemToView = new(); - ViewToItem regenViewToItem = new(); + var regenItemToView = new ItemToView(); + var regenViewToItem = new ViewToItem(); // Add a view element for each group item foreach (IRibbonGroupItem item in _ribbonLines.Items) diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupTriple.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupTriple.cs index 999a6d41c..43903e9be 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupTriple.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupTriple.cs @@ -72,14 +72,14 @@ public ViewLayoutRibbonGroupTriple([DisallowNull] KryptonRibbon ribbon, SetCurrentSize(ribbonTriple.ItemSizeCurrent); // Hook into changes in the ribbon triple definition - _ribbonTriple.PropertyChanged += OnTriplePropertyChanged; + _ribbonTriple.PropertyChanged += OnTriplePropertyChanged!; _ribbonTriple.TripleView = this; // At design time we want to track the mouse and show feedback if (_ribbon.InDesignMode) { - ViewHightlightController controller = new(this, needPaint); - controller.ContextClick += OnContextClick; + var controller = new ViewHightlightController(this, needPaint); + controller.ContextClick += OnContextClick!; MouseController = controller; } } @@ -90,7 +90,7 @@ public ViewLayoutRibbonGroupTriple([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonGroupTriple:" + Id; + $"ViewLayoutRibbonGroupTriple:{Id}"; /// /// Clean up any resources being used. @@ -294,7 +294,7 @@ public ItemSizeWidth[] GetPossibleSizes(ViewLayoutContext context) ((int)_ribbonTriple.ItemSizeMinimum <= (int)GroupItemSize.Medium)) { ApplySize(GroupItemSize.Medium); - ItemSizeWidth mediumWidth = new(GroupItemSize.Medium, GetPreferredSize(context).Width); + var mediumWidth = new ItemSizeWidth(GroupItemSize.Medium, GetPreferredSize(context).Width); if (_ribbon.InDesignHelperMode) { @@ -320,7 +320,7 @@ public ItemSizeWidth[] GetPossibleSizes(ViewLayoutContext context) if (_ribbonTriple.ItemSizeMinimum == GroupItemSize.Small) { ApplySize(GroupItemSize.Small); - ItemSizeWidth smallWidth = new(GroupItemSize.Small, GetPreferredSize(context).Width); + var smallWidth = new ItemSizeWidth(GroupItemSize.Small, GetPreferredSize(context).Width); if (_ribbon.InDesignHelperMode) { @@ -632,7 +632,7 @@ private void SyncChildrenToRibbonGroupItems() // Remove all child elements Clear(); - ItemToView regenerate = new(); + var regenerate = new ItemToView(); // Add a view element for each group item foreach (IRibbonGroupItem item in _ribbonTriple.Items) diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroups.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroups.cs index 49db7e8c2..1ce4d8503 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroups.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroups.cs @@ -74,7 +74,7 @@ public ViewLayoutRibbonGroups([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonGroups:" + Id; + $"ViewLayoutRibbonGroups:{Id}"; /// /// Clean up any resources being used. @@ -162,7 +162,7 @@ public NeedPaintHandler NeedPaintDelegate /// Array of KeyTipInfo; otherwise null. public KeyTipInfo[] GetGroupKeyTips() { - KeyTipInfoList keyTipList = new(); + var keyTipList = new KeyTipInfoList(); // Ask each visible group to add its own key tips foreach (ViewDrawRibbonGroup ribGroup in _groupToView.Values) @@ -383,12 +383,12 @@ private void SyncChildrenToRibbonGroups() Clear(); // Create a new lookup that reflects any changes in groups - GroupToView regenerate = new(); + var regenerate = new GroupToView(); // Make sure we have a view element to match each group foreach (KryptonRibbonGroup ribGroup in _ribbonTab.Groups) { - ViewDrawRibbonGroup view = null; + ViewDrawRibbonGroup? view = null; // Get the currently cached view for the group if (_groupToView.ContainsKey(ribGroup)) diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupsArea.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupsArea.cs index 5c715ae63..00ffe8ca5 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupsArea.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonGroupsArea.cs @@ -20,10 +20,10 @@ namespace Krypton.Ribbon internal class ViewLayoutRibbonGroupsArea : ViewDrawPanel { #region Static Fields - private static readonly Padding _preferredNormalPadding = new(0, 0, 1, 0); - private static readonly Padding _preferredMinimizedPadding = new(0, 1, 1, 0); - private static readonly Padding _layoutNormalPadding = new(0, -1, 1, 1); - private static readonly Padding _layoutMinimizedPadding = new(0, 0, 1, 1); + private static readonly Padding _preferredNormalPadding = new Padding(0, 0, 1, 0); + private static readonly Padding _preferredMinimizedPadding = new Padding(0, 1, 1, 0); + private static readonly Padding _layoutNormalPadding = new Padding(0, -1, 1, 1); + private static readonly Padding _layoutMinimizedPadding = new Padding(0, 0, 1, 1); #endregion #region Instance Fields @@ -64,7 +64,7 @@ public ViewLayoutRibbonGroupsArea([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonGroupsArea:" + Id; + $"ViewLayoutRibbonGroupsArea:{Id}"; #endregion @@ -95,7 +95,7 @@ public PaletteBackStyle BackStyle public override Size GetPreferredSize(ViewLayoutContext context) { // Get the preferred size of the contained content - Size preferredSize = new(0, _ribbon.CalculatedValues.GroupsHeight); + var preferredSize = new Size(0, _ribbon.CalculatedValues.GroupsHeight); // Add on the padding we need around edges if (_ribbon.RealMinimizedMode) diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonPadding.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonPadding.cs index 3313b391f..d89fdb6ec 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonPadding.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonPadding.cs @@ -36,7 +36,7 @@ internal class ViewLayoutRibbonPadding : ViewComposite /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonPadding:" + Id; + $"ViewLayoutRibbonPadding:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonQATContents.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonQATContents.cs index 97c67002a..47eeee58a 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonQATContents.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonQATContents.cs @@ -45,8 +45,8 @@ public ViewLayoutRibbonQATContents([DisallowNull] KryptonRibbon ribbon, Debug.Assert(ribbon != null); Debug.Assert(needPaint != null); - Ribbon = ribbon!; - _needPaint = needPaint!; + Ribbon = ribbon; + _needPaint = needPaint; // Create initial lookup table _qatButtonToView = new QATButtonToView(); @@ -54,7 +54,7 @@ public ViewLayoutRibbonQATContents([DisallowNull] KryptonRibbon ribbon, // Create the extra button for customization/overflow if (showExtraButton) { - _extraButton = new ViewDrawRibbonQATExtraButton(ribbon!, needPaint!); + _extraButton = new ViewDrawRibbonQATExtraButton(ribbon, needPaint); _extraButton.ClickAndFinish += OnExtraButtonClick; } } @@ -65,7 +65,7 @@ public ViewLayoutRibbonQATContents([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonQATContents:" + Id; + $"ViewLayoutRibbonQATContents:{Id}"; /// /// Clean up any resources being used. @@ -117,13 +117,13 @@ public KeyTipInfo[] GetQATKeyTips(KryptonForm? ownerForm) // Then use the alphanumeric 0A - 0Z for (var i = 25; i >= 0; i--) { - keyTipsPool.Push("0" + (char)(65 + i)); + keyTipsPool.Push($"0{(char)(65 + i)}"); } // Then use the number 09 - 01 for (var i = 1; i <= 9; i++) { - keyTipsPool.Push("0" + i.ToString()); + keyTipsPool.Push($"0{i}"); } // Start with the number 1 - 9 @@ -139,7 +139,7 @@ public KeyTipInfo[] GetQATKeyTips(KryptonForm? ownerForm) borders = ownerForm.RealWindowBorders; } - KeyTipInfoList keyTipList = new(); + var keyTipList = new KeyTipInfoList(); foreach (ViewBase child in this) { @@ -153,8 +153,8 @@ public KeyTipInfo[] GetQATKeyTips(KryptonForm? ownerForm) Rectangle viewRect = ParentControl.RectangleToScreen(viewQAT.ClientRectangle); // The keytip should be centered on the bottom center of the view - Point screenPt = new(viewRect.Left + (viewRect.Width / 2) - borders.Left, - viewRect.Bottom - 2 - borders.Top); + var screenPt = new Point(viewRect.Left + (viewRect.Width / 2) - borders.Left, + viewRect.Bottom - 2 - borders.Top); // Create new key tip that invokes the qat controller keyTipList.Add(new KeyTipInfo(viewQAT.Enabled, keyTipsPool.Pop(), screenPt, @@ -169,8 +169,8 @@ public KeyTipInfo[] GetQATKeyTips(KryptonForm? ownerForm) Rectangle viewRect = ParentControl.RectangleToScreen(_extraButton.ClientRectangle); // The keytip should be centered on the bottom center of the view - Point screenPt = new(viewRect.Left + (viewRect.Width / 2) - borders.Left, - viewRect.Bottom - 2 - borders.Top); + var screenPt = new Point(viewRect.Left + (viewRect.Width / 2) - borders.Left, + viewRect.Bottom - 2 - borders.Top); // Create fixed key tip of '00' that invokes the extra button controller keyTipList.Add(new KeyTipInfo(true, "00", screenPt, _extraButton.ClientRectangle, _extraButton.KeyTipTarget)); @@ -261,7 +261,7 @@ public override void Layout([DisallowNull] ViewLayoutContext context) SyncChildren(true); // We take on all the available display area - ClientRectangle = context!.DisplayRectangle; + ClientRectangle = context.DisplayRectangle; var x = ClientLocation.X; var right = ClientRectangle.Right; @@ -520,7 +520,7 @@ private void SyncChildren(bool layout) Clear(); // Create a new lookup that reflects any changes in QAT buttons - QATButtonToView regenerate = new(); + var regenerate = new QATButtonToView(); // Get an array with all the buttons to be considered for display var qatButtons = QATButtons; @@ -576,7 +576,7 @@ private void SyncChildren(bool layout) } } - private void OnExtraButtonClick(object sender, EventHandler finishDelegate) + private void OnExtraButtonClick(object sender, EventHandler? finishDelegate) { ViewDrawRibbonQATExtraButton button = (ViewDrawRibbonQATExtraButton)sender; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonQATMini.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonQATMini.cs index a7707d530..4db9a01ba 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonQATMini.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonQATMini.cs @@ -68,7 +68,7 @@ public ViewLayoutRibbonQATMini([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewLayoutRibbonQATMini:" + Id; + $@"ViewLayoutRibbonQATMini:{Id}"; /// /// Clean up any resources being used. @@ -128,7 +128,7 @@ public bool OverlapAppButton /// Array of KeyTipInfo instances. public KeyTipInfo[] GetQATKeyTips() { - KeyTipInfoList keyTipList = new(); + var keyTipList = new KeyTipInfoList(); // Add all the entries for the contents keyTipList.AddRange(_borderContents.GetQATKeyTips(OwnerForm)); @@ -147,8 +147,8 @@ public KeyTipInfo[] GetQATKeyTips() Rectangle viewRect = _borderContents.ParentControl.RectangleToScreen(_extraButton.ClientRectangle); // The keytip should be centered on the bottom center of the view - Point screenPt = new(viewRect.Left + (viewRect.Width / 2) - borders.Left, - viewRect.Bottom - 2 - borders.Top); + var screenPt = new Point(viewRect.Left + (viewRect.Width / 2) - borders.Left, + viewRect.Bottom - 2 - borders.Top); // Create fixed key tip of '00' that invokes the extra button controller keyTipList.Add(new KeyTipInfo(true, "00", screenPt, @@ -245,7 +245,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) } } - return base.GetPreferredSize(context!); + return base.GetPreferredSize(context); } /// @@ -279,7 +279,7 @@ public override void Layout(ViewLayoutContext context) } } - private void OnExtraButtonClick(object sender, EventHandler finishDelegate) + private void OnExtraButtonClick(object sender, EventHandler? finishDelegate) { ViewDrawRibbonQATExtraButton button = (ViewDrawRibbonQATExtraButton)sender; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonRowCenter.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonRowCenter.cs index c9426e60f..e4de691bd 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonRowCenter.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonRowCenter.cs @@ -52,7 +52,7 @@ public ViewLayoutRibbonRowCenter() /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonRowCenter:" + Id; + $"ViewLayoutRibbonRowCenter:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonScrollPort.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonScrollPort.cs index 85739200b..138eb838b 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonScrollPort.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonScrollPort.cs @@ -138,7 +138,7 @@ protected override bool ProcessDialogKey(Keys keyData) /// /// Occurs when the background needs painting. /// - public event PaintEventHandler PaintBackground; + public event PaintEventHandler? PaintBackground; #endregion #region Identity @@ -211,7 +211,7 @@ public ViewLayoutRibbonScrollPort([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonScrollPort:" + Id; + $"ViewLayoutRibbonScrollPort:{Id}"; #endregion @@ -312,7 +312,7 @@ public KeyTipInfo[] GetGroupKeyTips() // If we contain a groups layout if (_viewFiller is ViewLayoutRibbonGroups groups) { - KeyTipInfoList keyTips = new(); + var keyTips = new KeyTipInfoList(); // Grab the list of key tips for all groups keyTips.AddRange(groups.GetGroupKeyTips()); @@ -465,7 +465,7 @@ public override void Layout([DisallowNull] ViewLayoutContext context) ClientRectangle = context.DisplayRectangle; Rectangle layoutRect = ClientRectangle; - Rectangle controlRect = new(Point.Empty, ClientSize); + var controlRect = new Rectangle(Point.Empty, ClientSize); // Reset the the view control layout offset to be zero again ViewLayoutControl.LayoutOffset = Point.Empty; @@ -479,7 +479,7 @@ public override void Layout([DisallowNull] ViewLayoutContext context) // Ensure context has the correct control if (ViewLayoutControl.ChildControl is { IsDisposed: false }) { - using CorrectContextControl ccc = new(context, ViewLayoutControl.ChildControl); + using var ccc = new CorrectContextControl(context, ViewLayoutControl.ChildControl); _viewFiller.Layout(context); } @@ -646,7 +646,7 @@ public override void Render([DisallowNull] RenderContext context) if (child == _viewFiller) { // New clipping region is at most our own client size - using Region combineRegion = new(_viewClipRect); + using var combineRegion = new Region(_viewClipRect); // Remember the current clipping region Region clipRegion = context.Graphics.Clip.Clone(); diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonScroller.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonScroller.cs index 8ff7e2e92..36c44a0e6 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonScroller.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonScroller.cs @@ -37,7 +37,7 @@ internal class ViewLayoutRibbonScroller : ViewComposite /// /// Occurs when the button has been clicked. /// - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Identity @@ -62,8 +62,8 @@ public ViewLayoutRibbonScroller(KryptonRibbon ribbon, _separator = new ViewLayoutRibbonSeparator(GAP_LENGTH, true); // Create button controller for clicking the button - RepeatButtonController rbc = new(ribbon, _button, needPaintDelegate); - rbc.Click += OnButtonClick; + var rbc = new RepeatButtonController(ribbon, _button, needPaintDelegate); + rbc.Click += OnButtonClick!; _button.MouseController = rbc; // Add as child elements @@ -77,7 +77,7 @@ public ViewLayoutRibbonScroller(KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonScroller:" + Id; + $"ViewLayoutRibbonScroller:{Id}"; #endregion @@ -104,7 +104,7 @@ public VisualOrientation Orientation /// Layout context. public override Size GetPreferredSize(ViewLayoutContext context) => // Always return the same minimum size - new (SCROLLER_LENGTH + GAP_LENGTH, SCROLLER_LENGTH + GAP_LENGTH); + new Size(SCROLLER_LENGTH + GAP_LENGTH, SCROLLER_LENGTH + GAP_LENGTH); /// /// Perform a layout of the elements. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonSeparator.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonSeparator.cs index 81de0da31..986cd782c 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonSeparator.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonSeparator.cs @@ -60,7 +60,7 @@ public ViewLayoutRibbonSeparator(int width, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonSeparator:" + Id; + $"ViewLayoutRibbonSeparator:{Id}"; #endregion @@ -70,7 +70,7 @@ public override string ToString() => /// public Size SeparatorSize { - get => new(_width, _height); + get => new Size(_width, _height); set { @@ -87,7 +87,7 @@ public Size SeparatorSize /// Layout context. public override Size GetPreferredSize(ViewLayoutContext context) => // Always return the same minimum size - new (_width, _height); + new Size(_width, _height); /// /// Perform a layout of the elements. diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabs.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabs.cs index f01bc8f97..3743e526e 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabs.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabs.cs @@ -62,8 +62,8 @@ public ViewLayoutRibbonTabs([DisallowNull] KryptonRibbon ribbon, Debug.Assert(needPaint != null); // Cache references - _ribbon = ribbon!; - _needPaint = needPaint!; + _ribbon = ribbon; + _needPaint = needPaint; // Create cache of draw elements _tabCache = new ViewDrawRibbonTabList(); @@ -76,7 +76,7 @@ public ViewLayoutRibbonTabs([DisallowNull] KryptonRibbon ribbon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonTabs:" + Id; + $"ViewLayoutRibbonTabs:{Id}"; /// /// Clean up any resources being used. @@ -247,7 +247,7 @@ public NeedPaintHandler NeedPaintDelegate /// Array of KeyTipInfo instances. public KeyTipInfo[] GetTabKeyTips() { - KeyTipInfoList keyTipList = new(); + var keyTipList = new KeyTipInfoList(); foreach (ViewBase child in this) { @@ -260,7 +260,7 @@ public KeyTipInfo[] GetTabKeyTips() Rectangle tabRect = viewTab.OwningControl.RectangleToScreen(viewTab.ClientRectangle); // The keytip should be centered on the bottom center of the view - Point screenPt = new(tabRect.Left + (tabRect.Width / 2), tabRect.Bottom + 2); + var screenPt = new Point(tabRect.Left + (tabRect.Width / 2), tabRect.Bottom + 2); // Create new key tip that invokes the tab controller when selected keyTipList.Add(new KeyTipInfo(true, viewTab.RibbonTab.KeyTip, @@ -446,7 +446,7 @@ public override void Layout([DisallowNull] ViewLayoutContext context) SyncChildrenToRibbonTabs(); // We take on all the available display area - ClientRectangle = context!.DisplayRectangle; + ClientRectangle = context.DisplayRectangle; var x = ClientLocation.X; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabsArea.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabsArea.cs index c7c5120b6..8350b55eb 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabsArea.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabsArea.cs @@ -39,7 +39,7 @@ public RibbonButtonSpecFixedCollection(KryptonRibbon owner) #endregion #region Static Fields - private static readonly HandleRef NullHandleRef = new(null, IntPtr.Zero); + private static readonly HandleRef NullHandleRef = new HandleRef(null, IntPtr.Zero); private const int BUTTON_TAB_GAP_2007 = 5; private const int BUTTON_TAB_GAP_2010 = 0; //TODO dpi 12 ? private const int FAR_TAB_GAP = 1; @@ -81,7 +81,7 @@ public RibbonButtonSpecFixedCollection(KryptonRibbon owner) /// /// Occurs when the background needs painting. /// - public event PaintEventHandler PaintBackground; + public event PaintEventHandler? PaintBackground; #endregion #region Identity @@ -106,12 +106,12 @@ public ViewLayoutRibbonTabsArea([DisallowNull] KryptonRibbon ribbon, Debug.Assert(needPaintDelegate != null); // Remember incoming references - _ribbon = ribbon!; - _captionArea = captionArea!; + _ribbon = ribbon; + _captionArea = captionArea; _appButtonController = _captionArea.AppButtonController; _appTabController = _captionArea.AppTabController; - _layoutContexts = layoutContexts!; - NeedPaintDelegate = needPaintDelegate!; + _layoutContexts = layoutContexts; + NeedPaintDelegate = needPaintDelegate; // Default other state _setVisible = true; @@ -171,7 +171,7 @@ protected override void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonTabsArea:" + Id; + $"ViewLayoutRibbonTabsArea:{Id}"; #endregion @@ -302,7 +302,7 @@ public KeyTipInfo GetAppButtonKeyTip() buttonRect.X += 2; // The keytip should be centered on the top center of the bottom half - Point screenPt = new(buttonRect.Left + (buttonRect.Width / 2), buttonRect.Top); + var screenPt = new Point(buttonRect.Left + (buttonRect.Width / 2), buttonRect.Top); // Return key tip details return new KeyTipInfo(true, _ribbon.RibbonStrings.AppButtonKeyTip, screenPt, @@ -318,7 +318,7 @@ public KeyTipInfo GetAppTabKeyTip() Rectangle buttonRect = _ribbon.RectangleToScreen(LayoutAppTab.ClientRectangle); // The keytip should be centered on the top center of the bottom half - Point screenPt = new(buttonRect.Left + (buttonRect.Width / 2), buttonRect.Bottom + 2); + var screenPt = new Point(buttonRect.Left + (buttonRect.Width / 2), buttonRect.Bottom + 2); // Return key tip details return new KeyTipInfo(true, _ribbon.RibbonStrings.AppButtonKeyTip, screenPt, @@ -334,13 +334,13 @@ public KeyTipInfo GetAppTabKeyTip() /// Array of KeyTipInfo; otherwise null. public KeyTipInfo[] GetTabKeyTips() { - KeyTipInfoList keyTips = new(); + var keyTips = new KeyTipInfoList(); // Grab the list of key tips for all tab headers keyTips.AddRange(LayoutTabs.GetTabKeyTips()); // Remove all those that do not intercept the scroll port the tabs are inside - Rectangle scrollRect = new(Point.Empty, _tabsViewport.ClientSize); + var scrollRect = new Rectangle(Point.Empty, _tabsViewport.ClientSize); foreach (KeyTipInfo ti in keyTips.Where(ti => !scrollRect.Contains(ti.ClientRect))) { ti.Visible = false; @@ -443,8 +443,8 @@ protected NeedPaintHandler NeedPaintDelegate private void CreateController() { // Use a controller to initiate context menu when using right mouse click - RibbonTabsController controller = new(_ribbon); - controller.ContextClick += OnContextClicked; + var controller = new RibbonTabsController(_ribbon); + controller.ContextClick += OnContextClicked!; MouseController = controller; } @@ -475,7 +475,7 @@ private void CreateViewElements(PaletteRedirect? redirect) LayoutTabs.NeedPaintDelegate = _tabsViewport.ViewControlPaintDelegate; // We use a layout docker as a child to prevent buttons going to the left of the app button - ViewLayoutDocker tabsDocker = new() + var tabsDocker = new ViewLayoutDocker { // Place the tabs viewport as the fill inside ourself, the button specs will be placed @@ -491,8 +491,8 @@ private void CreateViewElements(PaletteRedirect? redirect) if (_appButtonController != null) { _appButtonController.Target3 = LayoutAppButton.AppButton; - _appButtonController.Click += OnAppButtonClicked; - _appButtonController.MouseReleased += OnAppButtonReleased; + _appButtonController.Click += OnAppButtonClicked!; + _appButtonController.MouseReleased += OnAppButtonReleased!; LayoutAppButton.MouseController = _appButtonController; LayoutAppButton.SourceController = _appButtonController; LayoutAppButton.KeyController = _appButtonController; @@ -501,8 +501,8 @@ private void CreateViewElements(PaletteRedirect? redirect) if (_appTabController != null) { _appTabController.Target1 = LayoutAppTab.AppTab; - _appTabController.Click += OnAppButtonClicked; - _appTabController.MouseReleased += OnAppButtonReleased; + _appTabController.Click += OnAppButtonClicked!; + _appTabController.MouseReleased += OnAppButtonReleased!; LayoutAppTab.MouseController = _appTabController; LayoutAppTab.SourceController = _appTabController; LayoutAppTab.KeyController = _appTabController; @@ -673,7 +673,7 @@ private void OnAppButtonClicked(object sender, EventArgs e) else { // Give event handler a change to cancel the open request - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); _ribbon.OnAppButtonMenuOpening(cea); if (cea.Cancel) @@ -745,15 +745,9 @@ private void OnAppMenuDisposed(object sender, EventArgs e) _ribbon.KillKeyboardMode(); // Remove the fixed 'pressed' state from the application button - if (_appButtonController != null) - { - _appButtonController.RemoveFixed(); - } + _appButtonController?.RemoveFixed(); - if (_appTabController != null) - { - _appTabController.RemoveFixed(); - } + _appTabController?.RemoveFixed(); // Should still be caching a reference to actual display control if (_appMenu != null) @@ -801,15 +795,16 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) IContentValues? sourceContent = null; LabelStyle toolTipStyle = LabelStyle.SuperTip; bool shadow = true; - Rectangle screenRect = new(e.ControlMousePosition, new Size(1, 1)); + var screenRect = new Rectangle(e.ControlMousePosition, new Size(1, 1)); // If the target is the application button switch (e.Target) { case ViewLayoutRibbonAppButton: case ViewLayoutRibbonAppTab: + { // Create a content that recovers values from a the ribbon for the app button/tab - AppButtonToolTipToContent appButtonContent = new(_ribbon); + var appButtonContent = new AppButtonToolTipToContent(_ribbon); // Is there actually anything to show for the tooltip if (appButtonContent.HasContent) @@ -823,13 +818,15 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) // Display below the mouse cursor screenRect.Height += SystemInformation.CursorSize.Height / 3 * 2; } + } break; case ViewDrawRibbonQATButton viewElement1: + { // If the target is a QAT button // Cast to correct type // Create a content that recovers values from a IQuickAccessToolbarButton - QATButtonToolTipToContent qatButtonContent = new(viewElement1.QATButton); + var qatButtonContent = new QATButtonToolTipToContent(viewElement1.QATButton); // Is there actually anything to show for the tooltip if (qatButtonContent.HasContent) @@ -843,6 +840,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) // Display below the mouse cursor screenRect.Height += SystemInformation.CursorSize.Height / 3 * 2; } + } break; default: { @@ -856,7 +854,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (_ribbon.AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(_ribbon.GetRedirector(), buttonSpec); + var buttonSpecMapping = new ButtonSpecToContent(_ribbon.GetRedirector(), buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) @@ -911,7 +909,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) CommonHelper.ContentStyleFromLabelStyle(toolTipStyle), shadow); - _visualPopupToolTip.Disposed += OnVisualPopupToolTipDisposed; + _visualPopupToolTip.Disposed += OnVisualPopupToolTipDisposed!; // The popup tooltip control always adds on a border above/below so we negate that here. screenRect.Height -= 20; @@ -929,7 +927,7 @@ private void OnVisualPopupToolTipDisposed(object sender, EventArgs e) { // Unhook events from the specific instance that generated event VisualPopupToolTip popupToolTip = (VisualPopupToolTip)sender; - popupToolTip.Disposed -= OnVisualPopupToolTipDisposed; + popupToolTip.Disposed -= OnVisualPopupToolTipDisposed!; // Not showing a popup page any more _visualPopupToolTip = null; diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabsSpare.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabsSpare.cs index ddc7f70d8..ab4bd2148 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabsSpare.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTabsSpare.cs @@ -33,7 +33,7 @@ public ViewLayoutRibbonTabsSpare() /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonTabsSpare:" + Id; + $"ViewLayoutRibbonTabsSpare:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTitle.cs b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTitle.cs index 0b4b85f4b..3d0f1ab66 100644 --- a/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTitle.cs +++ b/Source/Krypton Components/Krypton.Ribbon/View Layout/ViewLayoutRibbonTitle.cs @@ -33,7 +33,7 @@ public ViewLayoutRibbonTitle() /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutRibbonTitle:" + Id; + $"ViewLayoutRibbonTitle:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/AccurateText/AccurateText.cs b/Source/Krypton Components/Krypton.Toolkit/AccurateText/AccurateText.cs index ea33ee796..8ffdffd7d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/AccurateText/AccurateText.cs +++ b/Source/Krypton Components/Krypton.Toolkit/AccurateText/AccurateText.cs @@ -80,7 +80,7 @@ public static AccurateTextMemento MeasureString([DisallowNull] Graphics g, } // Create the format object used when measuring and drawing - StringFormat format = new() { FormatFlags = StringFormatFlags.NoClip }; + var format = new StringFormat { FormatFlags = StringFormatFlags.NoClip }; // Ensure that text reflects reversed RTL setting if (rtl == RightToLeft.Yes) @@ -155,7 +155,7 @@ public static AccurateTextMemento MeasureString([DisallowNull] Graphics g, text = text.Replace("\t", @" "); // Perform actual measure of the text - using GraphicsTextHint graphicsHint = new(g, hint); + using var graphicsHint = new GraphicsTextHint(g, hint); SizeF textSize = Size.Empty; try @@ -357,7 +357,7 @@ public static void DrawCompositionGlowingText(Graphics? g, { IntPtr mDC = PI.CreateCompatibleDC(gDC); - PI.BITMAPINFO bmi = new() + var bmi = new PI.BITMAPINFO { biWidth = bounds.Width, biHeight = -(bounds.Height + (GLOW_EXTRA_HEIGHT * 2)), @@ -384,18 +384,19 @@ public static void DrawCompositionGlowingText(Graphics? g, PI.SelectObject(mDC, hFont); // Get renderer for the correct state - VisualStyleRenderer renderer = new(state == PaletteState.Normal ? VisualStyleElement.Window.Caption.Active : - VisualStyleElement.Window.Caption.Inactive); + var renderer = new VisualStyleRenderer(state == PaletteState.Normal + ? VisualStyleElement.Window.Caption.Active + : VisualStyleElement.Window.Caption.Inactive); // Create structures needed for theme drawing call - PI.RECT textBounds = new() + var textBounds = new PI.RECT { left = 0, top = 0, right = bounds.Right - bounds.Left, bottom = bounds.Bottom - bounds.Top + (GLOW_EXTRA_HEIGHT * 2) }; - PI.DTTOPTS dttOpts = new() + var dttOpts = new PI.DTTOPTS { dwSize = Marshal.SizeOf(typeof(PI.DTTOPTS)), dwFlags = PI.DTT_COMPOSITED | PI.DTT_GLOWSIZE | PI.DTT_TEXTCOLOR, @@ -463,7 +464,7 @@ public static void DrawCompositionText(Graphics? g, { IntPtr mDC = PI.CreateCompatibleDC(gDC); - PI.BITMAPINFO bmi = new() + var bmi = new PI.BITMAPINFO { biWidth = bounds.Width, biHeight = -bounds.Height, @@ -489,18 +490,19 @@ public static void DrawCompositionText(Graphics? g, PI.SelectObject(mDC, hFont); // Get renderer for the correct state - VisualStyleRenderer renderer = new(state == PaletteState.Normal ? VisualStyleElement.Window.Caption.Active : - VisualStyleElement.Window.Caption.Inactive); + var renderer = new VisualStyleRenderer(state == PaletteState.Normal + ? VisualStyleElement.Window.Caption.Active + : VisualStyleElement.Window.Caption.Inactive); // Create structures needed for theme drawing call - PI.RECT textBounds = new() + var textBounds = new PI.RECT { left = 0, top = 0, right = bounds.Right - bounds.Left, bottom = bounds.Bottom - bounds.Top }; - PI.DTTOPTS dttOpts = new() + var dttOpts = new PI.DTTOPTS { dwSize = Marshal.SizeOf(typeof(PI.DTTOPTS)), dwFlags = PI.DTT_COMPOSITED | PI.DTT_TEXTCOLOR, @@ -551,7 +553,7 @@ public static void DrawCompositionText(Graphics? g, private static StringFormat FlagsToStringFormat(TextFormatFlags flags) { - StringFormat sf = new(); + var sf = new StringFormat(); // Translation table: http://msdn.microsoft.com/msdnmag/issues/06/03/TextRendering/default.aspx?fig=true#fig4 @@ -644,7 +646,7 @@ private static StringFormat FlagsToStringFormat(TextFormatFlags flags) private static TextFormatFlags StringFormatToFlags(StringFormat sf) { - TextFormatFlags flags = new(); + var flags = new TextFormatFlags(); // Translation table: http://msdn.microsoft.com/msdnmag/issues/06/03/TextRendering/default.aspx?fig=true#fig4 diff --git a/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpec.cs b/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpec.cs index 49524f83c..5c4c927c0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpec.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpec.cs @@ -56,14 +56,14 @@ public abstract class ButtonSpec : Component, /// [Category(@"Action")] [Description(@"Occurs when the component is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs whenever a button specification property has changed. /// [Category(@"ButtonSpec")] [Description(@"Occurs when a button specification property has changed.")] - public event PropertyChangedEventHandler ButtonSpecPropertyChanged; + public event PropertyChangedEventHandler? ButtonSpecPropertyChanged; #endregion #region Identity @@ -777,7 +777,7 @@ public virtual KryptonCommand? KryptonCommand if (_command != null) { - _command.PropertyChanged += OnCommandPropertyChanged!; + _command.PropertyChanged += OnCommandPropertyChanged; } } } diff --git a/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecCollection.cs b/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecCollection.cs index 5d7c71307..7ee708eb5 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecCollection.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecCollection.cs @@ -23,22 +23,22 @@ public abstract class ButtonSpecCollectionBase : GlobalId /// /// Occurs when a spec is about to be added/inserted to the collection. /// - public event EventHandler Inserting; + public event EventHandler? Inserting; /// /// Occurs when a spec has been added/inserted to the collection. /// - public event EventHandler Inserted; + public event EventHandler? Inserted; /// /// Occurs when a spec is about to be removed from the collection. /// - public event EventHandler Removing; + public event EventHandler? Removing; /// /// Occurs when a spec is removed from the collection. /// - public event EventHandler Removed; + public event EventHandler? Removed; #endregion #region Identity @@ -131,7 +131,7 @@ public ButtonSpecCollection(object owner) /// Obtains the String representation of this instance. /// /// User readable name of the instance. - public override string ToString() => Count + " Instances"; + public override string ToString() => $"{Count} Instances"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecFormFixed.cs b/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecFormFixed.cs index 5034c6c65..ea60eade7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecFormFixed.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecFormFixed.cs @@ -30,7 +30,7 @@ protected ButtonSpecFormFixed([DisallowNull] KryptonForm form, Debug.Assert(form != null); // Remember back reference to owning navigator. - KryptonForm = form!; + KryptonForm = form; // Fix the type ProtectedType = fixedStyle; diff --git a/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecManagerBase.cs b/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecManagerBase.cs index a047cd571..c346acea0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecManagerBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecManagerBase.cs @@ -78,7 +78,7 @@ protected ButtonSpecManagerBase([DisallowNull] Control control, _viewMetricIntOutside = viewMetricIntOutside; _viewMetricIntInside = viewMetricIntInside; _viewMetricPaddings = viewMetricPaddings; - _getRenderer = getRenderer!; + _getRenderer = getRenderer; if (_viewMetrics != null) { @@ -95,8 +95,8 @@ protected ButtonSpecManagerBase([DisallowNull] Control control, if (_variableSpecs != null) { // Need to hook into changes in the button collection - _variableSpecs.Inserted += OnButtonSpecInserted!; - _variableSpecs.Removed += OnButtonSpecRemoved!; + _variableSpecs.Inserted += OnButtonSpecInserted; + _variableSpecs.Removed += OnButtonSpecRemoved; } } #endregion @@ -156,8 +156,8 @@ public void Construct() _viewSpacers[i] = new ListSpacers(); // Always create the outside edge spacers - ViewLayoutMetricSpacer spacerL1 = new(viewMetric, viewMetricIntOutside); - ViewLayoutMetricSpacer spacerR1 = new(viewMetric, viewMetricIntOutside); + var spacerL1 = new ViewLayoutMetricSpacer(viewMetric, viewMetricIntOutside); + var spacerR1 = new ViewLayoutMetricSpacer(viewMetric, viewMetricIntOutside); spacerL1.Visible = spacerR1.Visible = false; // Add the spacers to the docker instance @@ -171,8 +171,8 @@ public void Construct() PaletteMetricInt viewMetricIntInside = _viewMetricIntInside[i]; // Create the inside edge spacers - ViewLayoutMetricSpacer spacerL2 = new(viewMetric, viewMetricIntInside); - ViewLayoutMetricSpacer spacerR2 = new(viewMetric, viewMetricIntInside); + var spacerL2 = new ViewLayoutMetricSpacer(viewMetric, viewMetricIntInside); + var spacerR2 = new ViewLayoutMetricSpacer(viewMetric, viewMetricIntInside); spacerL2.Visible = spacerR2.Visible = false; // Add them into the view docker instance @@ -194,8 +194,8 @@ public void Destruct() if (_variableSpecs != null) { // Unhook from button collection events - _variableSpecs.Inserted -= OnButtonSpecInserted!; - _variableSpecs.Removed -= OnButtonSpecRemoved!; + _variableSpecs.Inserted -= OnButtonSpecInserted; + _variableSpecs.Removed -= OnButtonSpecRemoved; } // Destruct each of the button views @@ -658,15 +658,11 @@ protected virtual void ButtonSpecCreated(ButtonSpec buttonSpec, /// Target metric padding. /// ButtonSpec instance. /// ButtonSpecView derived class. - protected virtual ButtonSpecView CreateButtonSpecView([DisallowNull] PaletteRedirect? redirector, + protected virtual ButtonSpecView CreateButtonSpecView([DisallowNull] PaletteRedirect redirector, IPaletteMetric? viewPaletteMetric, PaletteMetricPadding viewMetricPadding, ButtonSpec buttonSpec) => - new(redirector, - viewPaletteMetric, - viewMetricPadding, - this, - buttonSpec); + new ButtonSpecView(redirector, viewPaletteMetric, viewMetricPadding, this, buttonSpec); /// /// Raises the NeedPaint event. @@ -799,7 +795,7 @@ private void CreateFromCollection(ButtonSpecCollectionBase? specs, ButtonSpecCreated(buttonSpec, buttonView, viewDockerIndex); // Hook in to the button spec change event - buttonSpec.ButtonSpecPropertyChanged += OnPropertyChanged!; + buttonSpec.ButtonSpecPropertyChanged += OnPropertyChanged; return buttonView; } @@ -810,7 +806,7 @@ private void CreateFromCollection(ButtonSpecCollectionBase? specs, private void RemoveButtonSpec(ButtonSpec buttonSpec) { // Unhook from button spec events - buttonSpec.ButtonSpecPropertyChanged -= OnPropertyChanged!; + buttonSpec.ButtonSpecPropertyChanged -= OnPropertyChanged; // Get the button view from the button spec ButtonSpecView? buttonView = _specLookup[buttonSpec]; diff --git a/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecView.cs b/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecView.cs index 40618b018..a1d6c5037 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecView.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ButtonSpec/ButtonSpecView.cs @@ -21,7 +21,7 @@ public class ButtonSpecView : GlobalId, #region Instance Fields private readonly PaletteRedirect? _redirector; private readonly PaletteTripleRedirect _palette; - private readonly EventHandler _finishDelegate; + private readonly EventHandler? _finishDelegate; private ButtonController? _controller; #endregion @@ -48,7 +48,7 @@ public ButtonSpecView([DisallowNull] PaletteRedirect redirector, _redirector = redirector; Manager = manager; ButtonSpec = buttonSpec; - _finishDelegate = OnFinishDelegate!; + _finishDelegate = OnFinishDelegate; // Create delegate for paint notifications NeedPaintHandler needPaint = OnNeedPaint; @@ -82,13 +82,13 @@ public ButtonSpecView([DisallowNull] PaletteRedirect redirector, }; // Create a controller for managing button behavior - ButtonSpecViewControllers controllers = CreateController(ViewButton, needPaint, OnClick!); + ButtonSpecViewControllers controllers = CreateController(ViewButton, needPaint, OnClick); ViewButton.MouseController = controllers.MouseController; ViewButton.SourceController = controllers.SourceController; ViewButton.KeyController = controllers.KeyController; // We need notifying whenever a button specification property changes - ButtonSpec.ButtonSpecPropertyChanged += OnPropertyChanged!; + ButtonSpec.ButtonSpecPropertyChanged += OnPropertyChanged; // Associate the button spec with the view that is drawing it ButtonSpec.SetView(ViewButton); @@ -256,7 +256,7 @@ public bool UpdateChecked() public void Destruct() { // Unhook from events - ButtonSpec.ButtonSpecPropertyChanged -= OnPropertyChanged!; + ButtonSpec.ButtonSpecPropertyChanged -= OnPropertyChanged; // Remove buttonspec/view association ButtonSpec.SetView(null); @@ -373,11 +373,11 @@ private void OnClick(object sender, MouseEventArgs e) : Manager.Control!.PointToScreen(new Point(rect.Left, rect.Bottom + 3)); // Show the context menu just below the view itself - ButtonSpec.KryptonContextMenu.Closed += OnKryptonContextMenuClosed!; + ButtonSpec.KryptonContextMenu.Closed += OnKryptonContextMenuClosed; if (!ButtonSpec.KryptonContextMenu.Show(ButtonSpec, pt)) { // Menu not being shown, so clean up - ButtonSpec.KryptonContextMenu.Closed -= OnKryptonContextMenuClosed!; + ButtonSpec.KryptonContextMenu.Closed -= OnKryptonContextMenuClosed; // Not showing a context menu, so remove the fixed view immediately _finishDelegate?.Invoke(this, EventArgs.Empty); @@ -412,7 +412,7 @@ private void OnKryptonContextMenuClosed(object sender, ToolStripDropDownClosedEv { // Unhook from context menu event so it could garbage collected in the future KryptonContextMenu kcm = (KryptonContextMenu)sender; - kcm.Closed -= OnKryptonContextMenuClosed!; + kcm.Closed -= OnKryptonContextMenuClosed; // Remove the fixed button appearance OnFinishDelegate(sender, e); diff --git a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCheckBox.cs b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCheckBox.cs index fd2a5a75f..ad1663ea9 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCheckBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCheckBox.cs @@ -45,21 +45,21 @@ public class KryptonContextMenuCheckBox : KryptonContextMenuItemBase /// [Category(@"Action")] [Description(@"Occurs when the check box item is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the value of the Checked property has changed. /// [Category(@"Misc")] [Description(@"Occurs whenever the Checked property has changed.")] - public event EventHandler CheckedChanged; + public event EventHandler? CheckedChanged; /// /// Occurs when the value of the CheckState property has changed. /// [Category(@"Misc")] [Description(@"Occurs whenever the CheckState property has changed.")] - public event EventHandler CheckStateChanged; + public event EventHandler? CheckStateChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCheckButton.cs b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCheckButton.cs index d40f2d85b..48f47d762 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCheckButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCheckButton.cs @@ -42,14 +42,14 @@ public class KryptonContextMenuCheckButton : KryptonContextMenuItemBase /// [Category(@"Action")] [Description(@"Occurs when the check box item is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the value of the Checked property has changed. /// [Category(@"Misc")] [Description(@"Occurs whenever the Checked property has changed.")] - public event EventHandler CheckedChanged; + public event EventHandler? CheckedChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCollections.cs b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCollections.cs index 0769750d6..54345b53e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCollections.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuCollections.cs @@ -185,7 +185,7 @@ private void UncheckRadioButtons(int start, int end, int change) private ViewLayoutStack AddColumn(ViewLayoutStack columns) { - ViewLayoutStack column = new(false); + var column = new ViewLayoutStack(false); columns.Add(column); return column; } @@ -275,7 +275,7 @@ private ViewBase AddColumn(IContextMenuProvider provider, bool imageColumn) { // Create a pile specific to organising menu items - ViewLayoutMenuItemsPile menuItemPile = new(provider, items, standardStyle, imageColumn); + var menuItemPile = new ViewLayoutMenuItemsPile(provider, items, standardStyle, imageColumn); // The pile is the root item for the new column columns.Add(menuItemPile); diff --git a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuColorColumns.cs b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuColorColumns.cs index f0cf0eb33..9dfc218fa 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuColorColumns.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuColorColumns.cs @@ -85,14 +85,14 @@ public class KryptonContextMenuColorColumns : KryptonContextMenuItemBase /// [Category(@"Action")] [Description(@"Occurs when the SelectedColor property changes value.")] - public event EventHandler SelectedColorChanged; + public event EventHandler? SelectedColorChanged; /// /// Occurs when the user is tracking over a color. /// [Category(@"Action")] [Description(@"Occurs when user is tracking over a color.")] - public event EventHandler TrackingColor; + public event EventHandler? TrackingColor; #endregion #region Identity @@ -275,7 +275,7 @@ public bool GroupNonFirstRows /// /// An array of color arrays, each of which must be the same length. /// - public void SetCustomColors(Color[][] colors) + public void SetCustomColors(Color[]?[]? colors) { // Cannot accept an empty argument if ((colors == null) || (colors.Length == 0)) @@ -296,12 +296,12 @@ public void SetCustomColors(Color[][] colors) // Cache length of first child array if (i == 0) { - rows = colors[i].Length; + rows = colors[i]!.Length; } else { // All other child arrays must be the same length - if (colors[i].Length != rows) + if (colors[i]!.Length != rows) { throw new ArgumentOutOfRangeException(nameof(colors), "Each child color array must be the same length."); } @@ -309,7 +309,7 @@ public void SetCustomColors(Color[][] colors) } } - Colors = colors; + Colors = colors!; } /// @@ -317,20 +317,11 @@ public void SetCustomColors(Color[][] colors) /// /// Color to find. /// True if found; otherwise false. - public bool ContainsColor(Color color) + public bool ContainsColor([DisallowNull] Color color) { if ((Colors != null) && (color != null)) { - foreach (var column in Colors) - { - foreach (Color row in column) - { - if (color.Equals(row)) - { - return true; - } - } - } + return Colors.Any(column => column.Contains(color)); } return false; diff --git a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuImageSelect.cs b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuImageSelect.cs index 32a2176fd..c4e0d8f44 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuImageSelect.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuImageSelect.cs @@ -44,21 +44,21 @@ public class KryptonContextMenuImageSelect : KryptonContextMenuItemBase /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the SelectedIndex property changes.")] - public event EventHandler SelectedIndexChanged; + public event EventHandler? SelectedIndexChanged; /// /// Occurs when the user is tracking over a color. /// [Category(@"Action")] [Description(@"Occurs when user is tracking over an image.")] - public event EventHandler TrackingImage; + public event EventHandler? TrackingImage; /// /// Occurs when the value of the SelectedIndex property changes. /// [Category(@"Action")] [Description(@"Occurs when an image is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuItem.cs b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuItem.cs index 4d6eed48b..a9b785c24 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuItem.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuItem.cs @@ -48,21 +48,21 @@ public class KryptonContextMenuItem : KryptonContextMenuItemBase /// [Category(@"Action")] [Description(@"Occurs when the menu item is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the menu item is clicked. /// [Category(@"Property Changed")] [Description(@"Occurs when the checked property changes.")] - public event EventHandler CheckedChanged; + public event EventHandler? CheckedChanged; /// /// Occurs when the menu item is clicked. /// [Category(@"Property Changed")] [Description(@"Occurs when the check state property changes.")] - public event EventHandler CheckStateChanged; + public event EventHandler? CheckStateChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuItems.cs b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuItems.cs index 2c8f57679..d04a42d3a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuItems.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuItems.cs @@ -110,7 +110,7 @@ public override ViewBase GenerateView(IContextMenuProvider provider, bool imageColumn) { // Add child items into columns of display views - ViewLayoutStack itemsColumns = new(true); + var itemsColumns = new ViewLayoutStack(true); Items.GenerateView(provider, this, this, itemsColumns, StandardStyle, ImageColumn); return itemsColumns; } diff --git a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuLinkLabel.cs b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuLinkLabel.cs index 5ddcde21e..441a3750c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuLinkLabel.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuLinkLabel.cs @@ -47,7 +47,7 @@ public class KryptonContextMenuLinkLabel : KryptonContextMenuItemBase /// [Category(@"Action")] [Description(@"Occurs when the link label item is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuMonthCalendar.cs b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuMonthCalendar.cs index ec0f699e4..4df096c5d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuMonthCalendar.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuMonthCalendar.cs @@ -75,21 +75,21 @@ public class KryptonContextMenuMonthCalendar : KryptonContextMenuItemBase /// [Category(@"Action")] [Description(@"Occurs when the selected date changes.")] - public event DateRangeEventHandler DateChanged; + public event DateRangeEventHandler? DateChanged; /// /// Occurs when the selected start date changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the selected start date changes.")] - public event EventHandler SelectionStartChanged; + public event EventHandler? SelectionStartChanged; /// /// Occurs when the selected end date changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the selected end date changes.")] - public event EventHandler SelectionEndChanged; + public event EventHandler? SelectionEndChanged; #endregion #region Identity @@ -651,7 +651,7 @@ private void ResetSelectionEnd() [Bindable(true)] public SelectionRange SelectionRange { - get => new(SelectionStart, SelectionEnd); + get => new SelectionRange(SelectionStart, SelectionEnd); set => SetSelectionRange(value.Start, value.End); } diff --git a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuRadioButton.cs b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuRadioButton.cs index 4405489c4..a4b33b857 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuRadioButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuRadioButton.cs @@ -43,14 +43,14 @@ public class KryptonContextMenuRadioButton : KryptonContextMenuItemBase /// [Category(@"Action")] [Description(@"Occurs when the radio button is clicked.")] - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the value of the Checked property has changed. /// [Category(@"Misc")] [Description(@"Occurs whenever the Checked property has changed.")] - public event EventHandler CheckedChanged; + public event EventHandler? CheckedChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuSeparator.cs b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuSeparator.cs index aa48ec45e..4504d9ac6 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuSeparator.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ContextMenu/KryptonContextMenuSeparator.cs @@ -93,11 +93,13 @@ public override ViewBase GenerateView(IContextMenuProvider provider, if (Horizontal && (parent is KryptonContextMenuItemCollection)) { // Create a stack of horizontal items inside the item - ViewLayoutDocker docker = new(); + var docker = new ViewLayoutDocker(); // Take up same space as the image column, so separator starts close to actual text - ViewDrawContent imageContent = new(provider.ProviderStateCommon.ItemImage.Content, new FixedContentValue(null, null, null, Color.Empty), VisualOrientation.Top); - ViewDrawMenuImageCanvas imageCanvas = new(provider.ProviderStateCommon.ItemImage.Back, provider.ProviderStateCommon.ItemImage.Border, 0, true) + var imageContent = new ViewDrawContent(provider.ProviderStateCommon.ItemImage.Content, + new FixedContentValue(null, null, null, Color.Empty), VisualOrientation.Top); + var imageCanvas = new ViewDrawMenuImageCanvas(provider.ProviderStateCommon.ItemImage.Back, + provider.ProviderStateCommon.ItemImage.Border, 0, true) { imageContent }; @@ -108,7 +110,7 @@ public override ViewBase GenerateView(IContextMenuProvider provider, docker.Add(new ViewLayoutMenuSepGap(provider.ProviderStateCommon, standardStyle), ViewDockStyle.Left); // Separator Display - ViewLayoutStack separatorStack = new(false) + var separatorStack = new ViewLayoutStack(false) { new ViewLayoutSeparator(1, 1), new ViewDrawMenuSeparator(this, provider.ProviderStateCommon.Separator), diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/ButtonController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/ButtonController.cs index 5373d479e..c87883843 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/ButtonController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/ButtonController.cs @@ -38,47 +38,47 @@ public class ButtonController : GlobalId, /// /// Occurs when the mouse is used to left click the target. /// - public event MouseEventHandler Click; + public event MouseEventHandler? Click; /// /// Occurs when the mouse is used to right click the target. /// - public event MouseEventHandler RightClick; + public event MouseEventHandler? RightClick; /// /// Occurs when the mouse is used to left select the target. /// - public event MouseEventHandler MouseSelect; + public event MouseEventHandler? MouseSelect; /// /// Occurs when start of drag operation occurs. /// - public event EventHandler DragStart; + public event EventHandler? DragStart; /// /// Occurs when drag moves. /// - public event EventHandler DragMove; + public event EventHandler? DragMove; /// /// Occurs when drag ends. /// - public event EventHandler DragEnd; + public event EventHandler? DragEnd; /// /// Occurs when drag quits. /// - public event EventHandler DragQuit; + public event EventHandler? DragQuit; /// /// Occurs when the drag rectangle for the button is required. /// - public event EventHandler ButtonDragRectangle; + public event EventHandler? ButtonDragRectangle; /// /// Occurs when the dragging inside the button drag rectangle. /// - public event EventHandler ButtonDragOffset; + public event EventHandler? ButtonDragOffset; #endregion #region Identity @@ -255,7 +255,7 @@ public virtual void MouseMove(Control c, Point pt) { _draggingAttempt = true; Point targetOrigin = Target.ClientLocation; - Point offset = new(MousePoint.X - targetOrigin.X, MousePoint.Y - targetOrigin.Y); + var offset = new Point(MousePoint.X - targetOrigin.X, MousePoint.Y - targetOrigin.Y); OnDragStart(MousePoint, offset, c); } } @@ -263,7 +263,7 @@ public virtual void MouseMove(Control c, Point pt) if (!_dragging && !_dragRect.IsEmpty && _preDragOffset) { - ButtonDragOffsetEventArgs args = new(pt); + var args = new ButtonDragOffsetEventArgs(pt); OnButtonDragOffset(args); } } @@ -294,8 +294,8 @@ public virtual bool MouseDown(Control c, Point pt, MouseButtons button) Captured = true; _draggingAttempt = false; - // Use event to discover the rectangle that causes dragging to begin - ButtonDragRectangleEventArgs args = new(pt); + // Use event to discover the rectangle that causes dragging to begin + var args = new ButtonDragRectangleEventArgs(pt); OnButtonDragRectangle(args); _dragRect = args.DragRect; _preDragOffset = args.PreDragOffset; @@ -833,7 +833,7 @@ protected virtual void OnDragStart(Point mousePt, Point offset, Control c) { // Convert point from client to screen coordinates mousePt = Target.OwningControl.PointToScreen(mousePt); - DragStartEventCancelArgs ce = new(mousePt, offset, c); + var ce = new DragStartEventCancelArgs(mousePt, offset, c); DragStart?.Invoke(this, ce); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/CheckBoxController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/CheckBoxController.cs index 72495d004..b7f14a976 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/CheckBoxController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/CheckBoxController.cs @@ -30,7 +30,7 @@ public class CheckBoxController : GlobalId, /// /// Occurs when the check box has been selected. /// - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/LinkLabelController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/LinkLabelController.cs index 5bfa9a5de..4d70d3ccf 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/LinkLabelController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/LinkLabelController.cs @@ -37,7 +37,7 @@ public class LinkLabelController : GlobalId, /// /// Occurs when the mouse is used to left click the target. /// - public event MouseEventHandler Click; + public event MouseEventHandler? Click; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuCheckBoxController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuCheckBoxController.cs index 9aae1d2a0..256e3e870 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuCheckBoxController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuCheckBoxController.cs @@ -33,7 +33,7 @@ internal class MenuCheckBoxController : GlobalId, /// /// Occurs when the check box has been clicked. /// - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Identity @@ -397,7 +397,7 @@ private void PressMenuCheckBox(bool keyboard) if (_menuCheckBox.CanCloseMenu) { // Ask the original context menu definition, if we can close - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); _menuCheckBox.Closing(cea); if (!cea.Cancel) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuCheckButtonController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuCheckButtonController.cs index 175617758..9662f719f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuCheckButtonController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuCheckButtonController.cs @@ -33,7 +33,7 @@ internal class MenuCheckButtonController : GlobalId, /// /// Occurs when the check button has been clicked. /// - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Identity @@ -400,7 +400,7 @@ private void PressMenuCheckButton(bool keyboard) if (_menuCheckButton.CanCloseMenu) { // Ask the original context menu definition, if we can close - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); _menuCheckButton.Closing(cea); if (!cea.Cancel) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuColorBlockController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuColorBlockController.cs index 3e2721d4e..c3721c6a4 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuColorBlockController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuColorBlockController.cs @@ -32,7 +32,7 @@ internal class MenuColorBlockController : GlobalId, /// /// Occurs when the color block has been clicked. /// - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Identity @@ -384,7 +384,7 @@ private void PressColorBlock() if (_menuColorBlock.CanCloseMenu) { // Ask the original context menu definition, if we can close - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); _menuColorBlock.Closing(cea); if (!cea.Cancel) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuImageSelectController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuImageSelectController.cs index cdd484273..8a4a49a03 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuImageSelectController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuImageSelectController.cs @@ -34,7 +34,7 @@ internal class MenuImageSelectController : GlobalId, /// /// Occurs when the mouse is used to left click the target. /// - public event MouseEventHandler Click; + public event MouseEventHandler? Click; #endregion #region Identity @@ -333,7 +333,7 @@ public virtual void KeyDown([DisallowNull] Control c, [DisallowNull] KeyEventArg case Keys.Space: if (_layout.ItemEnabled) { - Point pt = new(int.MaxValue, int.MaxValue); + var pt = new Point(int.MaxValue, int.MaxValue); OnClick(new MouseEventArgs(MouseButtons.Left, 1, pt.X, pt.Y, 0)); UpdateTargetState(pt); } @@ -461,7 +461,7 @@ protected void UpdateTargetState(Control c) if (c is { IsDisposed: false }) { // Ensure control is inside a visible top level form - Form f = c.FindForm(); + Form? f = c.FindForm(); if (f is { Visible: true }) { UpdateTargetState(c.PointToClient(Control.MousePosition)); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuItemController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuItemController.cs index a0d50afad..41b4c98ef 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuItemController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuItemController.cs @@ -409,7 +409,7 @@ private void PressMenuItem() if (_menuItem.CanCloseMenu) { // Ask the original context menu definition, if we can close - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); _menuItem.Closing(cea); if (!cea.Cancel) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuLinkLabelController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuLinkLabelController.cs index 73baf9a19..519f0014c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuLinkLabelController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuLinkLabelController.cs @@ -33,7 +33,7 @@ internal class MenuLinkLabelController : GlobalId, /// /// Occurs when the link label has been clicked. /// - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Identity @@ -395,7 +395,7 @@ private void PressMenuLinkLabel(bool keyboard) if (_menuLinkLabel.CanCloseMenu) { // Ask the original context menu definition, if we can close - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); _menuLinkLabel.Closing(cea); if (!cea.Cancel) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuRadioButtonController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuRadioButtonController.cs index b89e07979..cfc0e8786 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/MenuRadioButtonController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/MenuRadioButtonController.cs @@ -33,7 +33,7 @@ internal class MenuRadioButtonController : GlobalId, /// /// Occurs when the radio button has been clicked. /// - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Identity @@ -397,7 +397,7 @@ private void PressMenuRadioButton(bool keyboard) if (_menuRadioButton.CanCloseMenu) { // Ask the original context menu definition, if we can close - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); _menuRadioButton.Closing(cea); if (!cea.Cancel) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/MonthCalendarController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/MonthCalendarController.cs index dca4e6d2c..22347944e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/MonthCalendarController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/MonthCalendarController.cs @@ -156,7 +156,7 @@ public virtual void MouseMove(Control c, Point pt) // Enforce the maximum number of days DateTime selectStart = _selectionStart; - TimeSpan span = new(_months.Calendar.MaxSelectionCount - 1, 0, 0, 0); + var span = new TimeSpan(_months.Calendar.MaxSelectionCount - 1, 0, 0, 0); if (selectEnd > selectStart) { if ((selectEnd - selectStart) > span) @@ -258,7 +258,7 @@ public virtual void MouseUp(Control c, Point pt, MouseButtons button) if (_months.Provider.ProviderCanCloseMenu) { // Ask the original context menu definition, if we can close - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); _months.Provider.OnClosing(cea); if (!cea.Cancel) @@ -403,7 +403,7 @@ public virtual void KeyDown([DisallowNull] Control c, [DisallowNull] KeyEventArg // Is the menu capable of being closed? { // Ask the original context menu definition, if we can close - CancelEventArgs cea = new(); + var cea = new CancelEventArgs(); _months.Provider.OnClosing(cea); if (!cea.Cancel) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/RadioButtonController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/RadioButtonController.cs index 25ba8a902..6d15a2ed2 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/RadioButtonController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/RadioButtonController.cs @@ -27,7 +27,7 @@ internal class RadioButtonController : GlobalId, /// /// Occurs when the radio button has been selected. /// - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Controller/SeparatorController.cs b/Source/Krypton Components/Krypton.Toolkit/Controller/SeparatorController.cs index c88f65c43..596b3c8fc 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controller/SeparatorController.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controller/SeparatorController.cs @@ -163,7 +163,8 @@ protected override void WndProc(ref Message m) #endregion #region Static Fields - private static readonly Point _nullPoint = new(-1, -1); + // TODO: Should be scaled + private static readonly Point _nullPoint = new Point(-1, -1); private static readonly Cursor _cursorHSplit = Cursors.HSplit; private static readonly Cursor _cursorVSplit = Cursors.VSplit; private static readonly Cursor _cursorHMove = Cursors.SizeNS; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBorderEdge.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBorderEdge.cs index b9838f411..0da6a3325 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBorderEdge.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBorderEdge.cs @@ -299,7 +299,7 @@ public virtual void SetFixedState(PaletteState state) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(50, 50); + protected override Size DefaultSize => new Size(50, 50); /// /// Raises the EnabledChanged event. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBreadCrumb.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBreadCrumb.cs index 546515965..f2d92aaf2 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBreadCrumb.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBreadCrumb.cs @@ -62,28 +62,28 @@ public BreadCrumbButtonSpecCollection(KryptonBreadCrumb owner) /// [Category(@"Behavior")] [Description(@"Occurs when the control has been fully initialized.")] - public event EventHandler Initialized; + public event EventHandler? Initialized; /// /// Occurs when the drop down portion of a bread crumb is pressed. /// [Category(@"Action")] [Description(@"Occurs when the drop down portion of a bread crumb is pressed.")] - public event EventHandler CrumbDropDown; + public event EventHandler? CrumbDropDown; /// /// Occurs when the drop down portion of the overflow button is pressed. /// [Category(@"Action")] [Description(@"Occurs when the drop down portion of the overflow button is pressed.")] - public event EventHandler OverflowDropDown; + public event EventHandler? OverflowDropDown; /// /// Occurs when the value of the SelectedItem property changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the SelectedItem property changes.")] - public event EventHandler SelectedItemChanged; + public event EventHandler? SelectedItemChanged; #endregion #region Identity @@ -610,7 +610,7 @@ protected override void OnEnabledChanged(EventArgs e) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(200, 28); + protected override Size DefaultSize => new Size(200, 28); /// /// Processes a notification from palette storage of a button spec change. @@ -694,7 +694,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (!IsDisposed) { // Do not show tooltips when the form we are in does not have focus - Form topForm = FindForm(); + Form? topForm = FindForm(); if (topForm is { ContainsFocus: false }) { return; @@ -718,7 +718,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(Redirector, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(Redirector, buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBreadCrumbItem.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBreadCrumbItem.cs index a6c3403cc..a695b8b4c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBreadCrumbItem.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonBreadCrumbItem.cs @@ -204,7 +204,7 @@ public KryptonBreadCrumbItem(string shortText, /// Gets the string representation of the object. /// /// - public override string ToString() => "(" + Items.Count.ToString() + ") " + ShortText; + public override string ToString() => $"({Items.Count}) {ShortText}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonButton.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonButton.cs index c5e0afac7..fdd3be19c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonButton.cs @@ -66,7 +66,7 @@ public class KryptonButton : VisualSimpleBase, IButtonControl, IContentValues /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the KryptonCommand property changes.")] - public event EventHandler KryptonCommandChanged; + public event EventHandler? KryptonCommandChanged; #endregion #region Identity @@ -153,7 +153,7 @@ public KryptonButton() _skipNextOpen = false; - _dropDownRectangle = new(); + _dropDownRectangle = new Rectangle(); } #endregion @@ -563,10 +563,7 @@ public bool ShowSplitOption Invalidate(); - if (Parent != null) - { - Parent.PerformLayout(); - } + Parent?.PerformLayout(); } } } @@ -622,7 +619,7 @@ public override Size GetPreferredSize(Size proposedSize) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(90, 25); + protected override Size DefaultSize => new Size(90, 25); /// /// Gets the default Input Method Editor (IME) mode supported by this control. @@ -691,7 +688,7 @@ protected override void OnLostFocus(EventArgs e) protected override void OnClick(EventArgs e) { // Find the form this button is on - Form owner = FindForm(); + Form? owner = FindForm(); // If we find a valid owner if (owner != null) @@ -825,11 +822,12 @@ protected override void OnPaint(PaintEventArgs e) Rectangle bounds = ClientRectangle; - _dropDownRectangle = new(bounds.Right - DEFAULT_PUSH_BUTTON_WIDTH - 1, BORDER_SIZE, DEFAULT_PUSH_BUTTON_WIDTH, bounds.Height - BORDER_SIZE * 2); + _dropDownRectangle = new Rectangle(bounds.Right - DEFAULT_PUSH_BUTTON_WIDTH - 1, BORDER_SIZE, DEFAULT_PUSH_BUTTON_WIDTH, bounds.Height - BORDER_SIZE * 2); int internalBorder = BORDER_SIZE; - Rectangle focusRectangle = new(internalBorder, internalBorder, bounds.Width - _dropDownRectangle.Width - internalBorder, bounds.Height - (internalBorder * 2)); + Rectangle focusRectangle = new Rectangle(internalBorder, internalBorder, + bounds.Width - _dropDownRectangle.Width - internalBorder, bounds.Height - (internalBorder * 2)); PaletteBase? palette = KryptonManager.CurrentGlobalPalette; @@ -837,9 +835,9 @@ protected override void OnPaint(PaintEventArgs e) if (palette != null) { - shadow = new(palette.ColorTable.GripDark); + shadow = new Pen(palette.ColorTable.GripDark); - face = new(palette.ColorTable.GripLight); + face = new Pen(palette.ColorTable.GripLight); } if (RightToLeft == RightToLeft.Yes) @@ -941,7 +939,7 @@ protected virtual void SetStyles(ButtonStyle buttonStyle) /// /// Set of button values. /// Delegate for notifying paint requests. - protected virtual ButtonValues CreateButtonValues(NeedPaintHandler needPaint) => new(needPaint); + protected virtual ButtonValues CreateButtonValues(NeedPaintHandler needPaint) => new ButtonValues(needPaint); /// /// Raises the KryptonCommandChanged event. @@ -1030,7 +1028,7 @@ private void ShowUACShield(bool showUACShield, UACShieldIconSize? shieldIconSize { int h = height ?? 16, w = width ?? 16; - Image? shield = SystemIcons.Shield.ToBitmap(); + Image shield = SystemIcons.Shield.ToBitmap(); switch (shieldIconSize) { @@ -1117,11 +1115,13 @@ private void UpdateOSUACShieldIcon(UACShieldIconSize? iconSize = null, Size? cus private static void PaintArrow(Graphics graphics, Rectangle rectangle) { - Point midPoint = new(Convert.ToInt32(rectangle.Left + rectangle.Width / 2), Convert.ToInt32(rectangle.Top + rectangle.Height / 2)); + Point midPoint = new Point(Convert.ToInt32(rectangle.Left + rectangle.Width / 2), + Convert.ToInt32(rectangle.Top + rectangle.Height / 2)); midPoint.X += (rectangle.Width % 2); - Point[] arrow = new Point[] { new(midPoint.X - 2, midPoint.Y - 1), new(midPoint.X + 3, midPoint.Y - 1), new(midPoint.X, midPoint.Y + 2) }; + Point[] arrow = new Point[] { new Point(midPoint.X - 2, midPoint.Y - 1), + new Point(midPoint.X + 3, midPoint.Y - 1), new Point(midPoint.X, midPoint.Y + 2) }; graphics.FillPolygon(SystemBrushes.ControlText, arrow); } @@ -1147,7 +1147,7 @@ private void ShowContextMenuStrip() { ContextMenuStrip.Closing += ContextMenuStrip_Closing; - ContextMenuStrip.Show(this, new(0, Height), ToolStripDropDownDirection.BelowRight); + ContextMenuStrip.Show(this, new Point(0, Height), ToolStripDropDownDirection.BelowRight); } } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckBox.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckBox.cs index 8693d326f..941fd8a3a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckBox.cs @@ -53,7 +53,7 @@ public class KryptonCheckBox : VisualSimpleBase, IContentValues [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler DoubleClick; + public new event EventHandler? DoubleClick; /// /// Occurs when the control is mouse double clicked with the mouse. @@ -61,7 +61,7 @@ public class KryptonCheckBox : VisualSimpleBase, IContentValues [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler MouseDoubleClick; + public new event EventHandler? MouseDoubleClick; /// /// Occurs when the value of the ImeMode property is changed. @@ -69,28 +69,28 @@ public class KryptonCheckBox : VisualSimpleBase, IContentValues [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler ImeModeChanged; + public new event EventHandler? ImeModeChanged; /// /// Occurs when the value of the Checked property has changed. /// [Category(@"Misc")] [Description(@"Occurs whenever the Checked property has changed.")] - public event EventHandler CheckedChanged; + public event EventHandler? CheckedChanged; /// /// Occurs when the value of the CheckState property has changed. /// [Category(@"Misc")] [Description(@"Occurs whenever the CheckState property has changed.")] - public event EventHandler CheckStateChanged; + public event EventHandler? CheckStateChanged; /// /// Occurs when the value of the KryptonCommand property changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the KryptonCommand property changes.")] - public event EventHandler KryptonCommandChanged; + public event EventHandler? KryptonCommandChanged; #endregion #region Identity @@ -809,7 +809,7 @@ protected override void OnRightToLeftChanged(EventArgs e) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(90, 25); + protected override Size DefaultSize => new Size(90, 25); /// /// Work out if this control needs to paint transparent areas. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckButton.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckButton.cs index 3b958b6fc..84b75c543 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckButton.cs @@ -40,14 +40,14 @@ public class KryptonCheckButton : KryptonButton /// [Category(@"Property Changing")] [Description(@"Occurs whenever the Checked property is about to change.")] - public event CancelEventHandler CheckedChanging; + public event CancelEventHandler? CheckedChanging; /// /// Occurs when the value of the Checked property has changed. /// [Category(@"Property Changed")] [Description(@"Occurs whenever the Checked property has changed.")] - public event EventHandler CheckedChanged; + public event EventHandler? CheckedChanged; #endregion #region Identity @@ -121,7 +121,7 @@ public bool Checked if (value != ViewDrawButton.Checked) { // Generate a pre-change event allowing it to be cancelled - CancelEventArgs ce = new(); + CancelEventArgs ce = new CancelEventArgs(); OnCheckedChanging(ce); // If the change is allowed to occur diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckSet.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckSet.cs index df9143341..1934a2c5d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckSet.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckSet.cs @@ -241,7 +241,7 @@ protected override void OnSetComplete(int index, object oldValue, object newValu /// [Category(@"Property Changed")] [Description(@"Occurs whenever the CheckedButton property has changed.")] - public event EventHandler CheckedButtonChanged; + public event EventHandler? CheckedButtonChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckedListBox.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckedListBox.cs index 407255b1c..7485eef8d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckedListBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCheckedListBox.cs @@ -395,12 +395,12 @@ private sealed class InternalCheckedListBox : ListBox /// /// Occurs when the mouse enters the InternalListBox. /// - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the InternalListBox. /// - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -521,7 +521,7 @@ public void RefreshItemSizes() /// Creates a new instance of the item collection. /// /// A ListBox.ObjectCollection that represents the new item collection. - protected override ObjectCollection CreateItemCollection() => new(this); + protected override ObjectCollection CreateItemCollection() => new ObjectCollection(this); /// /// Raises the KeyPress event. @@ -569,7 +569,8 @@ protected override void OnLayout(LayoutEventArgs levent) base.OnLayout(levent); // Ask the panel to layout given our available size - using ViewLayoutContext context = new(_viewManager, this, _kryptonCheckedListBox, _kryptonCheckedListBox.Renderer); + using ViewLayoutContext context = new ViewLayoutContext(_viewManager, this, _kryptonCheckedListBox, + _kryptonCheckedListBox.Renderer); ViewDrawPanel.Layout(context); } @@ -644,7 +645,7 @@ protected override void WndProc(ref Message m) else { // Find the item under the mouse - Point mousePoint = new((int)m.LParam.ToInt64()); + Point mousePoint = new Point((int)m.LParam.ToInt64()); var mouseIndex = IndexFromPoint(mousePoint); // If we have an actual item from the point @@ -812,7 +813,7 @@ internal IEnumerator InnerArrayGetEnumerator(int stateMask, bool anyBit) #region Private private void WmPaint(ref Message m) { - PI.PAINTSTRUCT ps = new(); + PI.PAINTSTRUCT ps = new PI.PAINTSTRUCT(); // Do we need to BeginPaint or just take the given HDC? IntPtr hdc = m.WParam == IntPtr.Zero ? PI.BeginPaint(Handle, ref ps) : m.WParam; @@ -838,13 +839,15 @@ private void WmPaint(ref Message m) using (Graphics g = Graphics.FromHdc(_screenDC)) { // Ask the view element to layout in given space, needs this before a render call - using (ViewLayoutContext context = new(this, _kryptonCheckedListBox.Renderer)) + using (ViewLayoutContext context = + new ViewLayoutContext(this, _kryptonCheckedListBox.Renderer)) { context.DisplayRectangle = realRect; ViewDrawPanel.Layout(context); } - using (RenderContext context = new(this, _kryptonCheckedListBox, g, realRect, _kryptonCheckedListBox.Renderer)) + using (RenderContext context = new RenderContext(this, _kryptonCheckedListBox, g, + realRect, _kryptonCheckedListBox.Renderer)) { ViewDrawPanel.Render(context); } @@ -857,7 +860,8 @@ private void WmPaint(ref Message m) if (Items.Count == 0) { - using RenderContext context = new(this, _kryptonCheckedListBox, g, realRect, _kryptonCheckedListBox.Renderer); + using RenderContext context = new RenderContext(this, _kryptonCheckedListBox, g, + realRect, _kryptonCheckedListBox.Renderer); ViewDrawPanel.Render(context); } } @@ -870,7 +874,8 @@ private void WmPaint(ref Message m) if (Items.Count == 0) { using Graphics g = Graphics.FromHdc(hdc); - using RenderContext context = new(this, _kryptonCheckedListBox, g, realRect, _kryptonCheckedListBox.Renderer); + using RenderContext context = new RenderContext(this, _kryptonCheckedListBox, g, + realRect, _kryptonCheckedListBox.Renderer); ViewDrawPanel.Render(context); } } @@ -921,7 +926,7 @@ private void LbnSelChange() { CheckState checkedState = _kryptonCheckedListBox.GetItemCheckState(selectedIndex); CheckState newCheckValue = (checkedState != CheckState.Unchecked) ? CheckState.Unchecked : CheckState.Checked; - ItemCheckEventArgs ice = new(selectedIndex, newCheckValue, checkedState); + ItemCheckEventArgs ice = new ItemCheckEventArgs(selectedIndex, newCheckValue, checkedState); _kryptonCheckedListBox.SetItemCheckState(selectedIndex, ice.NewValue); } _lastSelected = selectedIndex; @@ -970,42 +975,42 @@ private void LbnSelChange() /// [Description(@"Occurs when the property of a control is bound to a data value.")] [Category(@"Property Changed")] - public event EventHandler Format; + public event EventHandler? Format; /// /// Occurs when the value of the FormatInfo property changes. /// [Description(@"Occurs when the value of the FormatInfo property changes.")] [Category(@"Property Changed")] - public event EventHandler FormatInfoChanged; + public event EventHandler? FormatInfoChanged; /// /// Occurs when the value of the FormatString property changes. /// [Description(@"Occurs when the value of the FormatString property changes.")] [Category(@"Property Changed")] - public event EventHandler FormatStringChanged; + public event EventHandler? FormatStringChanged; /// /// Occurs when the value of the FormattingEnabled property changes. /// [Description(@"Occurs when the value of the FormattingEnabled property changes.")] [Category(@"Property Changed")] - public event EventHandler FormattingEnabledChanged; + public event EventHandler? FormattingEnabledChanged; /// /// Occurs when the value of the SelectedValue property changes. /// [Description(@"Occurs when the value of the SelectedValue property changes.")] [Category(@"Property Changed")] - public event EventHandler SelectedValueChanged; + public event EventHandler? SelectedValueChanged; /// /// Occurs when the value of the SelectedIndex property changes. /// [Description(@"Occurs when the value of the SelectedIndex property changes.")] [Category(@"Behavior")] - public event EventHandler SelectedIndexChanged; + public event EventHandler? SelectedIndexChanged; /// /// Occurs when the value of the SelectedIndex property changes. @@ -1019,49 +1024,49 @@ private void LbnSelChange() /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackColorChanged; + public new event EventHandler? BackColorChanged; /// /// Occurs when the value of the BackgroundImage property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageChanged; + public new event EventHandler? BackgroundImageChanged; /// /// Occurs when the value of the BackgroundImageLayout property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageLayoutChanged; + public new event EventHandler? BackgroundImageLayoutChanged; /// /// Occurs when the value of the ForeColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler ForeColorChanged; + public new event EventHandler? ForeColorChanged; /// /// Occurs when the value of the MouseClick property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler PaddingChanged; + public new event EventHandler? PaddingChanged; /// /// Occurs when the value of the MouseClick property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event PaintEventHandler Paint; + public new event PaintEventHandler? Paint; /// /// Occurs when the value of the TextChanged property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler TextChanged; + public new event EventHandler? TextChanged; /// /// Occurs when the mouse enters the control. @@ -1069,7 +1074,7 @@ private void LbnSelChange() [Description(@"Raises the TrackMouseEnter event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the control. @@ -1077,7 +1082,7 @@ private void LbnSelChange() [Description(@"Raises the TrackMouseLeave event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -1786,7 +1791,7 @@ public void SetItemCheckState(int index, CheckState value) if (value != checkedState) { // Give developers a chance to see and alter the change - ItemCheckEventArgs ice = new(index, value, checkedState); + ItemCheckEventArgs ice = new ItemCheckEventArgs(index, value, checkedState); OnItemCheck(ice); // If a change is still occurring @@ -2186,7 +2191,7 @@ protected override void OnMouseLeave(EventArgs e) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(120, 96); + protected override Size DefaultSize => new Size(120, 96); #endregion @@ -2303,7 +2308,7 @@ private void OnListBoxDrawItem(object sender, DrawItemEventArgs e) // Easier to draw using a graphics instance than a DC! using Graphics g = Graphics.FromHdc(_screenDC); // Ask the view element to layout in given space, needs this before a render call - using (ViewLayoutContext context = new(this, Renderer)) + using (ViewLayoutContext context = new ViewLayoutContext(this, Renderer)) { context.DisplayRectangle = e.Bounds; _listBox.ViewDrawPanel.Layout(context); @@ -2311,7 +2316,7 @@ private void OnListBoxDrawItem(object sender, DrawItemEventArgs e) } // Ask the view element to actually draw - using (RenderContext context = new(this, g, e.Bounds, Renderer)) + using (RenderContext context = new RenderContext(this, g, e.Bounds, Renderer)) { _listBox.ViewDrawPanel.Render(context); _layoutDocker.Render(context); @@ -2339,7 +2344,7 @@ private void OnListBoxMeasureItem(object sender, MeasureItemEventArgs e) UpdateContentFromItemIndex(e.Index); // Ask the view element to layout in given space, needs this before a render call - using ViewLayoutContext context = new(this, Renderer); + using ViewLayoutContext context = new ViewLayoutContext(this, Renderer); Size size = _layoutDocker.GetPreferredSize(context); e.ItemWidth = size.Width; e.ItemHeight = size.Height; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonColorButton.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonColorButton.cs index 559b3be46..23afc2c2d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonColorButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonColorButton.cs @@ -71,35 +71,35 @@ public class KryptonColorButton : VisualSimpleBase, IButtonControl, IContentValu /// [Category(@"Action")] [Description(@"Occurs when the drop down portion of the color button is pressed.")] - public event EventHandler DropDown; + public event EventHandler? DropDown; /// /// Occurs when the value of the KryptonCommand property changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the KryptonCommand property changes.")] - public event EventHandler KryptonCommandChanged; + public event EventHandler? KryptonCommandChanged; /// /// Occurs when the SelectedColor property changes value. /// [Category(@"Property Changed")] [Description(@"Occurs when the SelectedColor property changes value.")] - public event EventHandler SelectedColorChanged; + public event EventHandler? SelectedColorChanged; /// /// Occurs when the user is tracking over a color. /// [Category(@"Action")] [Description(@"Occurs when user is tracking over a color.")] - public event EventHandler TrackingColor; + public event EventHandler? TrackingColor; /// /// Occurs when the user selects the more colors option. /// [Category(@"Action")] [Description(@"Occurs when user selects the more colors option.")] - public event CancelEventHandler MoreColors; + public event CancelEventHandler? MoreColors; #endregion #region Identity @@ -254,7 +254,7 @@ public override bool AutoSize /// [Category(@"Action")] [Description(@"Override to allow your click event")] - public new event EventHandler Click + public new event EventHandler? Click { add { @@ -885,7 +885,7 @@ public Color GetImageTransparentColor(PaletteState state) => /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(90, 25); + protected override Size DefaultSize => new Size(90, 25); /// /// Gets the default Input Method Editor (IME) mode supported by this control. @@ -1131,7 +1131,8 @@ protected virtual void SetStyles(ButtonStyle buttonStyle) /// /// Set of color button values. /// Delegate for notifying paint requests. - protected virtual ColorButtonValues CreateButtonValues(NeedPaintHandler needPaint) => new(needPaint); + protected virtual ColorButtonValues CreateButtonValues(NeedPaintHandler needPaint) => + new ColorButtonValues(needPaint); /// /// Gets access to the view element for the color button. @@ -1190,10 +1191,8 @@ private bool ShowDropDown() } // Package up the context menu and positioning values we will use later - ContextPositionMenuArgs cpma = new(null, - _kryptonContextMenu, - GetPositionH(), - GetPositionV()); + ContextPositionMenuArgs cpma = new ContextPositionMenuArgs(null, + _kryptonContextMenu, GetPositionH(), GetPositionV()); // Let use examine and later values OnDropDown(cpma); @@ -1481,14 +1480,14 @@ private void DecideOnVisible(KryptonContextMenuItemBase visible, KryptonContextM private void OnClickMoreColors(object sender, EventArgs e) { // Give user a chance to cancel showing the Krypton more colors dialog - CancelEventArgs cea = new(); + CancelEventArgs cea = new CancelEventArgs(); OnMoreColors(cea); // If not instructed to cancel then... if (!cea.Cancel) { // Use a Krypton color dialog for the selection of custom colors - KryptonColorDialog cd = new() + KryptonColorDialog cd = new KryptonColorDialog { Color = SelectedColor, FullOpen = _allowFullOpen diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonComboBox.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonComboBox.cs index ad318c57d..0223f6481 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonComboBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonComboBox.cs @@ -108,12 +108,12 @@ private class InternalComboBox : ComboBox, IContentValues /// /// Occurs when the mouse enters the InternalComboBox. /// - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the InternalComboBox. /// - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -290,10 +290,11 @@ protected override void WndProc(ref Message m) rect.bottom -= borderSize.Height; // Create rectangle that represents the drop down button - Rectangle dropRect = new(rect.right + 2, rect.top, dropDownWidth - 2, rect.bottom - rect.top); + Rectangle dropRect = new Rectangle(rect.right + 2, rect.top, dropDownWidth - 2, + rect.bottom - rect.top); // Extract the point in client coordinates - Point clientPoint = new((int)m.LParam); + Point clientPoint = new Point((int)m.LParam); var mouseTracking = dropRect.Contains(clientPoint); if (mouseTracking != _mouseTracking) { @@ -310,7 +311,7 @@ protected override void WndProc(ref Message m) { PI.SendMessage(Handle, PI.CB_SETCUEBANNER, IntPtr.Zero, _kryptonComboBox.CueHint.CueHintText); } - PI.PAINTSTRUCT ps = new(); + PI.PAINTSTRUCT ps = new PI.PAINTSTRUCT(); // Do we need to BeginPaint or just take the given HDC? IntPtr hdc = m.WParam == IntPtr.Zero ? PI.BeginPaint(Handle, ref ps) : m.WParam; @@ -333,7 +334,7 @@ protected override void WndProc(ref Message m) //} // Paint the entire area in the background color - using (Graphics? g = Graphics.FromHdc(hdc)) + using (Graphics g = Graphics.FromHdc(hdc)) { // Grab the client area of the control PI.GetClientRect(Handle, out PI.RECT rect); @@ -346,7 +347,7 @@ protected override void WndProc(ref Message m) PaletteInputControlTripleStates states = _kryptonComboBox.GetComboBoxTripleState(); // Drawn entire client area in the background color - using SolidBrush backBrush = new(states.PaletteBack.GetBackColor1(state)); + using SolidBrush backBrush = new SolidBrush(states.PaletteBack.GetBackColor1(state)); g.FillRectangle(backBrush, new Rectangle(rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top)); // Get the constant used to crack open the display @@ -419,7 +420,8 @@ protected override void WndProc(ref Message m) } // Draw text using font defined by the control - Rectangle rectangle = new(rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top); + Rectangle rectangle = new Rectangle(rect.left, rect.top, rect.right - rect.left, + rect.bottom - rect.top); rectangle = CommonHelper.ApplyPadding(VisualOrientation.Top, rectangle, states.Content.GetContentPadding(state)); // Find correct text color Color textColor = states.Content.GetContentShortTextColor1(state); @@ -453,7 +455,7 @@ protected override void WndProc(ref Message m) if (_kryptonComboBox.KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) @@ -543,7 +545,8 @@ private void DrawDropButton(Graphics? g, Rectangle drawRect) _viewButton.ElementState = state; // Position the button element inside the available drop down button area - using (ViewLayoutContext layoutContext = new(_kryptonComboBox, _kryptonComboBox.Renderer)) + using (ViewLayoutContext layoutContext = + new ViewLayoutContext(_kryptonComboBox, _kryptonComboBox.Renderer)) { // Define the available area for layout layoutContext.DisplayRectangle = drawRect; @@ -553,13 +556,14 @@ private void DrawDropButton(Graphics? g, Rectangle drawRect) } // Fill background with the solid background color - using (SolidBrush backBrush = new(BackColor)) + using (SolidBrush backBrush = new SolidBrush(BackColor)) { g.FillRectangle(backBrush, drawRect); } // Ask the element to draw now - using (RenderContext renderContext = new(_kryptonComboBox, g, drawRect, _kryptonComboBox.Renderer)) + using (RenderContext renderContext = + new RenderContext(_kryptonComboBox, g, drawRect, _kryptonComboBox.Renderer)) { // Ask the button element to draw itself _viewButton.Render(renderContext); @@ -602,12 +606,12 @@ private class SubclassEdit : NativeWindow /// /// Occurs when the mouse enters the InternalComboBox. /// - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the InternalComboBox. /// - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -699,7 +703,7 @@ protected override void WndProc(ref Message m) // Mouse is over the control if (!MouseOver) { - PI.TRACKMOUSEEVENTS tme = new() + PI.TRACKMOUSEEVENTS tme = new PI.TRACKMOUSEEVENTS { // This structure needs to know its own size in bytes @@ -726,7 +730,7 @@ protected override void WndProc(ref Message m) if (_kryptonComboBox.KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) @@ -832,63 +836,63 @@ public ComboBoxButtonSpecCollection(KryptonComboBox owner) /// [Category(@"Behavior")] [Description(@"Occurs when an item needs to be Drawn.")] - public event DrawItemEventHandler DrawItem; + public event DrawItemEventHandler? DrawItem; /// /// Occurs when the control is initialized. /// [Category(@"Behavior")] [Description(@"Occurs when the control has been fully initialized.")] - public event EventHandler Initialized; + public event EventHandler? Initialized; /// /// Occurs when the drop-down portion of the KryptonComboBox is shown. /// [Description(@"Occurs when the drop-down portion of the KryptonComboBox is shown.")] [Category(@"Behavior")] - public event EventHandler DropDown; + public event EventHandler? DropDown; /// /// Indicates that the drop-down portion of the KryptonComboBox has closed. /// [Description(@"Indicates that the drop-down portion of the KryptonComboBox has closed.")] [Category(@"Behavior")] - public event EventHandler DropDownClosed; + public event EventHandler? DropDownClosed; /// /// Occurs when the value of the DropDownStyle property changed. /// [Description(@"Occurs when the value of the DropDownStyle property changed.")] [Category(@"Behavior")] - public event EventHandler DropDownStyleChanged; + public event EventHandler? DropDownStyleChanged; /// /// Occurs when the value of the SelectedIndex property changes. /// [Description(@"Occurs when the value of the SelectedIndex property changes.")] [Category(@"Behavior")] - public event EventHandler SelectedIndexChanged; + public event EventHandler? SelectedIndexChanged; /// /// Occurs when an item is chosen from the drop-down list and the drop-down list is closed. /// [Description(@"Occurs when an item is chosen from the drop-down list and the drop-down list is closed.")] [Category(@"Behavior")] - public event EventHandler SelectionChangeCommitted; + public event EventHandler? SelectionChangeCommitted; /// /// Occurs when the value of the DataSource property changed. /// [Description(@"Occurs when the value of the DataSource property changed.")] [Category(@"PropertyChanged")] - public event EventHandler DataSourceChanged; + public event EventHandler? DataSourceChanged; /// /// Occurs when the value of the DisplayMember property changed. /// [Description(@"Occurs when the value of the DisplayMember property changed.")] [Category(@"PropertyChanged")] - public event EventHandler DisplayMemberChanged; + public event EventHandler? DisplayMemberChanged; /// /// Occurs when the list format has changed. @@ -902,56 +906,56 @@ public ComboBoxButtonSpecCollection(KryptonComboBox owner) /// [Description(@"Occurs when the value of the FormatInfo property changed.")] [Category(@"PropertyChanged")] - public event EventHandler FormatInfoChanged; + public event EventHandler? FormatInfoChanged; /// /// Occurs when the value of the FormatString property changed. /// [Description(@"Occurs when the value of the FormatString property changed.")] [Category(@"PropertyChanged")] - public event EventHandler FormatStringChanged; + public event EventHandler? FormatStringChanged; /// /// Occurs when the value of the FormattingEnabled property changed. /// [Description(@"Occurs when the value of the FormattingEnabled property changed.")] [Category(@"PropertyChanged")] - public event EventHandler FormattingEnabledChanged; + public event EventHandler? FormattingEnabledChanged; /// /// Occurs when the value of the SelectedValue property changed. /// [Description(@"Occurs when the value of the SelectedValue property changed.")] [Category(@"PropertyChanged")] - public event EventHandler SelectedValueChanged; + public event EventHandler? SelectedValueChanged; /// /// Occurs when the value of the ValueMember property changed. /// [Description(@"Occurs when the value of the ValueMember property changed.")] [Category(@"PropertyChanged")] - public event EventHandler ValueMemberChanged; + public event EventHandler? ValueMemberChanged; /// /// Occurs when the KryptonComboBox text has changed. /// [Description(@"Occurs when the KryptonComboBox text has changed.")] [Category(@"Behavior")] - public event EventHandler TextUpdate; + public event EventHandler? TextUpdate; /// /// Occurs when the hovered selection changed. /// [Description(@"Occurs when the hovered selection changed.")] [Category(@"Behavior")] - public event EventHandler HoveredSelectionChanged; + public event EventHandler? HoveredSelectionChanged; /// /// Occurs when the wants to display a tooltip. /// [Description(@"Occurs when the KryptonComboBox wants to display a tooltip.")] [Category(@"Behavior")] - public event EventHandler ToolTipNeeded; + public event EventHandler? ToolTipNeeded; /// /// Occurs when the mouse enters the control. @@ -959,7 +963,7 @@ public ComboBoxButtonSpecCollection(KryptonComboBox owner) [Description(@"Raises the TrackMouseEnter event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the control. @@ -967,49 +971,49 @@ public ComboBoxButtonSpecCollection(KryptonComboBox owner) [Description(@"Raises the TrackMouseLeave event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; /// /// Occurs when the value of the BackColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackColorChanged; + public new event EventHandler? BackColorChanged; /// /// Occurs when the value of the BackgroundImage property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageChanged; + public new event EventHandler? BackgroundImageChanged; /// /// Occurs when the value of the BackgroundImageLayout property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageLayoutChanged; + public new event EventHandler? BackgroundImageLayoutChanged; /// /// Occurs when the value of the ForeColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler ForeColorChanged; + public new event EventHandler? ForeColorChanged; /// /// Occurs when the value of the Paint property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler Paint; + public new event EventHandler? Paint; /// /// Occurs when the value of the PaddingChanged property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler PaddingChanged; + public new event EventHandler? PaddingChanged; #endregion #region Identity @@ -2285,7 +2289,7 @@ protected virtual void OnHoverSelectionChanged(HoveredSelectionChangedEventArgs { HoveredSelectionChanged?.Invoke(this, e); // See if there is a tooltip to display for the new selection. - ToolTipNeededEventArgs args = new(e.Index, e.Item); + ToolTipNeededEventArgs args = new ToolTipNeededEventArgs(e.Index, e.Item); OnToolTipNeeded(args); if (!args.IsEmpty) { @@ -2571,7 +2575,7 @@ protected override void SetBoundsCore(int x, int y, /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(121, PreferredHeight); + protected override Size DefaultSize => new Size(121, PreferredHeight); /// /// Processes a notification from palette storage of a paint and optional layout required. @@ -2817,7 +2821,7 @@ private void OnComboBoxDrawItem(object sender, DrawItemEventArgs e) _hoverIndex = e.Index; // Raise the Hover event HoveredSelectionChangedEventArgs ev = - new(e.Bounds, e.Index, Items[e.Index]); + new HoveredSelectionChangedEventArgs(e.Bounds, e.Index, Items[e.Index]); OnHoverSelectionChanged(ev); } } @@ -2846,7 +2850,7 @@ private void OnComboBoxDrawItem(object sender, DrawItemEventArgs e) // Easier to draw using a graphics instance than a DC! using Graphics g = Graphics.FromHdc(_screenDC); // Ask the view element to layout in given space, needs this before a render call - using (ViewLayoutContext context = new(this, Renderer)) + using (ViewLayoutContext context = new ViewLayoutContext(this, Renderer)) { context.DisplayRectangle = drawBounds; _drawPanel.Layout(context); @@ -2854,7 +2858,7 @@ private void OnComboBoxDrawItem(object sender, DrawItemEventArgs e) } // Ask the view element to actually draw - using (RenderContext context = new(this, g, drawBounds, Renderer)) + using (RenderContext context = new RenderContext(this, g, drawBounds, Renderer)) { _drawPanel.Render(context); _drawButton.Render(context); @@ -2884,7 +2888,7 @@ private void OnComboBoxMeasureItem(object sender, MeasureItemEventArgs e) UpdateContentFromItemIndex(e.Index); // Ask the view element to layout in given space, needs this before a render call - using ViewLayoutContext context = new(this, Renderer); + using ViewLayoutContext context = new ViewLayoutContext(this, Renderer); Size size = _drawButton.GetPreferredSize(context); e.ItemWidth = size.Width; e.ItemHeight = size.Height; @@ -3066,7 +3070,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(Redirector, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(Redirector, buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) @@ -3125,7 +3129,7 @@ private VisualPopupToolTip GetToolTip() return _toolTip; } - PaletteRedirect? redirector = new(KryptonManager.CurrentGlobalPalette); + PaletteRedirect redirector = new PaletteRedirect(KryptonManager.CurrentGlobalPalette); _toolTip = new VisualPopupToolTip(redirector, new ButtonSpecToContent(redirector, _toolTipSpec), KryptonManager .CurrentGlobalPalette.GetRenderer(), @@ -3141,7 +3145,7 @@ private void ShowToolTip(ToolTipNeededEventArgs e, Point location) VisualPopupToolTip tip = GetToolTip(); // Needed to make Krypton update the tooltip data with the data of the spec. tip.PerformNeedPaint(true); - Point point = new(location.X + DropDownWidth, location.Y); + Point point = new Point(location.X + DropDownWidth, location.Y); tip.ShowCalculatingSize(PointToScreen(point)); } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCommand.cs index d280ab4e4..732a46317 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCommand.cs @@ -44,14 +44,14 @@ public class KryptonCommand : Component, IKryptonCommand, INotifyPropertyChanged /// [Category(@"Action")] [Description(@"Occurs when the command needs executing.")] - public event EventHandler Execute; + public event EventHandler? Execute; /// /// Occurs when a property has changed value. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonContextMenu.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonContextMenu.cs index 01ddb46e7..61fcfaea1 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonContextMenu.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonContextMenu.cs @@ -38,28 +38,28 @@ public class KryptonContextMenu : Component /// [Category(@"Action")] [Description(@"Occurs when context menu is opening but not Displayed as yet.")] - public event CancelEventHandler Opening; + public event CancelEventHandler? Opening; /// /// Occurs when the context menu is opened. /// [Category(@"Action")] [Description(@"Occurs when the context menu is fully opened for display.")] - public event EventHandler Opened; + public event EventHandler? Opened; /// /// Occurs when the context menu is about to close. /// [Category(@"Action")] [Description(@"Occurs when the context menu is about to close.")] - public event CancelEventHandler Closing; + public event CancelEventHandler? Closing; /// /// Occurs when the context menu has been closed. /// [Category(@"Action")] [Description(@"Occurs when the context menu has been closed.")] - public event ToolStripDropDownClosedEventHandler Closed; + public event ToolStripDropDownClosedEventHandler? Closed; #endregion #region Identity @@ -354,7 +354,7 @@ public bool Show(object caller, Caller = caller; // Give event handler a change to cancel the open request - CancelEventArgs cea = new(); + CancelEventArgs cea = new CancelEventArgs(); OnOpening(cea); if (!cea.Cancel) @@ -438,7 +438,8 @@ protected virtual VisualContextMenu CreateContextMenu(KryptonContextMenu kcm, KryptonContextMenuCollection items, bool enabled, bool keyboardActivated) => - new (kcm, palette, paletteMode, redirector, redirectorImages, items, enabled, keyboardActivated); + new VisualContextMenu(kcm, palette, paletteMode, redirector, redirectorImages, items, enabled, + keyboardActivated); /// /// Raises the Opening event. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCustomPaletteBase.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCustomPaletteBase.cs index 9246e1871..39b198d37 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCustomPaletteBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCustomPaletteBase.cs @@ -1414,7 +1414,7 @@ public override Padding GetMetricPadding(PaletteState state, PaletteMetricPaddin /// Appropriate image for drawing; otherwise null. public override Image? GetRadioButtonImage(bool enabled, bool checkState, bool tracking, bool pressed) { - Image retImage; + Image? retImage; // Get the state specific image if (!checkState) @@ -1470,7 +1470,7 @@ public override Padding GetMetricPadding(PaletteState state, PaletteMetricPaddin public override Image? GetDropDownButtonImage(PaletteState state) { // Grab state specific image - Image retImage = state switch + Image? retImage = state switch { PaletteState.Disabled => Images.DropDownButton.Disabled, PaletteState.Normal => Images.DropDownButton.Normal, @@ -1492,7 +1492,7 @@ public override Padding GetMetricPadding(PaletteState state, PaletteMetricPaddin /// Appropriate image for drawing; otherwise null. public override Image? GetContextMenuCheckedImage() { - Image retImage = Images.ContextMenu.Checked; + Image? retImage = Images.ContextMenu.Checked; // If nothing found then use the base palette return retImage ?? _redirector.GetContextMenuCheckedImage(); @@ -1504,7 +1504,7 @@ public override Padding GetMetricPadding(PaletteState state, PaletteMetricPaddin /// Appropriate image for drawing; otherwise null. public override Image? GetContextMenuIndeterminateImage() { - Image retImage = Images.ContextMenu.Indeterminate; + Image? retImage = Images.ContextMenu.Indeterminate; // If nothing found then use the base palette return retImage ?? _redirector.GetContextMenuIndeterminateImage(); @@ -1516,7 +1516,7 @@ public override Padding GetMetricPadding(PaletteState state, PaletteMetricPaddin /// Appropriate image for drawing; otherwise null. public override Image? GetContextMenuSubMenuImage() { - Image retImage = Images.ContextMenu.SubMenu; + Image? retImage = Images.ContextMenu.SubMenu; // If nothing found then use the base palette return retImage ?? _redirector.GetContextMenuSubMenuImage(); @@ -1530,7 +1530,7 @@ public override Padding GetMetricPadding(PaletteState state, PaletteMetricPaddin /// Appropriate image for drawing; otherwise null. public override Image? GetGalleryButtonImage(PaletteRibbonGalleryButton button, PaletteState state) { - Image retImage = null; + Image? retImage = null; KryptonPaletteImagesGalleryButton images = button switch { PaletteRibbonGalleryButton.Up => Images.GalleryButtons.Up, @@ -1552,7 +1552,7 @@ public override Padding GetMetricPadding(PaletteState state, PaletteMetricPaddin retImage ??= images.Common; // If nothing found then use the base palette - return retImage ?? _redirector.GetGalleryButtonImage(button, state); + return retImage ?? _redirector?.GetGalleryButtonImage(button, state); } #endregion @@ -1990,7 +1990,7 @@ public void ResetToDefaults(bool silent) { if (!silent) { - KryptonMessageBox.Show("Reset failed.\n\n Error:" + ex.Message, + KryptonMessageBox.Show($"Reset failed.\n\n Error:{ex.Message}", "Palette Reset", KryptonMessageBoxButtons.OK, KryptonMessageBoxIcon.Error); @@ -2032,7 +2032,7 @@ public void PopulateFromBase(bool silent) { if (!silent) { - KryptonMessageBox.Show("Reset failed.\n\n Error:" + ex.Message, + KryptonMessageBox.Show($"Reset failed.\n\n Error:{ex.Message}", "Populate Values", KryptonMessageBoxButtons.OK, KryptonMessageBoxIcon.Error); @@ -2053,7 +2053,7 @@ public void PopulateFromBase(bool silent) { if (UseKryptonFileDialogs) { - using KryptonOpenFileDialog kofd = new() + using KryptonOpenFileDialog kofd = new KryptonOpenFileDialog { CheckFileExists = true, CheckPathExists = true, @@ -2078,7 +2078,7 @@ public void PopulateFromBase(bool silent) } else { - using OpenFileDialog dialog = new() + using OpenFileDialog dialog = new OpenFileDialog { // Palette files are just XML documents CheckFileExists = true, @@ -2204,7 +2204,7 @@ public void Import(Stream stream, bool silent) { if (!silent) { - KryptonMessageBox.Show(@"Import has failed.\n\n Error:" + ex.Message, + KryptonMessageBox.Show($@"Import has failed.\n\n Error:{ex.Message}", @"Palette Import", KryptonMessageBoxButtons.OK, KryptonMessageBoxIcon.Error); @@ -2258,7 +2258,7 @@ public void Import(byte[] byteArray, bool silent) { if (!silent) { - KryptonMessageBox.Show(@"Import has failed.\n\n Error:" + ex.Message, + KryptonMessageBox.Show($@"Import has failed.\n\n Error:{ex.Message}", @"Palette Import", KryptonMessageBoxButtons.OK, KryptonMessageBoxIcon.Error); @@ -2282,7 +2282,7 @@ public void Import(byte[] byteArray, bool silent) { if (UseKryptonFileDialogs) { - using KryptonSaveFileDialog ksfd = new() + using KryptonSaveFileDialog ksfd = new KryptonSaveFileDialog { OverwritePrompt = true, DefaultExt = @"xml", @@ -2299,7 +2299,7 @@ public void Import(byte[] byteArray, bool silent) } else { - using SaveFileDialog dialog = new() + using SaveFileDialog dialog = new SaveFileDialog { // Palette files are just xml documents OverwritePrompt = true, @@ -2424,7 +2424,7 @@ public void Export(Stream stream, bool ignoreDefaults, bool silent) { if (!silent) { - KryptonMessageBox.Show(@"Export has failed.\n\n Error:" + ex.Message, + KryptonMessageBox.Show($@"Export has failed.\n\n Error:{ex.Message}", @"Palette Export", KryptonMessageBoxButtons.OK, KryptonMessageBoxIcon.Error); @@ -2480,7 +2480,7 @@ public void Export(Stream stream, bool ignoreDefaults, bool silent) { if (!silent) { - KryptonMessageBox.Show(@"Export has failed.\n\n Error:" + ex.Message, + KryptonMessageBox.Show($@"Export has failed.\n\n Error:{ex.Message}", @"Palette Export", KryptonMessageBoxButtons.OK, KryptonMessageBoxIcon.Error); @@ -2950,7 +2950,7 @@ private object ImportFromFile(object parameter) } // Create a new xml document for storing the palette settings - XmlDocument doc = new(); + XmlDocument doc = new XmlDocument(); // Attempt to load as a valid xml document doc.Load(filename); @@ -2967,7 +2967,7 @@ private object ImportFromStream(object parameter) Stream stream = (Stream)parameter; // Create a new xml document for storing the palette settings - XmlDocument doc = new(); + XmlDocument doc = new XmlDocument(); // Attempt to load from the provided stream doc.Load(stream); @@ -2984,7 +2984,7 @@ private object ImportFromStream(object parameter) var byteArray = (byte[])parameter; // Create a memory based stream - MemoryStream ms = new(byteArray); + MemoryStream ms = new MemoryStream(byteArray); // Perform import from the memory stream ImportFromStream(ms); @@ -3031,8 +3031,7 @@ private void ImportFromXmlDocument(XmlDocument doc) if (version < CURRENT_PALETTE_VERSION) { - throw new ArgumentException("Version '" + version + "' number is incompatible, only version " + CURRENT_PALETTE_VERSION + - " or above can be imported.\nUse the PaletteUpgradeTool from the Application tab of the KryptonExplorer to upgrade."); + throw new ArgumentException($"Version '{version}' number is incompatible, only version {CURRENT_PALETTE_VERSION} or above can be imported.\nUse the PaletteUpgradeTool from the Application tab of the KryptonExplorer to upgrade."); } // Grab the properties and images elements @@ -3051,7 +3050,7 @@ private void ImportFromXmlDocument(XmlDocument doc) } // Cache the images from the images element - ImageReverseDictionary imageCache = new(); + ImageReverseDictionary imageCache = new ImageReverseDictionary(); // Use reflection to import the palette hierarchy ImportImagesFromElement(images, imageCache); @@ -3073,7 +3072,7 @@ private object ExportToFile(object parameter) var filename = (string)parameters[0]; var ignoreDefaults = (bool)parameters[1]; - FileInfo info = new(filename); + FileInfo info = new FileInfo(filename); // Check the target directory actually exists if (info.Directory != null && !info.Directory.Exists) @@ -3117,7 +3116,7 @@ private object ExportToByteArray(object parameter) var ignoreDefaults = (bool)parameters[0]; // Create a memory based stream - MemoryStream ms = new(); + MemoryStream ms = new MemoryStream(); // Perform export into the memory stream ExportToStream(new object[] { ms, ignoreDefaults }); @@ -3140,7 +3139,7 @@ private XmlDocument ExportToXmlDocument(bool ignoreDefaults) Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; // Create a new xml document for storing the palette settings - XmlDocument doc = new(); + XmlDocument doc = new XmlDocument(); // Add the standard xml version number doc.AppendChild(doc.CreateProcessingInstruction("xml", @"version=""1.0""")); @@ -3154,7 +3153,8 @@ private XmlDocument ExportToXmlDocument(bool ignoreDefaults) // having a version number the loading of older version is easier XmlElement root = doc.CreateElement("KryptonPalette"); root.SetAttribute(nameof(Version), CURRENT_PALETTE_VERSION.ToString()); - root.SetAttribute("Generated", DateTime.Now.ToLongDateString() + ", @" + DateTime.Now.ToShortTimeString()); + root.SetAttribute("Generated", + $"{DateTime.Now.ToLongDateString()}, @{DateTime.Now.ToShortTimeString()}"); doc.AppendChild(root); // Add two children, one for storing actual palette values the other for cached images @@ -3164,7 +3164,7 @@ private XmlDocument ExportToXmlDocument(bool ignoreDefaults) root.AppendChild(images); // Cache any images that are found during object export - ImageDictionary imageCache = new(); + ImageDictionary imageCache = new ImageDictionary(); // Use reflection to export the palette hierarchy ExportObjectToElement(doc, props, imageCache, this, ignoreDefaults); @@ -3201,75 +3201,72 @@ private void ImportObjectFromElement(XmlElement? element, // Cast attribute to the correct type // Check if there is an element matching the property - if (element != null) - { - XmlElement? childElement = element.SelectSingleNode(prop.Name) as XmlElement; + XmlElement? childElement = element?.SelectSingleNode(prop.Name) as XmlElement; - // Can only import if a matching XML element is found - if (childElement != null) + // Can only import if a matching XML element is found + if (childElement != null) + { + // Should we navigate down inside the property? + if (persistAttribute.Navigate) { - // Should we navigate down inside the property? - if (persistAttribute.Navigate) + // If we can read the property value + if (prop.CanRead) { - // If we can read the property value - if (prop.CanRead) - { - // Grab the property object and recurse into it - var childObj = prop.GetValue(obj, null); - ImportObjectFromElement(childElement, imageCache, childObj); - } + // Grab the property object and recurse into it + var childObj = prop.GetValue(obj, null); + ImportObjectFromElement(childElement, imageCache, childObj); } - else + } + else + { + // The xml element must have a type and value in order to recreate it + if (childElement.HasAttribute(nameof(Type)) && + childElement.HasAttribute(@"Value")) { - // The xml element must have a type and value in order to recreate it - if (childElement.HasAttribute(nameof(Type)) && - childElement.HasAttribute(@"Value")) - { - // Get the type/value attributes - var valueType = childElement.GetAttribute(nameof(Type)); - var valueValue = childElement.GetAttribute(@"Value"); + // Get the type/value attributes + var valueType = childElement.GetAttribute(nameof(Type)); + var valueValue = childElement.GetAttribute(@"Value"); - // We special case the loading of images - if (prop.PropertyType.Equals(typeof(Image))) + // We special case the loading of images + if (prop.PropertyType.Equals(typeof(Image))) + { + if (valueValue.Length == 0) { - if (valueValue.Length == 0) + // An empty string represents a null image value + prop.SetValue(obj, null, null); + } + else + { + // Have we already encountered the image? + if (imageCache.ContainsKey(valueValue)) { - // An empty string represents a null image value - prop.SetValue(obj, null, null); + // Push the image from the cache into the property + prop.SetValue(obj, valueValue, null); } else { - // Have we already encountered the image? - if (imageCache.ContainsKey(valueValue)) - { - // Push the image from the cache into the property - prop.SetValue(obj, valueValue, null); - } - else - { - // Cannot find image to set to empty - prop.SetValue(obj, null, null); - } + // Cannot find image to set to empty + prop.SetValue(obj, null, null); } } - else - { - object? setValue = null; - - // We ignore conversion of a Font of value (none) because instead - // of providing null it returns a default font value - if (valueType != nameof(Font) || valueValue != @"(none)") - { - // We need the type converter to create a string representation - TypeConverter converter = TypeDescriptor.GetConverter(StringToType(valueType)); + } + else + { + object? setValue = null; - // Recreate the value using the converter - setValue = converter.ConvertFromInvariantString(valueValue); - } + // We ignore conversion of a Font of value (none) because instead + // of providing null it returns a default font value + if (valueType != nameof(Font) || valueValue != @"(none)") + { + // We need the type converter to create a string representation + TypeConverter converter = TypeDescriptor.GetConverter(StringToType(valueType)); - // Push the value into the actual property - prop.SetValue(obj, setValue, null); + // Recreate the value using the converter + setValue = converter.ConvertFromInvariantString(valueValue); } + + // Push the value into the actual property + prop.SetValue(obj, setValue, null); } } } @@ -3311,7 +3308,7 @@ private void ImportImagesFromElement(XmlElement element, ImageReverseDictionary var bytes = Convert.FromBase64String(cdata.Value); // Convert the bytes back into an Image - MemoryStream memory = new(bytes); + MemoryStream memory = new MemoryStream(bytes); Bitmap resurect; try { @@ -3322,7 +3319,7 @@ private void ImportImagesFromElement(XmlElement element, ImageReverseDictionary // Do the old way // SYSLIB0011: BinaryFormatter serialization is obsolete #pragma warning disable SYSLIB0011 - BinaryFormatter formatter = new(); + BinaryFormatter formatter = new BinaryFormatter(); var old = (Image)formatter.Deserialize(memory); #pragma warning restore SYSLIB0011 resurect = old is Bitmap bitmap ? bitmap : new Bitmap(old); @@ -3464,7 +3461,7 @@ private void ExportObjectToElement(XmlDocument doc, else { // Generate a placeholder string - var imageName = @"ImageCache" + (imageCache.Count + 1); + var imageName = $@"ImageCache{(imageCache.Count + 1)}"; // Add the actual image instance into the cache imageCache.Add(image, imageName); @@ -3498,7 +3495,7 @@ private void ExportImagesToElement(XmlDocument doc, XmlElement element, ImageDic try { // Convert the Image into base64 so it can be used in xml - using MemoryStream memory = new(); + using MemoryStream memory = new MemoryStream(); var imageFormat = entry.Key.RawFormat; @@ -3618,7 +3615,7 @@ private void ResetObjectToDefault(object? obj, bool populate) } } - private static readonly Dictionary _typeTests = new() + private static readonly Dictionary _typeTests = new Dictionary { [typeof(int)] = @"Int", //nameof(Int32), [typeof(string)] = nameof(String), diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCustomPaletteManager.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCustomPaletteManager.cs index d331b5530..56ca8838a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCustomPaletteManager.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonCustomPaletteManager.cs @@ -53,7 +53,7 @@ public KryptonCustomPaletteManager() public static void LoadExternalPalette(PaletteBase palette) { - KryptonCustomPaletteManager pm = new(); + KryptonCustomPaletteManager pm = new KryptonCustomPaletteManager(); try { diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridView.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridView.cs index 4ddfc001a..803e2149b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridView.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridView.cs @@ -75,7 +75,7 @@ private class ToolTipContent : IContentValues #endregion #region Static Fields - private static readonly Point _nullCell = new(-2, -2); + private static readonly Point _nullCell = new Point(-2, -2); // Cached access to private parent values private static PropertyInfo _piRTL; @@ -149,7 +149,7 @@ private class ToolTipContent : IContentValues /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the Palette property is changed.")] - public event EventHandler PaletteChanged; + public event EventHandler? PaletteChanged; #endregion #region Identity @@ -668,7 +668,7 @@ public virtual PaletteState GetCellTriple(DataGridViewElementStates state, // A data cell cannot become tracking or pressed if ((rowIndex < 0) || (columnIndex < 0)) { - Point cellIndex = new(columnIndex, rowIndex); + Point cellIndex = new Point(columnIndex, rowIndex); // If the user has pressed down on this cell if (cellIndex.Equals(_cellDown)) @@ -1181,12 +1181,12 @@ protected override void OnCellPainting(DataGridViewCellPaintingEventArgs e) var rtl = RightToLeftInternal; // Use an offscreen bitmap to draw onto before blitting it to the screen - Rectangle tempCellBounds = new(0, 0, e.CellBounds.Width, e.CellBounds.Height); - using (Bitmap tempBitmap = new(e.CellBounds.Width, e.CellBounds.Height, e.Graphics)) + Rectangle tempCellBounds = new Rectangle(0, 0, e.CellBounds.Width, e.CellBounds.Height); + using (Bitmap tempBitmap = new Bitmap(e.CellBounds.Width, e.CellBounds.Height, e.Graphics)) { using (Graphics tempG = Graphics.FromImage(tempBitmap)) { - using (RenderContext renderContext = new(this, tempG, tempCellBounds, Renderer)) + using (RenderContext renderContext = new RenderContext(this, tempG, tempCellBounds, Renderer)) { // Force the border to have a specificed maximum border edge _borderForced.SetInherit(paletteBorder); @@ -1238,8 +1238,10 @@ protected override void OnCellPainting(DataGridViewCellPaintingEventArgs e) // Draw icon and update the remainder cell bounds left over var iconWidth = spec.Icon.Width + 5; var width = tempCellBounds.Width - iconWidth; - Rectangle iconBounds = new(tempCellBounds.X + (spec.Alignment == IconSpec.IconAlignment.Left ? 5 : width), - tempCellBounds.Y + 3, spec.Icon.Width, spec.Icon.Height); + Rectangle iconBounds = new Rectangle( + tempCellBounds.X + (spec.Alignment == IconSpec.IconAlignment.Left + ? 5 + : width), tempCellBounds.Y + 3, spec.Icon.Width, spec.Icon.Height); renderContext.Graphics.DrawImage(spec.Icon, iconBounds); tempCellBounds = new Rectangle(tempCellBounds.X + (spec.Alignment == IconSpec.IconAlignment.Left ? iconWidth : 0), tempCellBounds.Y, width, tempCellBounds.Height); @@ -1305,9 +1307,8 @@ protected override void OnCellPainting(DataGridViewCellPaintingEventArgs e) tempCellBounds = Renderer.RenderGlyph.DrawGridErrorGlyph(renderContext, tempCellBounds, state, rtl); // Calculate the icon rectangle - Rectangle iconBounds = new(tempCellBounds.Right + 1, tempCellBounds.Top, - beforeCellBounds.Width - tempCellBounds.Width, - tempCellBounds.Height); + Rectangle iconBounds = new Rectangle(tempCellBounds.Right + 1, tempCellBounds.Top, + beforeCellBounds.Width - tempCellBounds.Width, tempCellBounds.Height); // Cache the icon area if (_rowCache.ContainsKey(e.RowIndex)) @@ -1346,8 +1347,10 @@ protected override void OnCellPainting(DataGridViewCellPaintingEventArgs e) // Draw icon and update the remainder cell bounds left over var iconWidth = spec.Icon.Width + 5; var width = tempCellBounds.Width - iconWidth; - Rectangle iconBounds = new(tempCellBounds.X + (spec.Alignment == IconSpec.IconAlignment.Left ? 5 : width), - tempCellBounds.Y + 3, spec.Icon.Width, spec.Icon.Height); + Rectangle iconBounds = new Rectangle( + tempCellBounds.X + (spec.Alignment == IconSpec.IconAlignment.Left + ? 5 + : width), tempCellBounds.Y + 3, spec.Icon.Width, spec.Icon.Height); renderContext.Graphics.DrawImage(spec.Icon, iconBounds); tempCellBounds = new Rectangle(tempCellBounds.X + (spec.Alignment == IconSpec.IconAlignment.Left ? iconWidth : 0), tempCellBounds.Y, width, tempCellBounds.Height); @@ -1383,7 +1386,7 @@ protected override void OnCellPainting(DataGridViewCellPaintingEventArgs e) var sCount = 1; while (sindx >= 0) { - Rectangle hl_rect = new() + Rectangle hl_rect = new Rectangle { Y = e.CellBounds.Y + 2, Height = e.CellBounds.Height - 5 @@ -1443,7 +1446,7 @@ protected override void OnCellPainting(DataGridViewCellPaintingEventArgs e) // Use the display value of the header cell _shortTextValue.ShortText = e.FormattedValue.ToString(); - using ViewLayoutContext layoutContext = new(this, Renderer); + using ViewLayoutContext layoutContext = new ViewLayoutContext(this, Renderer); // If a column header cell... if ((e.RowIndex == -1) && (e.ColumnIndex != -1)) { @@ -1553,7 +1556,7 @@ protected override void PaintBackground(Graphics graphics, PaintTransparentBackground(graphics, clipBounds); // Use the view manager to paint the view panel that fills the entire areas as the background - using RenderContext context = new(this, graphics, clipBounds, Renderer); + using RenderContext context = new RenderContext(this, graphics, clipBounds, Renderer); ViewManager.Paint(context); } @@ -2491,7 +2494,7 @@ private string TruncateToolTipText(string toolTipText) { if (toolTipText.Length > 0x120) { - StringBuilder builder = new(toolTipText.Substring(0, 0x100), 0x103); + StringBuilder builder = new StringBuilder(toolTipText.Substring(0, 0x100), 0x103); builder.Append(@"..."); return builder.ToString(); } @@ -2658,7 +2661,7 @@ protected override void WndProc(ref Message m) if (KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewButtonCell.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewButtonCell.cs index ae1ea20ae..931de25e4 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewButtonCell.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewButtonCell.cs @@ -155,7 +155,7 @@ protected override Size GetPreferredSize(Graphics graphics, } // Position the button element inside the available cell area - using ViewLayoutContext layoutContext = new(kDGV, kDGV.Renderer); + using ViewLayoutContext layoutContext = new ViewLayoutContext(kDGV, kDGV.Renderer); // Define the available area for layout layoutContext.DisplayRectangle = new Rectangle(0, 0, int.MaxValue, int.MaxValue); @@ -206,7 +206,7 @@ protected override void Paint(Graphics graphics, // Should we draw the content foreground? if ((paintParts & DataGridViewPaintParts.ContentForeground) == DataGridViewPaintParts.ContentForeground) { - using RenderContext renderContext = new(kDgv, graphics, cellBounds, kDgv.Renderer); + using RenderContext renderContext = new RenderContext(kDgv, graphics, cellBounds, kDgv.Renderer); // Create the view elements and palette structure CreateViewAndPalettes(kDgv); @@ -279,7 +279,7 @@ protected override void Paint(Graphics graphics, cellBounds.Height -= cellStyle.Padding.Vertical; // Position the button element inside the available cell area - using (ViewLayoutContext layoutContext = new(kDgv, kDgv.Renderer)) + using (ViewLayoutContext layoutContext = new ViewLayoutContext(kDgv, kDgv.Renderer)) { // Define the available area for layout layoutContext.DisplayRectangle = cellBounds; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewButtonColumn.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewButtonColumn.cs index d9ad65e78..50a3c909a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewButtonColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewButtonColumn.cs @@ -34,7 +34,7 @@ public class KryptonDataGridViewButtonColumn : KryptonDataGridViewIconColumn public KryptonDataGridViewButtonColumn() : base(new KryptonDataGridViewButtonCell()) { - DataGridViewCellStyle style = new() + DataGridViewCellStyle style = new DataGridViewCellStyle { Alignment = DataGridViewContentAlignment.MiddleCenter }; @@ -47,7 +47,7 @@ public KryptonDataGridViewButtonColumn() /// A String that represents the current Object. public override string ToString() { - StringBuilder builder = new(0x40); + StringBuilder builder = new StringBuilder(0x40); builder.Append(@"KryptonDataGridViewButtonColumn { Name="); // ReSharper disable RedundantBaseQualifier builder.Append(base.Name); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewCheckBoxCell.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewCheckBoxCell.cs index cd4abd360..7ec33f193 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewCheckBoxCell.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewCheckBoxCell.cs @@ -91,7 +91,7 @@ protected override Size GetPreferredSize(Graphics graphics, var pressed = currentCell && ((ButtonStateInternal & ButtonState.Pushed) == ButtonState.Pushed); // Find out the requested size of the check box drawing - using ViewLayoutContext viewContent = new(kDGV, kDGV.Renderer); + using ViewLayoutContext viewContent = new ViewLayoutContext(kDGV, kDGV.Renderer); Size checkBoxSize = kDGV.Renderer.RenderGlyph.GetCheckBoxPreferredSize(viewContent, kDGV.Redirector, kDGV.Enabled, @@ -171,11 +171,11 @@ protected override void Paint(Graphics graphics, var tracking = mouseCell && MouseInContentBoundsInternal; var pressed = currentCell && ((ButtonStateInternal & ButtonState.Pushed) == ButtonState.Pushed); - using RenderContext renderContext = new(kDgv, graphics, cellBounds, kDgv.Renderer); + using RenderContext renderContext = new RenderContext(kDgv, graphics, cellBounds, kDgv.Renderer); Size checkBoxSize; // Find out the requested size of the check box drawing - using (ViewLayoutContext viewContent = new(kDgv, kDgv.Renderer)) + using (ViewLayoutContext viewContent = new ViewLayoutContext(kDgv, kDgv.Renderer)) { checkBoxSize = renderContext.Renderer.RenderGlyph.GetCheckBoxPreferredSize(viewContent, kDgv.Redirector, diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewCheckBoxColumn.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewCheckBoxColumn.cs index b0ce3e029..b1127ad7b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewCheckBoxColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewCheckBoxColumn.cs @@ -37,7 +37,7 @@ public KryptonDataGridViewCheckBoxColumn() public KryptonDataGridViewCheckBoxColumn(bool threeState) : base(new KryptonDataGridViewCheckBoxCell(threeState)) { - DataGridViewCellStyle style = new() + DataGridViewCellStyle style = new DataGridViewCellStyle { Alignment = DataGridViewContentAlignment.MiddleCenter }; @@ -59,7 +59,7 @@ public KryptonDataGridViewCheckBoxColumn(bool threeState) /// A String that represents the current Object. public override string ToString() { - StringBuilder builder = new(0x40); + StringBuilder builder = new StringBuilder(0x40); builder.Append(@"KryptonDataGridViewCheckBoxColumn { Name="); // ReSharper disable RedundantBaseQualifier builder.Append(base.Name); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewComboBoxCell.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewComboBoxCell.cs index 50d7d09ec..0bdd107ea 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewComboBoxCell.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewComboBoxCell.cs @@ -24,7 +24,7 @@ public class KryptonDataGridViewComboBoxCell : DataGridViewTextBoxCell private static KryptonComboBox _paintingComboBox; private static readonly Type _defaultEditType = typeof(KryptonDataGridViewComboBoxEditingControl); private static readonly Type _defaultValueType = typeof(string); - private static readonly Size _sizeLarge = new(10000, 10000); + private static readonly Size _sizeLarge = new Size(10000, 10000); #endregion #region Instance Fields @@ -69,8 +69,7 @@ public KryptonDataGridViewComboBoxCell() /// Returns a standard textual representation of the cell. /// public override string ToString() => - "KryptonDataGridViewComboBoxCell { ColumnIndex=" + ColumnIndex.ToString(CultureInfo.CurrentCulture) + - ", RowIndex=" + RowIndex.ToString(CultureInfo.CurrentCulture) + " }"; + $"KryptonDataGridViewComboBoxCell {{ ColumnIndex={ColumnIndex.ToString(CultureInfo.CurrentCulture)}, RowIndex={RowIndex.ToString(CultureInfo.CurrentCulture)} }}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewComboBoxColumn.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewComboBoxColumn.cs index 8a560faa6..18b42583b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewComboBoxColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewComboBoxColumn.cs @@ -37,7 +37,7 @@ public KryptonDataGridViewComboBoxColumn() /// public override string ToString() { - StringBuilder builder = new(0x40); + StringBuilder builder = new StringBuilder(0x40); builder.Append(@"KryptonDataGridViewComboBoxColumn { Name="); // ReSharper disable RedundantBaseQualifier builder.Append(base.Name); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerCell.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerCell.cs index ef8ee7763..68e4b07d7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerCell.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerCell.cs @@ -20,10 +20,10 @@ public class KryptonDataGridViewDateTimePickerCell : DataGridViewTextBoxCell #region Static Fields [ThreadStatic] private static KryptonDateTimePicker _paintingDateTime; - private static readonly DateTimeConverter _dtc = new(); + private static readonly DateTimeConverter _dtc = new DateTimeConverter(); private static readonly Type _defaultEditType = typeof(KryptonDataGridViewDateTimePickerEditingControl); private static readonly Type _defaultValueType = typeof(DateTime); - private static readonly Size _sizeLarge = new(10000, 10000); + private static readonly Size _sizeLarge = new Size(10000, 10000); #endregion #region Instance Fields diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerColumn.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerColumn.cs index 4a4fde98e..04da764af 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerColumn.cs @@ -43,7 +43,7 @@ public KryptonDataGridViewDateTimePickerColumn() /// public override string ToString() { - StringBuilder builder = new(0x40); + StringBuilder builder = new StringBuilder(0x40); builder.Append("KryptonDataGridViewDateTimePickerColumn { Name="); // ReSharper disable RedundantBaseQualifier builder.Append(base.Name); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerEditingControl.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerEditingControl.cs index e5fcc0e8a..828e23181 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerEditingControl.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDateTimePickerEditingControl.cs @@ -20,7 +20,7 @@ public class KryptonDataGridViewDateTimePickerEditingControl : KryptonDateTimePi IDataGridViewEditingControl { #region Static Fields - private static readonly DateTimeConverter _dtc = new(); + private static readonly DateTimeConverter _dtc = new DateTimeConverter(); #endregion #region Instance Fields diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDomainUpDownCell.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDomainUpDownCell.cs index 1381a4fb0..b4258a9bb 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDomainUpDownCell.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDomainUpDownCell.cs @@ -25,7 +25,7 @@ public class KryptonDataGridViewDomainUpDownCell : DataGridViewTextBoxCell private const DataGridViewContentAlignment ANY_CENTER = DataGridViewContentAlignment.TopCenter | DataGridViewContentAlignment.MiddleCenter | DataGridViewContentAlignment.BottomCenter; private static readonly Type _defaultEditType = typeof(KryptonDataGridViewDomainUpDownEditingControl); private static readonly Type _defaultValueType = typeof(string); - private static readonly Size _sizeLarge = new(10000, 10000); + private static readonly Size _sizeLarge = new Size(10000, 10000); #endregion #region Identity @@ -48,8 +48,7 @@ public KryptonDataGridViewDomainUpDownCell() /// Returns a standard textual representation of the cell. /// public override string ToString() => - "DataGridViewDomainUpDownCell { ColumnIndex=" + ColumnIndex.ToString(CultureInfo.CurrentCulture) + - ", RowIndex=" + RowIndex.ToString(CultureInfo.CurrentCulture) + " }"; + $"DataGridViewDomainUpDownCell {{ ColumnIndex={ColumnIndex.ToString(CultureInfo.CurrentCulture)}, RowIndex={RowIndex.ToString(CultureInfo.CurrentCulture)} }}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDomainUpDownColumn.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDomainUpDownColumn.cs index 44501238c..2adc29c33 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDomainUpDownColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewDomainUpDownColumn.cs @@ -32,7 +32,7 @@ public KryptonDataGridViewDomainUpDownColumn() /// public override string ToString() { - StringBuilder builder = new(0x40); + StringBuilder builder = new StringBuilder(0x40); builder.Append(@"KryptonDataGridViewDomainUpDownColumn { Name="); // ReSharper disable RedundantBaseQualifier builder.Append(base.Name); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewIconColumn.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewIconColumn.cs index ca73c789c..a1e5b0183 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewIconColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewIconColumn.cs @@ -62,7 +62,7 @@ public IconAlignment Alignment /// public object Clone() { - IconSpec spec = new() + IconSpec spec = new IconSpec { Icon = Icon?.Clone() as Image, Alignment = Alignment diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewLinkCell.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewLinkCell.cs index 51fef27bd..1de314701 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewLinkCell.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewLinkCell.cs @@ -144,7 +144,7 @@ protected override Size GetPreferredSize(Graphics graphics, } // Position the button element inside the available cell area - using ViewLayoutContext layoutContext = new(kDGV, kDGV.Renderer); + using ViewLayoutContext layoutContext = new ViewLayoutContext(kDGV, kDGV.Renderer); // Define the available area for layout layoutContext.DisplayRectangle = new Rectangle(0, 0, int.MaxValue, int.MaxValue); @@ -195,7 +195,7 @@ protected override void Paint(Graphics graphics, // Should we draw the content foreground? if ((paintParts & DataGridViewPaintParts.ContentForeground) == DataGridViewPaintParts.ContentForeground) { - using RenderContext renderContext = new(kDgv, graphics, cellBounds, kDgv.Renderer); + using RenderContext renderContext = new RenderContext(kDgv, graphics, cellBounds, kDgv.Renderer); // Cache the starting cell bounds Rectangle startBounds = cellBounds; @@ -243,7 +243,7 @@ protected override void Paint(Graphics graphics, cellBounds.Height -= cellStyle.Padding.Vertical; // Position the button element inside the available cell area - using (ViewLayoutContext layoutContext = new(kDgv, kDgv.Renderer)) + using (ViewLayoutContext layoutContext = new ViewLayoutContext(kDgv, kDgv.Renderer)) { // Define the available area for calculating layout layoutContext.DisplayRectangle = cellBounds; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewLinkColumn.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewLinkColumn.cs index 09032fa96..1b4938038 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewLinkColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewLinkColumn.cs @@ -44,7 +44,7 @@ public KryptonDataGridViewLinkColumn() /// A String that represents the current Object. public override string ToString() { - StringBuilder builder = new(0x40); + StringBuilder builder = new StringBuilder(0x40); builder.Append("KryptonDataGridViewLinkColumn { Name="); // ReSharper disable RedundantBaseQualifier builder.Append(base.Name); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewMaskedTextBoxCell.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewMaskedTextBoxCell.cs index 4624bdf44..9f61ec2fe 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewMaskedTextBoxCell.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewMaskedTextBoxCell.cs @@ -25,7 +25,7 @@ public class KryptonDataGridViewMaskedTextBoxCell : DataGridViewTextBoxCell private const DataGridViewContentAlignment ANY_CENTER = DataGridViewContentAlignment.TopCenter | DataGridViewContentAlignment.MiddleCenter | DataGridViewContentAlignment.BottomCenter; private static readonly Type _defaultEditType = typeof(KryptonDataGridViewMaskedTextBoxEditingControl); private static readonly Type _defaultValueType = typeof(string); - private static readonly Size _sizeLarge = new(10000, 10000); + private static readonly Size _sizeLarge = new Size(10000, 10000); #endregion #region Instance Fields @@ -86,8 +86,7 @@ public KryptonDataGridViewMaskedTextBoxCell() /// Returns a standard textual representation of the cell. /// public override string ToString() => - "DataGridViewMaskedTextBoxCell { ColumnIndex=" + ColumnIndex.ToString(CultureInfo.CurrentCulture) + - ", RowIndex=" + RowIndex.ToString(CultureInfo.CurrentCulture) + " }"; + $"DataGridViewMaskedTextBoxCell {{ ColumnIndex={ColumnIndex.ToString(CultureInfo.CurrentCulture)}, RowIndex={RowIndex.ToString(CultureInfo.CurrentCulture)} }}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewMaskedTextBoxColumn.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewMaskedTextBoxColumn.cs index 6e8c918d1..7cac0cae0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewMaskedTextBoxColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewMaskedTextBoxColumn.cs @@ -34,7 +34,7 @@ public KryptonDataGridViewMaskedTextBoxColumn() /// public override string ToString() { - StringBuilder builder = new(0x40); + StringBuilder builder = new StringBuilder(0x40); builder.Append("KryptonDataGridViewMaskedTextBoxColumn { Name="); // ReSharper disable RedundantBaseQualifier builder.Append(base.Name); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewNumericUpDownCell.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewNumericUpDownCell.cs index 82d1844f8..3e9789567 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewNumericUpDownCell.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewNumericUpDownCell.cs @@ -29,7 +29,7 @@ public class KryptonDataGridViewNumericUpDownCell : DataGridViewTextBoxCell DataGridViewContentAlignment.BottomCenter; private static readonly Type _defaultEditType = typeof(KryptonDataGridViewNumericUpDownEditingControl); private static readonly Type _defaultValueType = typeof(decimal); - private static readonly Size _sizeLarge = new(10000, 10000); + private static readonly Size _sizeLarge = new Size(10000, 10000); #endregion #region Instance Fields @@ -73,8 +73,7 @@ public KryptonDataGridViewNumericUpDownCell() /// Returns a standard textual representation of the cell. /// public override string ToString() => - "DataGridViewNumericUpDownCell { ColumnIndex=" + ColumnIndex.ToString(CultureInfo.CurrentCulture) + - ", RowIndex=" + RowIndex.ToString(CultureInfo.CurrentCulture) + " }"; + $"DataGridViewNumericUpDownCell {{ ColumnIndex={ColumnIndex.ToString(CultureInfo.CurrentCulture)}, RowIndex={RowIndex.ToString(CultureInfo.CurrentCulture)} }}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewNumericUpDownColumn.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewNumericUpDownColumn.cs index d5ee480ef..f57271edd 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewNumericUpDownColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewNumericUpDownColumn.cs @@ -34,7 +34,7 @@ public KryptonDataGridViewNumericUpDownColumn() /// public override string ToString() { - StringBuilder builder = new(0x40); + StringBuilder builder = new StringBuilder(0x40); builder.Append("KryptonDataGridViewNumericUpDownColumn { Name="); // ReSharper disable RedundantBaseQualifier builder.Append(base.Name); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewTextBoxCell.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewTextBoxCell.cs index bd4c2d0db..e25d791d1 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewTextBoxCell.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewTextBoxCell.cs @@ -328,6 +328,6 @@ internal void SetMultilineStringEditor(int rowIndex, bool value) [Category(@"Data")] [Description(@"Set of extra icons to appear with control.")] [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)] - public List IconSpecs { get; } = new(); + public List IconSpecs { get; } = new List(); } } \ No newline at end of file diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewTextBoxColumn.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewTextBoxColumn.cs index 2e4efd137..c3a513c45 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewTextBoxColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDataGridViewTextBoxColumn.cs @@ -36,7 +36,7 @@ public KryptonDataGridViewTextBoxColumn() /// A String that represents the current Object. public override string ToString() { - StringBuilder builder = new(0x40); + StringBuilder builder = new StringBuilder(0x40); builder.Append("KryptonDataGridViewTextBoxColumn { Name="); // ReSharper disable RedundantBaseQualifier builder.Append(base.Name); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDateTimePicker.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDateTimePicker.cs index 16ff38fba..2e200641f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDateTimePicker.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDateTimePicker.cs @@ -99,21 +99,21 @@ public DateTimePickerButtonSpecCollection(KryptonDateTimePicker owner) /// [Category(@"Action")] [Description(@"Event raised when the value of the Value property is changed on KryptonDateTimePicker.")] - public event EventHandler ValueChanged; + public event EventHandler? ValueChanged; /// /// Occurs when the ValueNullable property has changed value. /// [Category(@"Action")] [Description(@"Event raised when the value of the ValueNullable property is changed on KryptonDateTimePicker.")] - public event EventHandler ValueNullableChanged; + public event EventHandler? ValueNullableChanged; /// /// Occurs when the Value property has changed value. /// [Category(@"Action")] [Description(@"Event raised when the value of the ActiveFragment property is changed on KryptonDateTimePicker.")] - public event EventHandler ActiveFragmentChanged; + public event EventHandler? ActiveFragmentChanged; /// /// Occurs when the drop down is shown. @@ -134,35 +134,35 @@ public DateTimePickerButtonSpecCollection(KryptonDateTimePicker owner) /// [Category(@"Action")] [Description(@"Event raised to indicate the month calendar date changed whilst dropped down.")] - public event EventHandler CloseUpMonthCalendarChanged; + public event EventHandler? CloseUpMonthCalendarChanged; /// /// Occurs when auto shifting to the next field but overflowing the end. /// [Category(@"Action")] [Description(@"Event raised when auto shifting to the next field but overflowing the end.")] - public event CancelEventHandler AutoShiftOverflow; + public event CancelEventHandler? AutoShiftOverflow; /// /// Occurs when the Checked property has changed value. /// [Category(@"Property Changed")] [Description(@"Event raised when the value of the Checked property is changed on KryptonDateTimePicker.")] - public event EventHandler CheckedChanged; + public event EventHandler? CheckedChanged; /// /// Occurs when the Format property has changed value. /// [Category(@"Property Changed")] [Description(@"Event raised when the value of the Format property is changed on KryptonDateTimePicker.")] - public event EventHandler FormatChanged; + public event EventHandler? FormatChanged; /// /// Occurs when the RightToLeftLayout property has changed value. /// [Category(@"Property Changed")] [Description(@"Event raised when the value of the RightToLeftLayout property is changed on KryptonDateTimePicker.")] - public event EventHandler RightToLeftLayoutChanged; + public event EventHandler? RightToLeftLayoutChanged; #endregion #region Identity @@ -223,7 +223,7 @@ public KryptonDateTimePicker() // Add a checkbox to the left of the text area Images = new CheckBoxImages(NeedPaintDelegate); - PaletteRedirectCheckBox? paletteCheckBoxImages = new(Redirector, Images); + PaletteRedirectCheckBox paletteCheckBoxImages = new PaletteRedirectCheckBox(Redirector, Images); InternalViewDrawCheckBox = new ViewDrawCheckBox(paletteCheckBoxImages) { CheckState = CheckState.Checked @@ -235,7 +235,8 @@ public KryptonDateTimePicker() _layoutCheckBox.Visible = false; // Need a controller for handling check box mouse input - CheckBoxController controller = new(InternalViewDrawCheckBox, InternalViewDrawCheckBox, NeedPaintDelegate); + CheckBoxController controller = + new CheckBoxController(InternalViewDrawCheckBox, InternalViewDrawCheckBox, NeedPaintDelegate); controller.Click += OnCheckBoxClick; controller.Enabled = true; InternalViewDrawCheckBox.MouseController = controller; @@ -1730,7 +1731,7 @@ protected override void OnMouseWheel(MouseEventArgs e) if (!IsDisposed && !Disposing && !InRibbonDesignMode) { // We treat positive numbers as moving upwards - KeyEventArgs kpea = new((e.Delta < 0) ? Keys.Down : Keys.Up); + KeyEventArgs kpea = new KeyEventArgs((e.Delta < 0) ? Keys.Down : Keys.Up); // Simulate the up/down key the correct number of times var detents = Math.Abs(e.Delta) / SystemInformation.MouseWheelScrollDelta; @@ -1967,7 +1968,7 @@ protected override void OnRightToLeftChanged(EventArgs e) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(240, PreferredHeight); + protected override Size DefaultSize => new Size(240, PreferredHeight); /// /// Processes a notification from palette storage of a button spec change. @@ -2101,7 +2102,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(Redirector, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(Redirector, buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) @@ -2157,7 +2158,7 @@ private void OnDropDownClick(object sender, EventArgs e) _dropDownMonthChanged = false; // Create a new krypton context menu each time we drop the menu - DTPContextMenu kcm = new(RectangleToScreen(_buttonDropDown.ClientRectangle)); + DTPContextMenu kcm = new DTPContextMenu(RectangleToScreen(_buttonDropDown.ClientRectangle)); // Add and setup a month calendar element _kmc = new KryptonContextMenuMonthCalendar @@ -2196,9 +2197,10 @@ private void OnDropDownClick(object sender, EventArgs e) } // Give user a change to modify the context menu or even cancel the menu entirely - DateTimePickerDropArgs dtpda = new(kcm, - DropDownAlign == LeftRightAlignment.Left ? KryptonContextMenuPositionH.Left : KryptonContextMenuPositionH.Right, - KryptonContextMenuPositionV.Below); + DateTimePickerDropArgs dtpda = new DateTimePickerDropArgs(kcm, + DropDownAlign == LeftRightAlignment.Left + ? KryptonContextMenuPositionH.Left + : KryptonContextMenuPositionH.Right, KryptonContextMenuPositionV.Below); // Let user examine and later values OnDropDown(dtpda); @@ -2251,8 +2253,8 @@ private void OnDropDownClick(object sender, EventArgs e) private void OnMonthCalendarDateChanged(object sender, DateRangeEventArgs e) { // Use the newly selected date but the exising time - DateTime newDt = new(e.Start.Year, e.Start.Month, e.Start.Day, - _dateTime.Hour, _dateTime.Minute, _dateTime.Second, _dateTime.Millisecond); + DateTime newDt = new DateTime(e.Start.Year, e.Start.Month, e.Start.Day, _dateTime.Hour, _dateTime.Minute, + _dateTime.Second, _dateTime.Millisecond); // Range check in case the min/max have time portions and not just full days if (newDt > MaxDate) @@ -2286,7 +2288,7 @@ private void OnKryptonContextMenuClosed(object sender, EventArgs e) } // Generate the close up event and provide the menu so handlers can examine state that might have changed - DateTimePickerCloseArgs dtca = new(kcm); + DateTimePickerCloseArgs dtca = new DateTimePickerCloseArgs(kcm); OnCloseUp(dtca); // Notify that the month calendar changed value whilst the dropped down. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDomainUpDown.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDomainUpDown.cs index 8831cce1d..49e100de7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDomainUpDown.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDomainUpDown.cs @@ -38,12 +38,12 @@ private class InternalDomainUpDown : DomainUpDown /// /// Occurs when the mouse enters the InternalTextBox. /// - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the InternalTextBox. /// - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -134,7 +134,7 @@ protected override void WndProc(ref Message m) if (_kryptonDomainUpDown.KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) @@ -195,12 +195,12 @@ private class SubclassEdit : NativeWindow /// /// Occurs when the mouse enters the InternalDomainUpDown. /// - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the InternalDomainUpDown. /// - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -311,7 +311,7 @@ protected override void WndProc(ref Message m) // Mouse is over the control if (!MouseOver) { - PI.TRACKMOUSEEVENTS tme = new() + PI.TRACKMOUSEEVENTS tme = new PI.TRACKMOUSEEVENTS { // This structure needs to know its own size in bytes @@ -336,7 +336,7 @@ protected override void WndProc(ref Message m) case PI.WM_.PRINTCLIENT: case PI.WM_.PAINT: { - PI.PAINTSTRUCT ps = new(); + PI.PAINTSTRUCT ps = new PI.PAINTSTRUCT(); // Do we need to BeginPaint or just take the given HDC? IntPtr hdc = m.WParam == IntPtr.Zero ? PI.BeginPaint(Handle, ref ps) : m.WParam; @@ -354,7 +354,7 @@ protected override void WndProc(ref Message m) PaletteInputControlTripleStates states = DomainUpDown.GetTripleState(); // Drawn entire client area in the background color - using (SolidBrush backBrush = new(states.PaletteBack.GetBackColor1(state))) + using (SolidBrush backBrush = new SolidBrush(states.PaletteBack.GetBackColor1(state))) { g.FillRectangle(backBrush, new Rectangle(rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top)); } @@ -398,7 +398,7 @@ protected override void WndProc(ref Message m) if (DomainUpDown.KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) @@ -534,14 +534,14 @@ protected override void WndProc(ref Message m) case PI.WM_.PRINTCLIENT: case PI.WM_.PAINT: { - PI.PAINTSTRUCT ps = new(); + PI.PAINTSTRUCT ps = new PI.PAINTSTRUCT(); // Do we need to BeginPaint or just take the given HDC? IntPtr hdc = m.WParam == IntPtr.Zero ? PI.BeginPaint(Handle, ref ps) : m.WParam; // Grab the client area of the control PI.GetClientRect(Handle, out PI.RECT rect); - Rectangle clientRect = new(rect.left, rect.top, rect.right - rect.left, + Rectangle clientRect = new Rectangle(rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top); try @@ -562,7 +562,7 @@ protected override void WndProc(ref Message m) using Graphics g = Graphics.FromHdc(_screenDC); // Drawn entire client area in the background color using (SolidBrush backBrush = - new(DomainUpDown.DomainUpDown.BackColor)) + new SolidBrush(DomainUpDown.DomainUpDown.BackColor)) { g.FillRectangle(backBrush, clientRect); } @@ -623,12 +623,14 @@ private void DrawUpDownButtons(Graphics g, Rectangle clientRect) _palette.SetStyles(DomainUpDown.UpDownButtonStyle); // Find button rectangles - Rectangle upRect = new(clientRect.X, clientRect.Y, clientRect.Width, clientRect.Height / 2); - Rectangle downRect = new(clientRect.X, upRect.Bottom, clientRect.Width, clientRect.Bottom - upRect.Bottom); + Rectangle upRect = new Rectangle(clientRect.X, clientRect.Y, clientRect.Width, clientRect.Height / 2); + Rectangle downRect = new Rectangle(clientRect.X, upRect.Bottom, clientRect.Width, + clientRect.Bottom - upRect.Bottom); // Position and draw the up/down buttons - using ViewLayoutContext layoutContext = new(DomainUpDown, DomainUpDown.Renderer); - using RenderContext renderContext = new(DomainUpDown, g, clientRect, DomainUpDown.Renderer); + using ViewLayoutContext layoutContext = new ViewLayoutContext(DomainUpDown, DomainUpDown.Renderer); + using RenderContext renderContext = + new RenderContext(DomainUpDown, g, clientRect, DomainUpDown.Renderer); // Up button layoutContext.DisplayRectangle = upRect; _viewButton.ElementState = ButtonElementState(upRect); @@ -719,14 +721,14 @@ public DomainUpDownButtonSpecCollection(KryptonDomainUpDown owner) /// [Category(@"Behavior")] [Description(@"Occurs when the value of the SelectedItem property changes.")] - public event EventHandler SelectedItemChanged; + public event EventHandler? SelectedItemChanged; /// /// Occurs when the user scrolls the scroll box. /// [Category(@"Action")] [Description(@"Occurs when the user scrolls the scroll box.")] - public event ScrollEventHandler Scroll; + public event ScrollEventHandler? Scroll; /// /// Occurs when the mouse enters the control. @@ -734,7 +736,7 @@ public DomainUpDownButtonSpecCollection(KryptonDomainUpDown owner) [Description(@"Raises the TrackMouseEnter event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the control. @@ -742,42 +744,42 @@ public DomainUpDownButtonSpecCollection(KryptonDomainUpDown owner) [Description(@"Raises the TrackMouseLeave event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; /// /// Occurs when the value of the BackColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackColorChanged; + public new event EventHandler? BackColorChanged; /// /// Occurs when the value of the BackgroundImage property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageChanged; + public new event EventHandler? BackgroundImageChanged; /// /// Occurs when the value of the BackgroundImageLayout property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageLayoutChanged; + public new event EventHandler? BackgroundImageLayoutChanged; /// /// Occurs when the value of the ForeColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler ForeColorChanged; + public new event EventHandler? ForeColorChanged; /// /// Occurs when the value of the PaddingChanged property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler PaddingChanged; + public new event EventHandler? PaddingChanged; #endregion #region Identity @@ -1701,7 +1703,7 @@ protected override void SetBoundsCore(int x, int y, /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(120, PreferredHeight); + protected override Size DefaultSize => new Size(120, PreferredHeight); /// /// Processes a notification from palette storage of a paint and optional layout required. @@ -1967,7 +1969,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(Redirector, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(Redirector, buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDropButton.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDropButton.cs index 76dea3db0..07c385ff6 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDropButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonDropButton.cs @@ -45,14 +45,14 @@ public class KryptonDropButton : VisualSimpleBase, IButtonControl, IContentValue /// [Category(@"Action")] [Description(@"Occurs when the drop down portion of the button is pressed.")] - public event EventHandler DropDown; + public event EventHandler? DropDown; /// /// Occurs when the value of the KryptonCommand property changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the KryptonCommand property changes.")] - public event EventHandler KryptonCommandChanged; + public event EventHandler? KryptonCommandChanged; #endregion #region Identity @@ -569,7 +569,7 @@ public Color GetImageTransparentColor(PaletteState state) => /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(90, 25); + protected override Size DefaultSize => new Size(90, 25); /// /// Gets the default Input Method Editor (IME) mode supported by this control. @@ -768,7 +768,7 @@ protected virtual void SetStyles(ButtonStyle buttonStyle) /// /// Set of button values. /// Delegate for notifying paint requests. - protected virtual ButtonValues CreateButtonValues(NeedPaintHandler needPaint) => new(needPaint); + protected virtual ButtonValues CreateButtonValues(NeedPaintHandler needPaint) => new ButtonValues(needPaint); /// /// Gets access to the view element for the button. @@ -822,10 +822,8 @@ private bool ShowDropDown() } // Package up the context menu and positioning values we will use later - ContextPositionMenuArgs cpma = new(ContextMenuStrip, - KryptonContextMenu, - GetPositionH(), - GetPositionV()); + ContextPositionMenuArgs cpma = new ContextPositionMenuArgs(ContextMenuStrip, + KryptonContextMenu, GetPositionH(), GetPositionV()); // Let use examine and later values OnDropDown(cpma); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonFolderBrowserDialog.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonFolderBrowserDialog.cs index 382daf488..6abcd667c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonFolderBrowserDialog.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonFolderBrowserDialog.cs @@ -23,7 +23,7 @@ public class KryptonFolderBrowserDialog : ShellDialogWrapper, IDisposable #if NET60_OR_GREATER private readonly FolderBrowserDialog _internalOpenFileDialog = new();// { AutoUpgradeEnabled = true }; #else - private readonly ShellBrowserDialogTFM _internalOpenFileDialog = new(); + private readonly ShellBrowserDialogTFM _internalOpenFileDialog = new ShellBrowserDialogTFM(); #endif /// diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonForm.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonForm.cs index 11f4e3609..896d94a04 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonForm.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonForm.cs @@ -60,7 +60,7 @@ public FormFixedButtonSpecCollection(KryptonForm owner) #endregion #region Static Fields - private static readonly Size CAPTION_ICON_SIZE = new(16, 16); + private static readonly Size CAPTION_ICON_SIZE = new Size(16, 16); private const int HT_CORNER = 8; // Drop shadow private const int CS_DROPSHADOW = 0x00020000; @@ -535,7 +535,7 @@ public void InjectViewElement([DisallowNull] ViewBase element, ViewDockStyle sty else { // Just add to the docking edge requested - _drawHeading.Add(element!, style); + _drawHeading.Add(element, style); } } } @@ -569,7 +569,7 @@ public void RevokeViewElement([DisallowNull] ViewBase element, ViewDockStyle sty else { // Just remove the specified elements - _drawHeading.Remove(element!); + _drawHeading.Remove(element); } } } @@ -1068,7 +1068,7 @@ protected override IntPtr WindowChromeHitTest(Point pt, bool composition) return new IntPtr(PI.HT.CLIENT); } - using (ViewLayoutContext context = new(this, Renderer)) + using (ViewLayoutContext context = new ViewLayoutContext(this, Renderer)) { // Discover if the form icon is being Displayed if (_drawContent.IsImageDisplayed(context)) @@ -1194,12 +1194,12 @@ protected override void WindowChromePaint(Graphics g, Rectangle bounds) /// True if the message was processed; otherwise false. protected override bool OnWM_NCLBUTTONDOWN(ref Message m) { - using ViewLayoutContext context = new(this, Renderer); + using ViewLayoutContext context = new ViewLayoutContext(this, Renderer); // Discover if the form icon is being Displayed if (_drawContent.IsImageDisplayed(context)) { // Extract the point in screen coordinates - Point screenPoint = new((int)m.LParam.ToInt64()); + Point screenPoint = new Point((int)m.LParam.ToInt64()); // Convert to window coordinates Point windowPoint = ScreenToWindow(screenPoint); @@ -1440,7 +1440,7 @@ private bool CheckViewLayout() _regionWindowState = WindowState; // Get the path for the border so we can shape the form using it - using RenderContext context = new(this, null, Bounds, Renderer); + using RenderContext context = new RenderContext(this, null, Bounds, Renderer); using GraphicsPath? path = _drawDocker.GetOuterBorderPath(context); if (!_firstCheckView) { @@ -1495,9 +1495,8 @@ private void UpdateRegionForMaximized() Padding padding = RealWindowBorders; // Reduce the Bounds by the padding on all but the top - Rectangle maximizedRect = new(padding.Left, padding.Left, - Width - padding.Horizontal, - Height - padding.Left - padding.Bottom); + Rectangle maximizedRect = new Rectangle(padding.Left, padding.Left, Width - padding.Horizontal, + Height - padding.Left - padding.Bottom); // Use this as the new region SuspendPaint(); @@ -1609,7 +1608,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(Redirector!, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(Redirector!, buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) @@ -1814,7 +1813,7 @@ public static bool GetHasCurrentInstanceGotAdministrativeRights() { try { - WindowsPrincipal principal = new(WindowsIdentity.GetCurrent()); + WindowsPrincipal principal = new WindowsPrincipal(WindowsIdentity.GetCurrent()); var hasAdministrativeRights = principal.IsInRole(WindowsBuiltInRole.Administrator); @@ -1844,7 +1843,7 @@ public static bool GetHasCurrentInstanceGotAdministrativeRights() public static void SetIsInAdministratorMode(bool value) { // TODO: @wagnerp: what is this supposed to be doing ? - KryptonForm form = new(); + KryptonForm form = new KryptonForm(); //form.IsInAdministratorMode = value; } @@ -1854,7 +1853,7 @@ public static void SetIsInAdministratorMode(bool value) public static bool GetIsInAdministratorMode() { // TODO: @wagnerp: what is this supposed to be doing ? - KryptonForm form = new(); + KryptonForm form = new KryptonForm(); return form.IsInAdministratorMode; } @@ -1900,20 +1899,20 @@ private void SetupIntegratedToolBarButtons() { if (_integratedToolBarItems != null) { - ButtonSpecAny newButtonSpec = new(), - openButtonSpecAny = new(), - saveButtonSpecAny = new(), - saveAsButtonSpecAny = new(), - saveAllButtonSpecAny = new(), - cutButtonSpecAny = new(), - copyButtonSpecAny = new(), - pasteButtonSpecAny = new(), - undoButtonSpecAny = new(), - redoButtonSpecAny = new(), - pageSetupButtonSpecAny = new(), - printPreviewButtonSpecAny = new(), - printButtonSpecAny = new(), - quickPrintButtonSpecAny = new(); + ButtonSpecAny newButtonSpec = new ButtonSpecAny(), + openButtonSpecAny = new ButtonSpecAny(), + saveButtonSpecAny = new ButtonSpecAny(), + saveAsButtonSpecAny = new ButtonSpecAny(), + saveAllButtonSpecAny = new ButtonSpecAny(), + cutButtonSpecAny = new ButtonSpecAny(), + copyButtonSpecAny = new ButtonSpecAny(), + pasteButtonSpecAny = new ButtonSpecAny(), + undoButtonSpecAny = new ButtonSpecAny(), + redoButtonSpecAny = new ButtonSpecAny(), + pageSetupButtonSpecAny = new ButtonSpecAny(), + printPreviewButtonSpecAny = new ButtonSpecAny(), + printButtonSpecAny = new ButtonSpecAny(), + quickPrintButtonSpecAny = new ButtonSpecAny(); // Set up buttons newButtonSpec.Type = PaletteButtonSpecStyle.New; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroup.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroup.cs index 0f532ad74..28e069919 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroup.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroup.cs @@ -104,7 +104,7 @@ public float CornerRoundingRadius set { base.Name = value; - Panel.Name = value + ".Panel"; + Panel.Name = $"{value}.Panel"; } } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroupBox.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroupBox.cs index 372265dda..f65158f1f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroupBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroupBox.cs @@ -33,7 +33,7 @@ public class KryptonGroupBox : VisualControlContainment private readonly ViewDrawContent _drawContent; private readonly ViewLayoutFill _layoutFill; private ScreenObscurer _obscurer; - private readonly EventHandler _removeObscurer; + private readonly EventHandler? _removeObscurer; private bool _forcedLayout; private bool _captionVisible; private readonly bool _ignoreLayout; @@ -159,7 +159,7 @@ public float CornerRoundingRadius set { base.Name = value; - Panel.Name = value + ".Panel"; + Panel.Name = $"{value}.Panel"; } } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroupPanel.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroupPanel.cs index b46ad6812..4153e3b2f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroupPanel.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonGroupPanel.cs @@ -36,7 +36,7 @@ public class KryptonGroupPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler AutoSizeChanged; + public new event EventHandler? AutoSizeChanged; /// /// Occurs when the value of the Dock property changes. @@ -44,7 +44,7 @@ public class KryptonGroupPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler DockChanged; + public new event EventHandler? DockChanged; /// /// Occurs when the value of the Location property changes. @@ -52,7 +52,7 @@ public class KryptonGroupPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler LocationChanged; + public new event EventHandler? LocationChanged; /// /// Occurs when the value of the TabIndex property changes. @@ -60,7 +60,7 @@ public class KryptonGroupPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler TabIndexChanged; + public new event EventHandler? TabIndexChanged; /// /// Occurs when the value of the TabStop property changes. @@ -68,7 +68,7 @@ public class KryptonGroupPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler TabStopChanged; + public new event EventHandler? TabStopChanged; /// /// Occurs when the value of the Visible property changes. @@ -76,7 +76,7 @@ public class KryptonGroupPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler VisibleChanged; + public new event EventHandler? VisibleChanged; #endregion #region Identity @@ -363,7 +363,7 @@ public override DockStyle Dock /// /// Gets the space, in pixels, that is specified by default between controls. /// - protected override Padding DefaultMargin => new(0, 0, 0, 0); + protected override Padding DefaultMargin => new Padding(0, 0, 0, 0); /// /// Raises the Layout event. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHeader.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHeader.cs index 2b6f21b67..bb7242484 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHeader.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHeader.cs @@ -512,7 +512,7 @@ protected override void OnEnabledChanged(EventArgs e) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(240, 30); + protected override Size DefaultSize => new Size(240, 30); /// /// Processes a notification from palette storage of a button spec change. @@ -561,7 +561,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(Redirector, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(Redirector, buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHeaderGroup.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHeaderGroup.cs index ecee320db..eebe8837d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHeaderGroup.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHeaderGroup.cs @@ -60,7 +60,7 @@ public HeaderGroupButtonSpecCollection(KryptonHeaderGroup owner) private readonly ButtonSpecManagerDraw _buttonManager; private VisualPopupToolTip _visualPopupToolTip; private ScreenObscurer _obscurer; - private readonly EventHandler _removeObscurer; + private readonly EventHandler? _removeObscurer; private bool _forcedLayout; private bool _visiblePrimary; private bool _visibleSecondary; @@ -79,7 +79,7 @@ public HeaderGroupButtonSpecCollection(KryptonHeaderGroup owner) /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the Collapsed property is changed.")] - public event EventHandler CollapsedChanged; + public event EventHandler? CollapsedChanged; #endregion #region Identity @@ -293,7 +293,7 @@ public float HeaderSecondaryCornerRoundingRadius set { base.Name = value; - Panel.Name = value + ".Panel"; + Panel.Name = $"{value}.Panel"; } } @@ -1137,7 +1137,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(Redirector, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(Redirector, buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHelpCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHelpCommand.cs index bea3d4de9..06372727c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHelpCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonHelpCommand.cs @@ -39,7 +39,7 @@ public class KryptonHelpCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the help button spec.")] public ButtonSpecAny? HelpButton { - get => _helpButtonSpec ?? new(); + get => _helpButtonSpec ?? new ButtonSpecAny(); set { _helpButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -64,7 +64,7 @@ public ButtonSpecAny? HelpButton /// Initializes a new instance of the class. public KryptonHelpCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ButtonSpecStyles.FormHelp; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonInputBox.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonInputBox.cs index a4af96ad3..a8f3bc303 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonInputBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonInputBox.cs @@ -24,7 +24,7 @@ public static string Show(string prompt, string caption = @"", string defaultResponse = @"", string cueText = @"", - Color cueColour = new(), + Color cueColour = new Color(), Font? cueTypeface = null, bool usePasswordOption = false) => InternalShow(null, prompt, caption, defaultResponse, cueText, cueColour, cueTypeface, usePasswordOption); @@ -45,7 +45,7 @@ public static string Show(IWin32Window owner, string prompt, string caption = @"", string defaultResponse = @"", string cueText = @"", - Color cueColour = new(), + Color cueColour = new Color(), Font? cueTypeface = null, bool usePasswordOption = false) => InternalShow(owner, prompt, caption, defaultResponse, cueText, cueColour, cueTypeface, usePasswordOption); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarCopyCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarCopyCommand.cs index 909789c9d..da281700f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarCopyCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarCopyCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarCopyCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the copy button spec.")] public ButtonSpecAny? ToolBarCopyButton { - get => _copyButtonSpec ?? new(); + get => _copyButtonSpec ?? new ButtonSpecAny(); set { _copyButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarCopyButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarCopyCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.Copy; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarCutCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarCutCommand.cs index 8b38a9de3..f55c2b309 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarCutCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarCutCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarCutCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the cut button spec.")] public ButtonSpecAny? ToolBarCutButton { - get => _cutButtonSpec ?? new(); + get => _cutButtonSpec ?? new ButtonSpecAny(); set { _cutButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarCutButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarCutCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.Cut; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarNewCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarNewCommand.cs index faed8a859..acd60cd9e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarNewCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarNewCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarNewCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the new button spec.")] public ButtonSpecAny? ToolBarNewButton { - get => _newButtonSpec ?? new(); + get => _newButtonSpec ?? new ButtonSpecAny(); set { _newButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarNewButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarNewCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.New; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarOpenCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarOpenCommand.cs index e5b48991e..c1d3a4217 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarOpenCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarOpenCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarOpenCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the open button spec.")] public ButtonSpecAny? ToolBarOpenButton { - get => _openButtonSpec ?? new(); + get => _openButtonSpec ?? new ButtonSpecAny(); set { _openButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarOpenButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarOpenCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.Open; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPageSetupCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPageSetupCommand.cs index dd46bbbe3..c03a94162 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPageSetupCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPageSetupCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarPageSetupCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the page setup button spec.")] public ButtonSpecAny? ToolBarPageSetupButton { - get => _pageSetupButtonSpec ?? new(); + get => _pageSetupButtonSpec ?? new ButtonSpecAny(); set { _pageSetupButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarPageSetupButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarPageSetupCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.PageSetup; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPasteCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPasteCommand.cs index 7c6c217a9..77b63b958 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPasteCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPasteCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarPasteCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the paste button spec.")] public ButtonSpecAny? ToolBarPasteButton { - get => _pasteButtonSpec ?? new(); + get => _pasteButtonSpec ?? new ButtonSpecAny(); set { _pasteButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarPasteButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarPasteCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.Paste; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPrintCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPrintCommand.cs index 3a26b77e0..4797d5bb7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPrintCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPrintCommand.cs @@ -45,7 +45,7 @@ public class KryptonIntegratedToolbarPrintCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the print button spec.")] public ButtonSpecAny? ToolBarPrintButton { - get => _printButtonSpec ?? new(); + get => _printButtonSpec ?? new ButtonSpecAny(); set { _printButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); UpdateButtonSpec(); } } @@ -72,7 +72,7 @@ public ButtonSpecAny? ToolBarPrintButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarPrintCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); _style = PaletteButtonSpecStyle.Print; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPrintPreviewCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPrintPreviewCommand.cs index 07bc5e8ba..1292d43ff 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPrintPreviewCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarPrintPreviewCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarPrintPreviewCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the print preview button spec.")] public ButtonSpecAny? ToolBarPrintPreviewButton { - get => _printPreviewButtonSpec ?? new(); + get => _printPreviewButtonSpec ?? new ButtonSpecAny(); set { _printPreviewButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarPrintPreviewButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarPrintPreviewCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.PrintPreview; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarQuickPrintCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarQuickPrintCommand.cs index 05f815ec8..78733e7c3 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarQuickPrintCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarQuickPrintCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarQuickPrintCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the quick print button spec.")] public ButtonSpecAny? ToolBarQuickPrintButton { - get => _quickPrintButtonSpec ?? new(); + get => _quickPrintButtonSpec ?? new ButtonSpecAny(); set { _quickPrintButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarQuickPrintButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarQuickPrintCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.QuickPrint; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarRedoCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarRedoCommand.cs index 63a0304ec..fa957207e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarRedoCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarRedoCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarRedoCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the redo button spec.")] public ButtonSpecAny? ToolBarRedoButton { - get => _redoButtonSpec ?? new(); + get => _redoButtonSpec ?? new ButtonSpecAny(); set { _redoButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarRedoButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarRedoCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.Redo; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveAllCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveAllCommand.cs index 84999b62e..39fcbf8c0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveAllCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveAllCommand.cs @@ -47,7 +47,7 @@ public class KryptonIntegratedToolbarSaveAllCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the save all button spec.")] public ButtonSpecAny? ToolBarSaveAllButton { - get => _saveAllButtonSpec ?? new(); + get => _saveAllButtonSpec ?? new ButtonSpecAny(); set { _saveAllButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -74,7 +74,7 @@ public ButtonSpecAny? ToolBarSaveAllButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarSaveAllCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); _style = PaletteButtonSpecStyle.SaveAll; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveAsCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveAsCommand.cs index b853da3bc..1658b45a0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveAsCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveAsCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarSaveAsCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the save as button spec.")] public ButtonSpecAny? ToolBarSaveAsButton { - get => _saveAsButtonSpec ?? new(); + get => _saveAsButtonSpec ?? new ButtonSpecAny(); set { _saveAsButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarSaveAsButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarSaveAsCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.SaveAs; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveCommand.cs index d7507d0e3..f93303d02 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarSaveCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarSaveCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the save button spec.")] public ButtonSpecAny? ToolBarSaveButton { - get => _saveButtonSpec ?? new(); + get => _saveButtonSpec ?? new ButtonSpecAny(); set { _saveButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarSaveButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarSaveCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.Save; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarUndoCommand.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarUndoCommand.cs index b859f8dcc..2f46650f2 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarUndoCommand.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonIntegratedToolbarUndoCommand.cs @@ -39,7 +39,7 @@ public class KryptonIntegratedToolbarUndoCommand : KryptonCommand [DefaultValue(null), Description(@"Access to the undo button spec.")] public ButtonSpecAny? ToolBarUndoButton { - get => _undoButtonSpec ?? new(); + get => _undoButtonSpec ?? new ButtonSpecAny(); set { _undoButtonSpec = value; UpdateImage(KryptonManager.InternalGlobalPaletteMode); } } @@ -66,7 +66,7 @@ public ButtonSpecAny? ToolBarUndoButton /// Initializes a new instance of the class. public KryptonIntegratedToolbarUndoCommand() { - _imageStates = new(); + _imageStates = new ButtonImageStates(); Text = KryptonLanguageManager.ToolBarStrings.Undo; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLabel.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLabel.cs index 62cbf8f48..989c588dd 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLabel.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLabel.cs @@ -42,7 +42,7 @@ public class KryptonLabel : VisualSimpleBase, IContentValues /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the KryptonCommand property changes.")] - public event EventHandler KryptonCommandChanged; + public event EventHandler? KryptonCommandChanged; #endregion #region Identity @@ -487,7 +487,7 @@ protected override void OnEnabledChanged(EventArgs e) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(90, 25); + protected override Size DefaultSize => new Size(90, 25); /// /// Work out if this control needs to paint transparent areas. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLanguageManager.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLanguageManager.cs index d23ab3cc7..72d85dee1 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLanguageManager.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLanguageManager.cs @@ -17,11 +17,6 @@ namespace Krypton.Toolkit [ToolboxItem(true)] public class KryptonLanguageManager : Component { - #region Instance Fields - - - #endregion - #region Public /// Gets the global color strings. @@ -407,110 +402,112 @@ public class KryptonLanguageManager : Component /// Gets the color strings. /// The color strings. - public static GlobalColorStrings ColorStrings { get; } = new(); + public static GlobalColorStrings ColorStrings { get; } = new GlobalColorStrings(); /// Gets the spec style strings. /// The spec style strings. - public static ButtonStyleStrings ButtonStyles { get; } = new(); + public static ButtonStyleStrings ButtonStyles { get; } = new ButtonStyleStrings(); - public static CustomToolkitStrings CustomToolkitStrings { get; } = new(); + public static CustomToolkitStrings CustomToolkitStrings { get; } = new CustomToolkitStrings(); /// Gets the strings. /// The strings. public static GeneralToolkitStrings GeneralToolkitStrings - { get; } = new(); + { get; } = new GeneralToolkitStrings(); /// Gets the grid view style strings. /// The grid view style strings. - public static DataGridViewStyleStrings DataGridViewStyles { get; } = new(); + public static DataGridViewStyleStrings DataGridViewStyles { get; } = new DataGridViewStyleStrings(); /// Gets the style strings. /// The style strings. - public static GridStyleStrings GridStyles { get; } = new(); + public static GridStyleStrings GridStyles { get; } = new GridStyleStrings(); /// Gets the group collapsed target strings. /// The group collapsed target strings. - public static HeaderGroupCollapsedTargetStrings GroupCollapsedTargetStrings { get; } = new(); + public static HeaderGroupCollapsedTargetStrings GroupCollapsedTargetStrings { get; } = + new HeaderGroupCollapsedTargetStrings(); /// Gets the header styles. /// The header styles. - public static HeaderStyleStrings HeaderStyles { get; } = new(); + public static HeaderStyleStrings HeaderStyles { get; } = new HeaderStyleStrings(); /// Gets the input control styles. /// The input control styles. - public static InputControlStyleStrings InputControlStyles { get; } = new(); + public static InputControlStyleStrings InputControlStyles { get; } = new InputControlStyleStrings(); /// Gets the tool bar strings. /// The tool bar strings. - public static IntegratedToolBarStrings ToolBarStrings { get; } = new(); + public static IntegratedToolBarStrings ToolBarStrings { get; } = new IntegratedToolBarStrings(); /// Gets the link behavior strings. /// The link behavior strings. - public static KryptonLinkBehaviorStrings LinkBehaviorStrings { get; } = new(); + public static KryptonLinkBehaviorStrings LinkBehaviorStrings { get; } = new KryptonLinkBehaviorStrings(); /// Gets the krypton label style strings. /// The krypton label style strings. - public static LabelStyleStrings KryptonLabelStyleStrings { get; } = new(); + public static LabelStyleStrings KryptonLabelStyleStrings { get; } = new LabelStyleStrings(); /// Gets the back style strings. /// The back style strings. - public static PaletteBackStyleStrings BackStyleStrings { get; } = new(); + public static PaletteBackStyleStrings BackStyleStrings { get; } = new PaletteBackStyleStrings(); /// Gets the border style strings. /// The border style strings. - public static PaletteBorderStyleStrings BorderStyleStrings { get; } = new(); + public static PaletteBorderStyleStrings BorderStyleStrings { get; } = new PaletteBorderStyleStrings(); /// Gets the button orientation strings. /// The button orientation strings. - public static PaletteButtonOrientationStrings ButtonOrientationStrings { get; } = new(); + public static PaletteButtonOrientationStrings ButtonOrientationStrings { get; } = + new PaletteButtonOrientationStrings(); /// Gets the button spec styles. /// The button spec styles. - public static PaletteButtonSpecStyleStrings ButtonSpecStyles { get; } = new(); + public static PaletteButtonSpecStyleStrings ButtonSpecStyles { get; } = new PaletteButtonSpecStyleStrings(); /// Gets the button style strings. /// The button style strings. - public static PaletteButtonStyleStrings PaletteButtonStyles { get; } = new(); + public static PaletteButtonStyleStrings PaletteButtonStyles { get; } = new PaletteButtonStyleStrings(); /// Gets the content style strings. /// The content style strings. - public static PaletteContentStyleStrings ContentStyleStrings { get; } = new(); + public static PaletteContentStyleStrings ContentStyleStrings { get; } = new PaletteContentStyleStrings(); /// Gets the image effect strings. /// The image effect strings. - public static PaletteImageEffectStrings ImageEffectStrings { get; } = new(); + public static PaletteImageEffectStrings ImageEffectStrings { get; } = new PaletteImageEffectStrings(); /// Gets the image style strings. /// The image style strings. - public static PaletteImageStyleStrings ImageStyleStrings { get; } = new(); + public static PaletteImageStyleStrings ImageStyleStrings { get; } = new PaletteImageStyleStrings(); /// Gets the mode strings. /// The mode strings. - public static PaletteModeStrings ModeStrings { get; } = new(); + public static PaletteModeStrings ModeStrings { get; } = new PaletteModeStrings(); /// Gets the text trim strings. /// The text trim strings. - public static PaletteTextTrimStrings TextTrimStrings { get; } = new(); + public static PaletteTextTrimStrings TextTrimStrings { get; } = new PaletteTextTrimStrings(); /// Gets the placement mode strings. /// The placement mode strings. - public static PlacementModeStrings PlacementModeStrings { get; } = new(); + public static PlacementModeStrings PlacementModeStrings { get; } = new PlacementModeStrings(); /// Gets the separator styles. /// The separator styles. - public static SeparatorStyleStrings SeparatorStyles { get; } = new(); + public static SeparatorStyleStrings SeparatorStyles { get; } = new SeparatorStyleStrings(); /// Gets the tab border styles. /// The tab border styles. - public static TabBorderStyleStrings TabBorderStyles { get; } = new(); + public static TabBorderStyleStrings TabBorderStyles { get; } = new TabBorderStyleStrings(); /// Gets the tab styles. /// The tab styles. - public static TabStyleStrings TabStyles { get; } = new(); + public static TabStyleStrings TabStyles { get; } = new TabStyleStrings(); /// Gets the scroll bar strings. /// The scroll bar strings. - public static KryptonScrollBarStrings ScrollBarStrings { get; } = new(); + public static KryptonScrollBarStrings ScrollBarStrings { get; } = new KryptonScrollBarStrings(); #endregion @@ -614,12 +611,6 @@ public void Reset() ResetKryptonScrollBarStrings(); } - #endregion - - #region Protected - - - #endregion } } \ No newline at end of file diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLinkLabel.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLinkLabel.cs index ee594b283..f38ec5847 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLinkLabel.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLinkLabel.cs @@ -46,7 +46,7 @@ public class KryptonLinkLabel : KryptonLabel /// [Category(@"Action")] [Description(@"Occurs when the link is clicked.")] - public event EventHandler LinkClicked; + public event EventHandler? LinkClicked; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLinkWrapLabel.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLinkWrapLabel.cs index 7ce61a061..0561bfc6d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLinkWrapLabel.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonLinkWrapLabel.cs @@ -46,7 +46,7 @@ public class KryptonLinkWrapLabel : LinkLabel /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the Palette property is changed.")] - public event EventHandler PaletteChanged; + public event EventHandler? PaletteChanged; #endregion #region Identity @@ -629,7 +629,7 @@ protected override void OnPaintBackground(PaintEventArgs? pEvent) /// Create the redirector instance. /// /// PaletteRedirect derived class. - private PaletteRedirect CreateRedirector() => new(_palette); + private PaletteRedirect CreateRedirector() => new PaletteRedirect(_palette); /// /// Update the view elements based on the requested label style. @@ -714,7 +714,7 @@ protected override void WndProc(ref Message m) if (KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListBox.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListBox.cs index 28bc89a49..efe29410e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListBox.cs @@ -42,12 +42,12 @@ private class InternalListBox : ListBox /// /// Occurs when the mouse enters the InternalListBox. /// - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the InternalListBox. /// - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -166,7 +166,8 @@ protected override void OnLayout(LayoutEventArgs levent) base.OnLayout(levent); // Ask the panel to layout given our available size - using ViewLayoutContext context = new(_viewManager, this, _kryptonListBox, _kryptonListBox.Renderer); + using ViewLayoutContext context = + new ViewLayoutContext(_viewManager, this, _kryptonListBox, _kryptonListBox.Renderer); ViewDrawPanel.Layout(context); } @@ -210,7 +211,7 @@ protected override void WndProc(ref Message m) else { // Find the item under the mouse - Point mousePoint = new((int)m.LParam.ToInt64()); + Point mousePoint = new Point((int)m.LParam.ToInt64()); var mouseIndex = IndexFromPoint(mousePoint); // If we have an actual item from the point @@ -255,7 +256,7 @@ protected override void WndProc(ref Message m) #region Private private void WmPaint(ref Message m) { - PI.PAINTSTRUCT ps = new(); + PI.PAINTSTRUCT ps = new PI.PAINTSTRUCT(); // Do we need to BeginPaint or just take the given HDC? IntPtr hdc = m.WParam == IntPtr.Zero ? PI.BeginPaint(Handle, ref ps) : m.WParam; @@ -278,16 +279,17 @@ private void WmPaint(ref Message m) PI.SelectObject(_screenDC, hBitmap); // Easier to draw using a graphics instance than a DC! - using (Graphics? g = Graphics.FromHdc(_screenDC)) + using (Graphics g = Graphics.FromHdc(_screenDC)) { // Ask the view element to layout in given space, needs this before a render call - using (ViewLayoutContext context = new(this, _kryptonListBox.Renderer)) + using (ViewLayoutContext context = new ViewLayoutContext(this, _kryptonListBox.Renderer)) { context.DisplayRectangle = realRect; ViewDrawPanel.Layout(context); } - using (RenderContext context = new(this, _kryptonListBox, g, realRect, _kryptonListBox.Renderer)) + using (RenderContext context = new RenderContext(this, _kryptonListBox, g, realRect, + _kryptonListBox.Renderer)) { ViewDrawPanel.Render(context); } @@ -300,7 +302,8 @@ private void WmPaint(ref Message m) if (Items.Count == 0) { - using RenderContext context = new(this, _kryptonListBox, g, realRect, _kryptonListBox.Renderer); + using RenderContext context = new RenderContext(this, _kryptonListBox, g, realRect, + _kryptonListBox.Renderer); ViewDrawPanel.Render(context); } } @@ -311,8 +314,9 @@ private void WmPaint(ref Message m) // When disabled with no items the above code does not draw the background! if (Items.Count == 0) { - using Graphics? g = Graphics.FromHdc(hdc); - using RenderContext context = new(this, _kryptonListBox, g, realRect, _kryptonListBox.Renderer); + using Graphics g = Graphics.FromHdc(hdc); + using RenderContext context = new RenderContext(this, _kryptonListBox, g, realRect, + _kryptonListBox.Renderer); ViewDrawPanel.Render(context); } } @@ -368,112 +372,112 @@ private void WmPaint(ref Message m) /// [Description(@"Occurs when the value of the DataSource property changes.")] [Category(@"Property Changed")] - public event EventHandler DataSourceChanged; + public event EventHandler? DataSourceChanged; /// /// Occurs when the value of the DisplayMember property changes. /// [Description(@"Occurs when the value of the DisplayMember property changes.")] [Category(@"Property Changed")] - public event EventHandler DisplayMemberChanged; + public event EventHandler? DisplayMemberChanged; /// /// Occurs when the property of a control is bound to a data value. /// [Description(@"Occurs when the property of a control is bound to a data value.")] [Category(@"Property Changed")] - public event EventHandler Format; + public event EventHandler? Format; /// /// Occurs when the value of the FormatInfo property changes. /// [Description(@"Occurs when the value of the FormatInfo property changes.")] [Category(@"Property Changed")] - public event EventHandler FormatInfoChanged; + public event EventHandler? FormatInfoChanged; /// /// Occurs when the value of the FormatString property changes. /// [Description(@"Occurs when the value of the FormatString property changes.")] [Category(@"Property Changed")] - public event EventHandler FormatStringChanged; + public event EventHandler? FormatStringChanged; /// /// Occurs when the value of the FormattingEnabled property changes. /// [Description(@"Occurs when the value of the FormattingEnabled property changes.")] [Category(@"Property Changed")] - public event EventHandler FormattingEnabledChanged; + public event EventHandler? FormattingEnabledChanged; /// /// Occurs when the value of the SelectedValue property changes. /// [Description(@"Occurs when the value of the SelectedValue property changes.")] [Category(@"Property Changed")] - public event EventHandler SelectedValueChanged; + public event EventHandler? SelectedValueChanged; /// /// Occurs when the value of the SelectedIndex property changes. /// [Description(@"Occurs when the value of the SelectedIndex property changes.")] [Category(@"Behavior")] - public event EventHandler SelectedIndexChanged; + public event EventHandler? SelectedIndexChanged; /// /// Occurs when the value of the ValueMember property changes. /// [Description(@"Occurs when the value of the ValueMember property changes.")] [Category(@"Property Changed")] - public event EventHandler ValueMemberChanged; + public event EventHandler? ValueMemberChanged; /// /// Occurs when the value of the BackColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackColorChanged; + public new event EventHandler? BackColorChanged; /// /// Occurs when the value of the BackgroundImage property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageChanged; + public new event EventHandler? BackgroundImageChanged; /// /// Occurs when the value of the BackgroundImageLayout property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageLayoutChanged; + public new event EventHandler? BackgroundImageLayoutChanged; /// /// Occurs when the value of the ForeColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler ForeColorChanged; + public new event EventHandler? ForeColorChanged; /// /// Occurs when the value of the MouseClick property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler PaddingChanged; + public new event EventHandler? PaddingChanged; /// /// Occurs when the value of the MouseClick property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event PaintEventHandler Paint; + public new event PaintEventHandler? Paint; /// /// Occurs when the value of the TextChanged property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler TextChanged; + public new event EventHandler? TextChanged; /// /// Occurs when the mouse enters the control. @@ -481,7 +485,7 @@ private void WmPaint(ref Message m) [Description(@"Raises the TrackMouseEnter event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the control. @@ -489,14 +493,14 @@ private void WmPaint(ref Message m) [Description(@"Raises the TrackMouseLeave event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; /// /// Occurs when [draw item]. /// [Category(@"Behavior")] [Description(@"Occurs when an item needs to be Drawn.")] - public event DrawItemEventHandler DrawItem; + public event DrawItemEventHandler? DrawItem; #endregion #region Identity @@ -1530,7 +1534,7 @@ protected override void OnMouseLeave(EventArgs e) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(120, 96); + protected override Size DefaultSize => new Size(120, 96); #endregion @@ -1638,7 +1642,7 @@ private void OnListBoxDrawItem(object sender, DrawItemEventArgs e) // Easier to draw using a graphics instance than a DC! using Graphics g = Graphics.FromHdc(_screenDC); // Ask the view element to layout in given space, needs this before a render call - using (ViewLayoutContext context = new(this, Renderer)) + using (ViewLayoutContext context = new ViewLayoutContext(this, Renderer)) { context.DisplayRectangle = e.Bounds; _listBox.ViewDrawPanel.Layout(context); @@ -1646,7 +1650,7 @@ private void OnListBoxDrawItem(object sender, DrawItemEventArgs e) } // Ask the view element to actually draw - using (RenderContext context = new(this, g, e.Bounds, Renderer)) + using (RenderContext context = new RenderContext(this, g, e.Bounds, Renderer)) { _listBox.ViewDrawPanel.Render(context); _drawButton.Render(context); @@ -1674,7 +1678,7 @@ private void OnListBoxMeasureItem(object sender, MeasureItemEventArgs e) UpdateContentFromItemIndex(e.Index); // Ask the view element to layout in given space, needs this before a render call - using ViewLayoutContext context = new(this, Renderer); + using ViewLayoutContext context = new ViewLayoutContext(this, Renderer); Size size = _drawButton.GetPreferredSize(context); e.ItemWidth = size.Width; e.ItemHeight = size.Height; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListItem.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListItem.cs index f9c5fddf7..cea9dba93 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListItem.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListItem.cs @@ -34,7 +34,7 @@ public class KryptonListItem : Component, /// [Category(@"Property Changed")] [Description(@"Occurs when the value of property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListView.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListView.cs index 07495a6d7..729c45f23 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListView.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonListView.cs @@ -509,7 +509,7 @@ protected override void OnDrawItem(DrawListViewItemEventArgs e) { View.LargeIcon => e.Item.Text, View.Tile => e.Item.Text, - View.SmallIcon => e.Item.Text + @" ", // Hack to get the button to "Surround" the text + View.SmallIcon => $@"{e.Item.Text} ", // Hack to get the button to "Surround" the text _ => null }; @@ -570,7 +570,7 @@ protected override void OnDrawItem(DrawListViewItemEventArgs e) #pragma warning restore CA2208 // Instantiate argument exceptions correctly }; - using (ViewLayoutContext context = new(this, Renderer)) + using (ViewLayoutContext context = new ViewLayoutContext(this, Renderer)) { context.DisplayRectangle = e.Bounds; ViewDrawPanel.Layout(context); @@ -591,12 +591,12 @@ protected override void OnDrawItem(DrawListViewItemEventArgs e) // Easier to draw using a graphics instance than a DC! using Graphics g = Graphics.FromHdc(_screenDC); - using (RenderContext context = new(this, g, e.Bounds, Renderer)) + using (RenderContext context = new RenderContext(this, g, e.Bounds, Renderer)) { ViewDrawPanel.Render(context); } - using (RenderContext context = new(this, g, bounds, Renderer)) + using (RenderContext context = new RenderContext(this, g, bounds, Renderer)) { layoutDocker.Render(context); } @@ -708,7 +708,7 @@ protected override void WndProc(ref Message m) if (KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonManager.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonManager.cs index 7420078b2..fa17b2072 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonManager.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonManager.cs @@ -122,20 +122,14 @@ public sealed class KryptonManager : Component /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the GlobalPalette property is changed.")] - public static event EventHandler GlobalPaletteChanged; + public static event EventHandler? GlobalPaletteChanged; /// /// Occurs when the AllowFormChrome property changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the GlobalAllowFormChrome property is changed.")] - public static event EventHandler GlobalAllowFormChromeChanged; - #endregion - - #region Instance Fields - - //private readonly bool _useOSLanguageStrings; - + public static event EventHandler? GlobalAllowFormChromeChanged; #endregion #region Identity @@ -199,8 +193,6 @@ protected override void Dispose(bool disposing) || ShouldSerializeGlobalPalette() || ShouldSerializeGlobalApplyToolstrips() || ShouldSerializeGlobalAllowFormChrome() - //|| ShouldSerializeGlobalStrings() - //|| ShouldSerializeGlobalColorStrings() ); /// @@ -212,8 +204,6 @@ public void Reset() ResetGlobalPalette(); ResetGlobalApplyToolstrips(); ResetGlobalAllowFormChrome(); - //ResetGlobalStrings(); - //ResetGlobalColorStrings(); _customPalette = null; @@ -245,7 +235,7 @@ public PaletteMode GlobalPaletteMode default: // Cache the new values PaletteMode tempMode = InternalGlobalPaletteMode; - PaletteBase tempPalette = InternalGlobalPalette; + PaletteBase? tempPalette = InternalGlobalPalette; // Use the new value InternalGlobalPaletteMode = value; @@ -379,40 +369,6 @@ public bool GlobalAllowFormChrome private void ResetGlobalAllowFormChrome() => GlobalAllowFormChrome = true; - /*/// - /// Gets a set of global strings used by Krypton that can be localized. - /// - [Category(@"Visuals")] - [Description(@"Collection of global strings.")] - [MergableProperty(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)] - [Localizable(true)] - public GlobalStrings GlobalStrings => Strings; - - private bool ShouldSerializeGlobalStrings() => !Strings.IsDefault; - - /// - /// Resets the GlobalStrings property to its default value. - /// - public void ResetGlobalStrings() => Strings.Reset(); - - /// - /// Gets a set of global color strings used by Krypton that can be localized. - /// - [Category(@"Visuals")] - [Description(@"Collection of global color strings.")] - [MergableProperty(false)] - [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)] - [Localizable(true)] - public GlobalColorStrings GlobalColorStrings => ColorStrings; - - private bool ShouldSerializeGlobalColorStrings() => !ColorStrings.IsDefault; - - /// - /// Resets the GlobalColorStrings property to its default value. - /// - public void ResetGlobalColorStrings() => ColorStrings.Reset();*/ - [Category(@"Visuals")] [Description(@"")] [DefaultValue(null)] @@ -495,19 +451,6 @@ public static bool AllowFormChrome } #endregion - #region Static Strings - - /*/// - /// Gets access to the set of global strings. - /// - public static GlobalStrings Strings { get; } = new(); - - /// - /// Gets access to the set of global color strings. - /// - public static GlobalColorStrings ColorStrings { get; } = new();*/ - - #endregion #region Static Palette /// @@ -1130,7 +1073,7 @@ private static void OnPalettePaint(object sender, PaletteLayoutEventArgs e) } } - private static void SetPalette(PaletteBase globalPalette) + private static void SetPalette(PaletteBase? globalPalette) { if (globalPalette != InternalGlobalPalette) { diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMaskedTextBox.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMaskedTextBox.cs index 881fca297..8df947ccd 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMaskedTextBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMaskedTextBox.cs @@ -58,12 +58,12 @@ public string? Hint /// /// Occurs when the mouse enters the InternalMaskedTextBox. /// - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the InternalMaskedTextBox. /// - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -152,7 +152,7 @@ protected override void WndProc(ref Message m) case PI.WM_.PRINTCLIENT: case PI.WM_.PAINT: { - PI.PAINTSTRUCT ps = new(); + PI.PAINTSTRUCT ps = new PI.PAINTSTRUCT(); // Do we need to BeginPaint or just take the given HDC? IntPtr hdc = m.WParam == IntPtr.Zero ? PI.BeginPaint(Handle, ref ps) : m.WParam; @@ -164,7 +164,7 @@ protected override void WndProc(ref Message m) PI.GetClientRect(Handle, out PI.RECT rect); // Drawn entire client area in the background color - using (SolidBrush backBrush = new(BackColor)) + using (SolidBrush backBrush = new SolidBrush(BackColor)) { g.FillRectangle(backBrush, new Rectangle(rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top)); } @@ -196,7 +196,7 @@ protected override void WndProc(ref Message m) g.TextRenderingHint = CommonHelper.PaletteTextHintToRenderingHint(_kryptonMaskedTextBox.StateDisabled.PaletteContent.GetContentShortTextHint(PaletteState.Disabled)); // Define the string formatting requirements - StringFormat stringFormat = new() + StringFormat stringFormat = new StringFormat { LineAlignment = StringAlignment.Center, FormatFlags = StringFormatFlags.NoWrap, @@ -222,14 +222,14 @@ protected override void WndProc(ref Message m) var drawText = MaskedTextProvider?.ToDisplayString() ?? Text; try { - using SolidBrush foreBrush = new(ForeColor); + using SolidBrush foreBrush = new SolidBrush(ForeColor); g.DrawString(drawText, Font, foreBrush, new RectangleF(rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top), stringFormat); } catch (ArgumentException) { - using SolidBrush foreBrush = new(ForeColor); + using SolidBrush foreBrush = new SolidBrush(ForeColor); g.DrawString(drawText, _kryptonMaskedTextBox.GetTripleState().PaletteContent.GetContentShortTextFont(PaletteState.Disabled), foreBrush, new RectangleF(rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top), stringFormat); @@ -252,7 +252,7 @@ protected override void WndProc(ref Message m) if (_kryptonMaskedTextBox.KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) @@ -335,56 +335,56 @@ public MaskedTextBoxButtonSpecCollection(KryptonMaskedTextBox owner) /// [Description(@"Occurs when the value of the HideSelection property changes.")] [Category(@"Property Changed")] - public event EventHandler HideSelectionChanged; + public event EventHandler? HideSelectionChanged; /// /// Occurs when the value of the TextAlign property changes. /// [Description(@"Occurs when the value of the TextAlign property changes.")] [Category(@"Property Changed")] - public event EventHandler TextAlignChanged; + public event EventHandler? TextAlignChanged; /// /// Occurs when the value of the Modified property changes. /// [Description(@"Occurs when the value of the Modified property changes.")] [Category(@"Property Changed")] - public event EventHandler ModifiedChanged; + public event EventHandler? ModifiedChanged; /// /// Occurs when the value of the ReadOnly property changes. /// [Description(@"Occurs when the value of the ReadOnly property changes.")] [Category(@"Property Changed")] - public event EventHandler ReadOnlyChanged; + public event EventHandler? ReadOnlyChanged; /// /// Occurs when the value of the Mask property changes. /// [Description(@"Occurs when the value of the Mask property changes.")] [Category(@"Property Changed")] - public event EventHandler MaskChanged; + public event EventHandler? MaskChanged; /// /// Occurs when the value of the IsOverwriteMode property changes. /// [Description(@"Occurs when the value of the IsOverwriteMode property changes.")] [Category(@"Property Changed")] - public event EventHandler IsOverwriteModeChanged; + public event EventHandler? IsOverwriteModeChanged; /// /// Occurs when the input character or text does not comply with the mask specification. /// [Description(@"Occurs when the input character or text does not comply with the mask specification.")] [Category(@"Behavior")] - public event MaskInputRejectedEventHandler MaskInputRejected; + public event MaskInputRejectedEventHandler? MaskInputRejected; /// /// Occurs when the validating type object has completed parsing the input text. /// [Description(@"Occurs when the validating type object has completed parsing the input text.")] [Category(@"Focus")] - public event TypeValidationEventHandler TypeValidationCompleted; + public event TypeValidationEventHandler? TypeValidationCompleted; /// /// Occurs when the mouse enters the control. @@ -392,7 +392,7 @@ public MaskedTextBoxButtonSpecCollection(KryptonMaskedTextBox owner) [Description(@"Raises the TrackMouseEnter event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the control. @@ -400,35 +400,35 @@ public MaskedTextBoxButtonSpecCollection(KryptonMaskedTextBox owner) [Description(@"Raises the TrackMouseLeave event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; /// /// Occurs when the value of the BackColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackColorChanged; + public new event EventHandler? BackColorChanged; /// /// Occurs when the value of the BackgroundImage property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageChanged; + public new event EventHandler? BackgroundImageChanged; /// /// Occurs when the value of the BackgroundImageLayout property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageLayoutChanged; + public new event EventHandler? BackgroundImageLayoutChanged; /// /// Occurs when the value of the ForeColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler ForeColorChanged; + public new event EventHandler? ForeColorChanged; #endregion #region Identity @@ -465,25 +465,25 @@ public KryptonMaskedTextBox() // Create the internal text box used for containing content _maskedTextBox = new InternalMaskedTextBox(this); - _maskedTextBox.TrackMouseEnter += OnMaskedTextBoxMouseChange!; - _maskedTextBox.TrackMouseLeave += OnMaskedTextBoxMouseChange!; - _maskedTextBox.TextAlignChanged += OnMaskedTextBoxTextAlignChanged!; - _maskedTextBox.TextChanged += OnMaskedTextBoxTextChanged!; - _maskedTextBox.HideSelectionChanged += OnMaskedTextBoxHideSelectionChanged!; - _maskedTextBox.ModifiedChanged += OnMaskedTextBoxModifiedChanged!; - _maskedTextBox.ReadOnlyChanged += OnMaskedTextBoxReadOnlyChanged!; - _maskedTextBox.MaskChanged += OnMaskedMaskChanged!; - _maskedTextBox.IsOverwriteModeChanged += OnMaskedIsOverwriteModeChanged!; - _maskedTextBox.MaskInputRejected += OnMaskedMaskInputRejected!; - _maskedTextBox.TypeValidationCompleted += OnMaskedTypeValidationCompleted!; - _maskedTextBox.GotFocus += OnMaskedTextBoxGotFocus!; - _maskedTextBox.LostFocus += OnMaskedTextBoxLostFocus!; - _maskedTextBox.KeyDown += OnMaskedTextBoxKeyDown!; - _maskedTextBox.KeyUp += OnMaskedTextBoxKeyUp!; - _maskedTextBox.KeyPress += OnMaskedTextBoxKeyPress!; - _maskedTextBox.PreviewKeyDown += OnMaskedTextBoxPreviewKeyDown!; - _maskedTextBox.Validating += OnMaskedTextBoxValidating!; - _maskedTextBox.Validated += OnMaskedTextBoxValidated!; + _maskedTextBox.TrackMouseEnter += OnMaskedTextBoxMouseChange; + _maskedTextBox.TrackMouseLeave += OnMaskedTextBoxMouseChange; + _maskedTextBox.TextAlignChanged += OnMaskedTextBoxTextAlignChanged; + _maskedTextBox.TextChanged += OnMaskedTextBoxTextChanged; + _maskedTextBox.HideSelectionChanged += OnMaskedTextBoxHideSelectionChanged; + _maskedTextBox.ModifiedChanged += OnMaskedTextBoxModifiedChanged; + _maskedTextBox.ReadOnlyChanged += OnMaskedTextBoxReadOnlyChanged; + _maskedTextBox.MaskChanged += OnMaskedMaskChanged; + _maskedTextBox.IsOverwriteModeChanged += OnMaskedIsOverwriteModeChanged; + _maskedTextBox.MaskInputRejected += OnMaskedMaskInputRejected; + _maskedTextBox.TypeValidationCompleted += OnMaskedTypeValidationCompleted; + _maskedTextBox.GotFocus += OnMaskedTextBoxGotFocus; + _maskedTextBox.LostFocus += OnMaskedTextBoxLostFocus; + _maskedTextBox.KeyDown += OnMaskedTextBoxKeyDown; + _maskedTextBox.KeyUp += OnMaskedTextBoxKeyUp; + _maskedTextBox.KeyPress += OnMaskedTextBoxKeyPress; + _maskedTextBox.PreviewKeyDown += OnMaskedTextBoxPreviewKeyDown; + _maskedTextBox.Validating += OnMaskedTextBoxValidating; + _maskedTextBox.Validated += OnMaskedTextBoxValidated; // Create the element that fills the remainder space and remembers fill rectangle _layoutFill = new ViewLayoutFill(_maskedTextBox); @@ -514,8 +514,8 @@ public KryptonMaskedTextBox() // Create the manager for handling tooltips ToolTipManager = new ToolTipManager(ToolTipValues); - ToolTipManager.ShowToolTip += OnShowToolTip!; - ToolTipManager.CancelToolTip += OnCancelToolTip!; + ToolTipManager.ShowToolTip += OnShowToolTip; + ToolTipManager.CancelToolTip += OnCancelToolTip; _buttonManager.ToolTipManager = ToolTipManager; // Add text box to the controls collection @@ -1681,7 +1681,7 @@ protected override void SetBoundsCore(int x, int y, /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(100, PreferredHeight); + protected override Size DefaultSize => new Size(100, PreferredHeight); /// /// Processes a notification from palette storage of a paint and optional layout required. @@ -1894,7 +1894,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(Redirector, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(Redirector, buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) @@ -1925,7 +1925,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) CommonHelper.ContentStyleFromLabelStyle(toolTipStyle), shadow); - _visualPopupToolTip.Disposed += OnVisualPopupToolTipDisposed!; + _visualPopupToolTip.Disposed += OnVisualPopupToolTipDisposed; _visualPopupToolTip.ShowRelativeTo(e.Target, e.ControlMousePosition); } } @@ -1943,7 +1943,7 @@ private void OnVisualPopupToolTipDisposed(object sender, EventArgs e) { // Unhook events from the specific instance that generated event VisualPopupToolTip popupToolTip = (VisualPopupToolTip)sender; - popupToolTip.Disposed -= OnVisualPopupToolTipDisposed!; + popupToolTip.Disposed -= OnVisualPopupToolTipDisposed; // Not showing a popup page any more _visualPopupToolTip = null; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMessageBox.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMessageBox.cs index df061a92e..aba18f59b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMessageBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMessageBox.cs @@ -32,7 +32,7 @@ public static class KryptonMessageBox /// Show extraText in title. If null(default) then only when Warning or Error icon is used. /// Specifies the . /// Specifies a if using the type. - /// Specifies the if a has not been defined. + /// Specifies the if a has not been defined. /// Specifies the start of a link if using the type. /// Specifies the end of a link if using the type. /// One of the System.Windows.Forms.DialogResult values. @@ -78,7 +78,7 @@ public static DialogResult Show(string text, bool? showCtrlCopy = null, /// Show extraText in title. If null(default) then only when Warning or Error icon is used. /// Specifies the . /// Specifies a if using the type. - /// Specifies the if a has not been defined. + /// Specifies the if a has not been defined. /// Specifies the start of a link if using the type. /// Specifies the end of a link if using the type. /// One of the System.Windows.Forms.DialogResult values. @@ -103,7 +103,7 @@ public static DialogResult Show(IWin32Window? owner, string text, bool? showCtrl /// Show extraText in title. If null(default) then only when Warning or Error icon is used. /// Specifies the . /// Specifies a if using the type. - /// Specifies the if a has not been defined. + /// Specifies the if a has not been defined. /// Specifies the start of a link if using the type. /// Specifies the end of a link if using the type. /// One of the System.Windows.Forms.DialogResult values. @@ -128,7 +128,7 @@ public static DialogResult Show(IWin32Window? owner, string text, string caption /// Show extraText in title. If null(default) then only when Warning or Error icon is used. /// Specifies the . /// Specifies a if using the type. - /// Specifies the if a has not been defined. + /// Specifies the if a has not been defined. /// Specifies the start of a link if using the type. /// Specifies the end of a link if using the type. /// One of the System.Windows.Forms.DialogResult values. @@ -166,7 +166,7 @@ public static DialogResult Show(string text, string caption, KryptonMessageBoxBu /// The application path. To be used in conjunction with type. /// Specifies the . /// Specifies a if using the type. - /// Specifies the if a has not been defined. + /// Specifies the if a has not been defined. /// Specifies the start of a link if using the type. /// Specifies the end of a link if using the type. /// One of the System.Windows.Forms.DialogResult values. @@ -210,7 +210,7 @@ public static DialogResult Show(string text, string caption, KryptonMessageBoxBu /// The application path. To be used in conjunction with type. /// Specifies the . /// Specifies a if using the type. - /// Specifies the if a has not been defined. + /// Specifies the if a has not been defined. /// Specifies the start of a link if using the type. /// Specifies the end of a link if using the type. /// One of the System.Windows.Forms.DialogResult values. @@ -253,7 +253,7 @@ public static DialogResult Show(IWin32Window? owner, string text, string caption /// The application path. To be used in conjunction with type. /// Specifies the . /// Specifies a if using the type. - /// Specifies the if a has not been defined. + /// Specifies the if a has not been defined. /// Specifies the start of a link if using the type. /// Specifies the end of a link if using the type. /// One of the System.Windows.Forms.DialogResult values. @@ -297,7 +297,7 @@ public static DialogResult Show(string text, string caption, KryptonMessageBoxBu /// The application path. To be used in conjunction with type. /// Specifies the . /// Specifies a if using the type. - /// Specifies the if a has not been defined. + /// Specifies the if a has not been defined. /// Specifies the start of a link if using the type. /// Specifies the end of a link if using the type. /// One of the System.Windows.Forms.DialogResult values. @@ -344,7 +344,7 @@ public static DialogResult Show(IWin32Window? owner, string text, string caption /// The application path. To be used in conjunction with type. /// Specifies the . /// Specifies a if using the type. - /// Specifies the if a has not been defined. + /// Specifies the if a has not been defined. /// Specifies the start of a link if using the type. /// Specifies the end of a link if using the type. /// One of the System.Windows.Forms.DialogResult values. @@ -369,15 +369,10 @@ private static DialogResult ShowCore(IWin32Window? owner, IWin32Window? showOwner = ValidateOptions(owner, options, helpInfo); // Show message box window as a modal dialog and then dispose of it afterwards - using KryptonMessageBoxForm kmb = new(showOwner, text, caption, buttons, icon, - defaultButton, options, - helpInfo, showCtrlCopy, - showHelpButton, showActionButton, - actionButtonText, actionButtonCommand, - applicationImage, applicationPath, - contentAreaType, linkLabelCommand, - linkLaunchArgument, - linkAreaStart, linkAreaEnd); + using KryptonMessageBoxForm kmb = new KryptonMessageBoxForm(showOwner, text, caption, buttons, icon, + defaultButton, options, helpInfo, showCtrlCopy, showHelpButton, showActionButton, actionButtonText, + actionButtonCommand, applicationImage, applicationPath, contentAreaType, linkLabelCommand, + linkLaunchArgument, linkAreaStart, linkAreaEnd); kmb.StartPosition = showOwner == null ? FormStartPosition.CenterScreen : FormStartPosition.CenterParent; return kmb.ShowDialog(showOwner); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMonthCalendar.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMonthCalendar.cs index 152e18bc4..0ebc29f1c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMonthCalendar.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonMonthCalendar.cs @@ -73,91 +73,91 @@ public class KryptonMonthCalendar : VisualSimpleBase, /// [Category(@"Action")] [Description(@"Occurs when the selected date changes.")] - public event DateRangeEventHandler DateChanged; + public event DateRangeEventHandler? DateChanged; /// /// Occurs when the selected start date changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the selected start date changes.")] - public event EventHandler SelectionStartChanged; + public event EventHandler? SelectionStartChanged; /// /// Occurs when the selected end date changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the selected end date changes.")] - public event EventHandler SelectionEndChanged; + public event EventHandler? SelectionEndChanged; /// /// Occurs when the control is clicked. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler Click; + public new event EventHandler? Click; /// /// Occurs when the control is double clicked. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler DoubleClick; + public new event EventHandler? DoubleClick; /// /// Occurs when the text value changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler TextChanged; + public new event EventHandler? TextChanged; /// /// Occurs when the foreground color value changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler ForeColorChanged; + public new event EventHandler? ForeColorChanged; /// /// Occurs when the font value changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler FontChanged; + public new event EventHandler? FontChanged; /// /// Occurs when the background image value changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageChanged; + public new event EventHandler? BackgroundImageChanged; /// /// Occurs when the background image layout value changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageLayoutChanged; + public new event EventHandler? BackgroundImageLayoutChanged; /// /// Occurs when the background color value changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackColorChanged; + public new event EventHandler? BackColorChanged; /// /// Occurs when the padding value changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler PaddingChanged; + public new event EventHandler? PaddingChanged; /// /// Occurs when the control needs to paint. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event PaintEventHandler Paint; + public new event PaintEventHandler? Paint; #endregion #region Identity @@ -719,7 +719,7 @@ public DateTime SelectionEnd [Bindable(true)] public SelectionRange SelectionRange { - get => new(SelectionStart, SelectionEnd); + get => new SelectionRange(SelectionStart, SelectionEnd); set => SetSelectionRange(value.Start, value.End); } @@ -1710,7 +1710,7 @@ private DateTime EffectiveMinDate(DateTime minDate) private void AdjustSize(ref int width, ref int height) { - using ViewLayoutContext context = new(this, Renderer); + using ViewLayoutContext context = new ViewLayoutContext(this, Renderer); // Ask back/border the size it requires Size backBorderSize = _drawDocker.GetNonChildSize(context); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonNumericUpDown.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonNumericUpDown.cs index 7c157b221..e75e28504 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonNumericUpDown.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonNumericUpDown.cs @@ -42,12 +42,12 @@ private class InternalNumericUpDown : NumericUpDown /// /// Occurs when the mouse enters the InternalTextBox. /// - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the InternalTextBox. /// - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -144,7 +144,7 @@ protected override void WndProc(ref Message m) if (_kryptonNumericUpDown.KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) @@ -204,12 +204,12 @@ private class SubclassEdit : NativeWindow /// /// Occurs when the mouse enters the InternalNumericUpDown. /// - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the InternalNumericUpDown. /// - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -320,7 +320,7 @@ protected override void WndProc(ref Message m) // Mouse is over the control if (!MouseOver) { - PI.TRACKMOUSEEVENTS tme = new() + PI.TRACKMOUSEEVENTS tme = new PI.TRACKMOUSEEVENTS { // This structure needs to know its own size in bytes @@ -345,7 +345,7 @@ protected override void WndProc(ref Message m) case PI.WM_.PRINTCLIENT: case PI.WM_.PAINT: { - PI.PAINTSTRUCT ps = new(); + PI.PAINTSTRUCT ps = new PI.PAINTSTRUCT(); // Do we need to BeginPaint or just take the given HDC? IntPtr hdc = m.WParam == IntPtr.Zero ? PI.BeginPaint(Handle, ref ps) : m.WParam; @@ -362,7 +362,7 @@ protected override void WndProc(ref Message m) PaletteInputControlTripleStates states = NumericUpDown.GetTripleState(); // Drawn entire client area in the background color - using (SolidBrush backBrush = new(states.PaletteBack.GetBackColor1(state))) + using (SolidBrush backBrush = new SolidBrush(states.PaletteBack.GetBackColor1(state))) { g.FillRectangle(backBrush, new Rectangle(rect.left, rect.top, rect.right - rect.left, @@ -388,8 +388,8 @@ protected override void WndProc(ref Message m) // Got ot deal with culture formatting, and also the override to include `ThousandsSeparator` var textInvariantAsRequested = _internalNumericUpDown.Value.ToString( - 'F' + _internalNumericUpDown.DecimalPlaces.ToString(CultureInfo - .InvariantCulture), CultureInfo.CurrentCulture); + $"F{_internalNumericUpDown.DecimalPlaces.ToString(CultureInfo + .InvariantCulture)}", CultureInfo.CurrentCulture); var textInvariantAsTrimmed = _internalNumericUpDown.Value.ToString(@"0.#########################", CultureInfo.InvariantCulture); @@ -428,7 +428,7 @@ protected override void WndProc(ref Message m) if (NumericUpDown.KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) @@ -561,14 +561,14 @@ protected override void WndProc(ref Message m) case PI.WM_.PRINTCLIENT: case PI.WM_.PAINT: { - PI.PAINTSTRUCT ps = new(); + PI.PAINTSTRUCT ps = new PI.PAINTSTRUCT(); // Do we need to BeginPaint or just take the given HDC? IntPtr hdc = m.WParam == IntPtr.Zero ? PI.BeginPaint(Handle, ref ps) : m.WParam; // Grab the client area of the control PI.GetClientRect(Handle, out PI.RECT rect); - Rectangle clientRect = new(rect.left, rect.top, rect.right - rect.left, + Rectangle clientRect = new Rectangle(rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top); try @@ -589,7 +589,7 @@ protected override void WndProc(ref Message m) using Graphics g = Graphics.FromHdc(_screenDC); // Drawn entire client area in the background color using (SolidBrush backBrush = - new(NumericUpDown.NumericUpDown.BackColor)) + new SolidBrush(NumericUpDown.NumericUpDown.BackColor)) { g.FillRectangle(backBrush, clientRect); } @@ -650,12 +650,14 @@ private void DrawUpDownButtons(Graphics g, Rectangle clientRect) _palette.SetStyles(NumericUpDown.UpDownButtonStyle); // Find button rectangles - Rectangle upRect = new(clientRect.X, clientRect.Y, clientRect.Width, clientRect.Height / 2); - Rectangle downRect = new(clientRect.X, upRect.Bottom, clientRect.Width, clientRect.Bottom - upRect.Bottom); + Rectangle upRect = new Rectangle(clientRect.X, clientRect.Y, clientRect.Width, clientRect.Height / 2); + Rectangle downRect = new Rectangle(clientRect.X, upRect.Bottom, clientRect.Width, + clientRect.Bottom - upRect.Bottom); // Position and draw the up/down buttons - using ViewLayoutContext layoutContext = new(NumericUpDown, NumericUpDown.Renderer); - using RenderContext renderContext = new(NumericUpDown, g, clientRect, NumericUpDown.Renderer); + using ViewLayoutContext layoutContext = new ViewLayoutContext(NumericUpDown, NumericUpDown.Renderer); + using RenderContext renderContext = + new RenderContext(NumericUpDown, g, clientRect, NumericUpDown.Renderer); // Up button layoutContext.DisplayRectangle = upRect; _viewButton.ElementState = ButtonElementState(upRect); @@ -749,14 +751,14 @@ public NumericUpDownButtonSpecCollection(KryptonNumericUpDown owner) /// [Description(@"Occurs when the value of the Value property changes.")] [Category(@"Action")] - public event EventHandler ValueChanged; + public event EventHandler? ValueChanged; /// /// Occurs when the value of the TextChanged property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler TextChanged; + public new event EventHandler? TextChanged; /// /// Occurs when the mouse enters the control. @@ -764,7 +766,7 @@ public NumericUpDownButtonSpecCollection(KryptonNumericUpDown owner) [Description(@"Raises the TrackMouseEnter event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the control. @@ -772,42 +774,42 @@ public NumericUpDownButtonSpecCollection(KryptonNumericUpDown owner) [Description(@"Raises the TrackMouseLeave event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; /// /// Occurs when the value of the BackColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackColorChanged; + public new event EventHandler? BackColorChanged; /// /// Occurs when the value of the BackgroundImage property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageChanged; + public new event EventHandler? BackgroundImageChanged; /// /// Occurs when the value of the BackgroundImageLayout property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageLayoutChanged; + public new event EventHandler? BackgroundImageLayoutChanged; /// /// Occurs when the value of the ForeColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler ForeColorChanged; + public new event EventHandler? ForeColorChanged; /// /// Occurs when the value of the PaddingChanged property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler PaddingChanged; + public new event EventHandler? PaddingChanged; #endregion #region Identity @@ -1829,7 +1831,7 @@ protected override void SetBoundsCore(int x, int y, /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(120, PreferredHeight); + protected override Size DefaultSize => new Size(120, PreferredHeight); /// /// Processes a notification from palette storage of a paint and optional layout required. @@ -2095,7 +2097,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(Redirector, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(Redirector, buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonOpenFileDialog.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonOpenFileDialog.cs index 5913fc47c..25781cb0b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonOpenFileDialog.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonOpenFileDialog.cs @@ -20,7 +20,7 @@ namespace Krypton.Toolkit [ToolboxItem(true)] public class KryptonOpenFileDialog : FileDialogWrapper, IDisposable { - private readonly OpenFileDialog _internalOpenFileDialog = new();// { AutoUpgradeEnabled = true }; + private readonly OpenFileDialog _internalOpenFileDialog = new OpenFileDialog();// { AutoUpgradeEnabled = true }; /// protected override DialogResult ShowActualDialog(IWin32Window? owner) => _internalOpenFileDialog.ShowDialog(owner); @@ -175,7 +175,7 @@ public override bool ValidateNames } /// - public override event CancelEventHandler FileOk + public override event CancelEventHandler? FileOk { add => _internalOpenFileDialog.FileOk += value; remove => _internalOpenFileDialog.FileOk -= value; @@ -197,7 +197,7 @@ public override void Reset() /// The file name and extension for the file selected in the dialog box. The file name does not include the path. The default value is an empty string. [Browsable(false)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public string SafeFileName => _internalOpenFileDialog.SafeFileName!; + public string SafeFileName => _internalOpenFileDialog.SafeFileName; /// Gets an array of file names and extensions for all the selected files in the dialog box. The file names do not include the path. /// An array of file names and extensions for all the selected files in the dialog box. The file names do not include the path. If no files are selected, an empty array is returned. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonPrintDialog.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonPrintDialog.cs index 5e1160e48..5e58ae100 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonPrintDialog.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonPrintDialog.cs @@ -223,7 +223,7 @@ public PrintDocument? Document } } - private PageSettings? PageSettings => Document is null ? PrinterSettings!.DefaultPageSettings : Document.DefaultPageSettings; + private PageSettings? PageSettings => Document is null ? PrinterSettings.DefaultPageSettings : Document.DefaultPageSettings; /// /// Gets or sets the Drawing.Printing.PrinterSettings the @@ -236,7 +236,7 @@ public PrintDocument? Document [AllowNull] public PrinterSettings PrinterSettings { - get => settings ??= new(); + get => settings ??= new PrinterSettings(); set { if (value != PrinterSettings) @@ -398,7 +398,7 @@ private bool ShowPrintDialog(IntPtr hwndOwner, PRINTDLG data) data.nMinPage = 0; data.nMaxPage = 9999; data.Flags = GetFlags(); - data.nCopies = PrinterSettings!.Copies; + data.nCopies = PrinterSettings.Copies; data.hwndOwner = hwndOwner; // ReSharper disable once RedundantDelegateCreation diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonRadioButton.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonRadioButton.cs index b9b50a009..7ae987555 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonRadioButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonRadioButton.cs @@ -49,7 +49,7 @@ public class KryptonRadioButton : VisualSimpleBase [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler DoubleClick; + public new event EventHandler? DoubleClick; /// /// Occurs when the control is mouse double clicked with the mouse. @@ -57,7 +57,7 @@ public class KryptonRadioButton : VisualSimpleBase [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler MouseDoubleClick; + public new event EventHandler? MouseDoubleClick; /// /// Occurs when the value of the ImeMode property is changed. @@ -65,14 +65,14 @@ public class KryptonRadioButton : VisualSimpleBase [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler ImeModeChanged; + public new event EventHandler? ImeModeChanged; /// /// Occurs when the value of the Checked property has changed. /// [Category(@"Misc")] [Description(@"Occurs whenever the Checked property has changed.")] - public event EventHandler CheckedChanged; + public event EventHandler? CheckedChanged; #endregion #region Identity @@ -629,7 +629,7 @@ protected override void OnRightToLeftChanged(EventArgs e) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(90, 25); + protected override Size DefaultSize => new Size(90, 25); /// /// Work out if this control needs to paint transparent areas. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonRichTextBox.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonRichTextBox.cs index b5d531032..0c96ecd8b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonRichTextBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonRichTextBox.cs @@ -44,12 +44,12 @@ private class InternalRichTextBox : RichTextBox /// /// Occurs when the mouse enters the InternalComboBox. /// - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the InternalComboBox. /// - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -131,7 +131,7 @@ public int Print(int charFrom, int charTo, Graphics gr, Rectangle bounds) fmtRange.rc = rectToPrint; fmtRange.rcPage = rectPage; - IntPtr wparam = new(1); + IntPtr wparam = new IntPtr(1); //Get the pointer to the FORMATRANGE structure in memory IntPtr lparam = Marshal.AllocCoTaskMem(Marshal.SizeOf(fmtRange)); @@ -199,7 +199,7 @@ protected override void WndProc(ref Message m) if (_kryptonRichTextBox.KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) @@ -220,10 +220,10 @@ protected override void WndProc(ref Message m) && (_kryptonRichTextBox.TextLength == 0) ) { - PI.PAINTSTRUCT ps = new(); + PI.PAINTSTRUCT ps = new PI.PAINTSTRUCT(); // Do we need to BeginPaint or just take the given HDC? IntPtr hdc = m.WParam == IntPtr.Zero ? PI.BeginPaint(Handle, ref ps) : m.WParam; - using (Graphics? g = Graphics.FromHdc(hdc)) + using (Graphics g = Graphics.FromHdc(hdc)) { // Grab the client area of the control PI.GetClientRect(Handle, out PI.RECT rect); @@ -236,7 +236,7 @@ protected override void WndProc(ref Message m) var states = _kryptonRichTextBox.GetTripleState(); // Drawn entire client area in the background color - using SolidBrush backBrush = new(states.PaletteBack.GetBackColor1(state)); + using SolidBrush backBrush = new SolidBrush(states.PaletteBack.GetBackColor1(state)); // Go perform the drawing of the CueHint _kryptonRichTextBox.CueHint.PerformPaint(_kryptonRichTextBox, g, rect, backBrush); } @@ -326,70 +326,70 @@ public RichTextBoxButtonSpecCollection(KryptonRichTextBox owner) /// [Description(@"Occurs when the value of the AcceptsTab property changes.")] [Category(@"Property Changed")] - public event EventHandler AcceptsTabChanged; + public event EventHandler? AcceptsTabChanged; /// /// Occurs when the value of the HideSelection property changes. /// [Description(@"Occurs when the value of the HideSelection property changes.")] [Category(@"Property Changed")] - public event EventHandler HideSelectionChanged; + public event EventHandler? HideSelectionChanged; /// /// Occurs when the value of the Modified property changes. /// [Description(@"Occurs when the value of the Modified property changes.")] [Category(@"Property Changed")] - public event EventHandler ModifiedChanged; + public event EventHandler? ModifiedChanged; /// /// Occurs when the value of the Multiline property changes. /// [Description(@"Occurs when the value of the Multiline property changes.")] [Category(@"Property Changed")] - public event EventHandler MultilineChanged; + public event EventHandler? MultilineChanged; /// /// Occurs when the value of the ReadOnly property changes. /// [Description(@"Occurs when the value of the ReadOnly property changes.")] [Category(@"Property Changed")] - public event EventHandler ReadOnlyChanged; + public event EventHandler? ReadOnlyChanged; /// /// Occurs when the current selection has changed. /// [Description(@"Occurs when the current selection has changed.")] [Category(@"Behavior")] - public event EventHandler SelectionChanged; + public event EventHandler? SelectionChanged; /// /// Occurs when the user takes an action that would change a protected range of text. /// [Description(@"Occurs when the user takes an action that would change a protected range of text.")] [Category(@"Behavior")] - public event EventHandler Protected; + public event EventHandler? Protected; /// /// Occurs when a hyperlink in the text is clicked. /// [Description(@"Occurs when a hyperlink in the text is clicked.")] [Category(@"Behavior")] - public event LinkClickedEventHandler LinkClicked; + public event LinkClickedEventHandler? LinkClicked; /// /// Occurs when the horizontal scroll bar is clicked. /// [Description(@"Occurs when the horizontal scroll bar is clicked.")] [Category(@"Behavior")] - public event EventHandler HScroll; + public event EventHandler? HScroll; /// /// Occurs when the vertical scroll bar is clicked. /// [Description(@"Occurs when the vertical scroll bar is clicked.")] [Category(@"Behavior")] - public event EventHandler VScroll; + public event EventHandler? VScroll; /// /// Occurs when the mouse enters the control. @@ -397,7 +397,7 @@ public RichTextBoxButtonSpecCollection(KryptonRichTextBox owner) [Description(@"Raises the TrackMouseEnter event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the control. @@ -405,35 +405,35 @@ public RichTextBoxButtonSpecCollection(KryptonRichTextBox owner) [Description(@"Raises the TrackMouseLeave event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; /// /// Occurs when the value of the BackColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackColorChanged; + public new event EventHandler? BackColorChanged; /// /// Occurs when the value of the BackgroundImage property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageChanged; + public new event EventHandler? BackgroundImageChanged; /// /// Occurs when the value of the BackgroundImageLayout property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageLayoutChanged; + public new event EventHandler? BackgroundImageLayoutChanged; /// /// Occurs when the value of the ForeColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler ForeColorChanged; + public new event EventHandler? ForeColorChanged; #endregion #region Identity @@ -2007,7 +2007,7 @@ protected override void OnGotFocus(EventArgs e) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(100, 96); + protected override Size DefaultSize => new Size(100, 96); /// /// Processes a notification from palette storage of a paint and optional layout required. @@ -2240,7 +2240,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(Redirector, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(Redirector, buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSaveFileDialog.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSaveFileDialog.cs index a56f952c9..fc5242fb5 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSaveFileDialog.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSaveFileDialog.cs @@ -20,7 +20,7 @@ namespace Krypton.Toolkit [ToolboxItem(true)] public class KryptonSaveFileDialog : FileSaveDialogWrapper, IDisposable { - private readonly SaveFileDialog _internalSaveFileDialog = new();// { AutoUpgradeEnabled = true }; + private readonly SaveFileDialog _internalSaveFileDialog = new SaveFileDialog();// { AutoUpgradeEnabled = true }; /// protected override DialogResult ShowActualDialog(IWin32Window? owner) => _internalSaveFileDialog.ShowDialog(owner); @@ -193,7 +193,7 @@ public override bool ValidateNames } /// - public override event CancelEventHandler FileOk + public override event CancelEventHandler? FileOk { add => _internalSaveFileDialog.FileOk += value; remove => _internalSaveFileDialog.FileOk -= value; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonScrollBar.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonScrollBar.cs index 4a161081f..6d9acbb0d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonScrollBar.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonScrollBar.cs @@ -11,6 +11,8 @@ #endregion // ReSharper disable CompareOfFloatsByEqualityOperator +using Timer = System.Windows.Forms.Timer; + namespace Krypton.Toolkit { /// @@ -71,7 +73,7 @@ public class KryptonScrollBar : Control /// /// The progress timer for moving the thumb. /// - private readonly System.Windows.Forms.Timer _progressTimer = new(); + private readonly System.Windows.Forms.Timer _progressTimer = new Timer(); private Color _borderColor = Color.FromArgb(93, 140, 201); private Color _disabledBorderColor = Color.Gray; @@ -141,7 +143,7 @@ public KryptonScrollBar() /// [Category(@"Behavior")] [Description(@"Is raised, when the scrollbar was scrolled.")] - public event ScrollEventHandler Scroll; + public event ScrollEventHandler? Scroll; #endregion #region Public @@ -588,8 +590,7 @@ protected override void OnPaint(PaintEventArgs e) } // draw border - using Pen pen = new( - Enabled ? ScrollBarKryptonRenderer.borderColours[0] : _disabledBorderColor); + using Pen pen = new Pen(Enabled ? ScrollBarKryptonRenderer.borderColours[0] : _disabledBorderColor); e.Graphics.DrawRectangle(pen, 0, 0, Width - 1, Height - 1); } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSeparator.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSeparator.cs index 614d0e621..f992d08b7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSeparator.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSeparator.cs @@ -44,7 +44,7 @@ public class KryptonSeparator : VisualControl, [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler AutoSizeChanged; + public new event EventHandler? AutoSizeChanged; /// /// Occurs when the value of the BackgroundImage property changes. @@ -52,7 +52,7 @@ public class KryptonSeparator : VisualControl, [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler BackgroundImageChanged; + public new event EventHandler? BackgroundImageChanged; /// /// Occurs when the value of the BackgroundImageLayout property changes. @@ -60,7 +60,7 @@ public class KryptonSeparator : VisualControl, [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler BackgroundImageLayoutChanged; + public new event EventHandler? BackgroundImageLayoutChanged; /// /// Occurs when the value of the ControlAdded property changes. @@ -68,7 +68,7 @@ public class KryptonSeparator : VisualControl, [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event ControlEventHandler ControlAdded; + public new event ControlEventHandler? ControlAdded; /// /// Occurs when the value of the ControlRemoved property changes. @@ -76,35 +76,35 @@ public class KryptonSeparator : VisualControl, [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event ControlEventHandler ControlRemoved; + public new event ControlEventHandler? ControlRemoved; /// /// Occurs when the separator is about to be moved and requests the rectangle of allowed movement. /// [Category(@"Behavior")] [Description(@"Occurs when the separator is about to be moved and requests the rectangle of allowed movement.")] - public event EventHandler SplitterMoveRect; + public event EventHandler? SplitterMoveRect; /// /// Occurs when the separator move finishes and a move has occurred. /// [Category(@"Behavior")] [Description(@"Occurs when the separator move finishes and a move has occurred.")] - public event SplitterEventHandler SplitterMoved; + public event SplitterEventHandler? SplitterMoved; /// /// Occurs when the separator move finishes and a move has not occurred. /// [Category(@"Behavior")] [Description(@"Occurs when the separator move finishes and a move has not occurred.")] - public event EventHandler SplitterNotMoved; + public event EventHandler? SplitterNotMoved; /// /// Occurs when the separator is currently in the process of moving. /// [Category(@"Behavior")] [Description(@"Occurs when the separator is currently in the process of moving.")] - public event SplitterCancelEventHandler SplitterMoving; + public event SplitterCancelEventHandler? SplitterMoving; #endregion #region Identity @@ -478,7 +478,7 @@ public Rectangle SeparatorMoveBox get { // Fire event to recover the rectangle of allowed separator movement - SplitterMoveRectMenuArgs args = new(Rectangle.Empty); + SplitterMoveRectMenuArgs args = new SplitterMoveRectMenuArgs(Rectangle.Empty); OnSplitterMoveRect(args); return Orientation == Orientation.Horizontal @@ -497,7 +497,7 @@ public Rectangle SeparatorMoveBox public bool SeparatorMoving(Point mouse, Point splitter) { // Fire the event that indicates the splitter is being moved - SplitterCancelEventArgs e = new(mouse.X, mouse.Y, splitter.X, splitter.Y); + SplitterCancelEventArgs e = new SplitterCancelEventArgs(mouse.X, mouse.Y, splitter.X, splitter.Y); OnSplitterMoving(e); // Tell caller if the movement should be cancelled or not @@ -513,7 +513,7 @@ public bool SeparatorMoving(Point mouse, Point splitter) public void SeparatorMoved(Point mouse, Point splitter) { // Fire the event that indicates the splitter has finished being moved - SplitterEventArgs e = new(mouse.X, mouse.Y, splitter.X, splitter.Y); + SplitterEventArgs e = new SplitterEventArgs(mouse.X, mouse.Y, splitter.X, splitter.Y); OnSplitterMoved(e); _redrawTimer?.Start(); @@ -577,7 +577,7 @@ public void SeparatorNotMoved() /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(5, 5); + protected override Size DefaultSize => new Size(5, 5); /// /// Raises the Initialized event. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSplitContainer.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSplitContainer.cs index 20711196b..3ec9ec456 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSplitContainer.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSplitContainer.cs @@ -53,7 +53,7 @@ public class KryptonSplitContainer : VisualControlContainment, [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler AutoSizeChanged; + public new event EventHandler? AutoSizeChanged; /// /// Occurs when the value of the BackgroundImage property changes. @@ -61,7 +61,7 @@ public class KryptonSplitContainer : VisualControlContainment, [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler BackgroundImageChanged; + public new event EventHandler? BackgroundImageChanged; /// /// Occurs when the value of the BackgroundImageLayout property changes. @@ -69,7 +69,7 @@ public class KryptonSplitContainer : VisualControlContainment, [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler BackgroundImageLayoutChanged; + public new event EventHandler? BackgroundImageLayoutChanged; /// /// Occurs when the value of the ControlAdded property changes. @@ -77,7 +77,7 @@ public class KryptonSplitContainer : VisualControlContainment, [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event ControlEventHandler ControlAdded; + public new event ControlEventHandler? ControlAdded; /// /// Occurs when the value of the ControlRemoved property changes. @@ -85,21 +85,21 @@ public class KryptonSplitContainer : VisualControlContainment, [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event ControlEventHandler ControlRemoved; + public new event ControlEventHandler? ControlRemoved; /// /// Occurs when the splitter control is moved. /// [Category(@"Behavior")] [Description(@"Occurs when the splitter is done being moved.")] - public event SplitterEventHandler SplitterMoved; + public event SplitterEventHandler? SplitterMoved; /// /// Occurs when the splitter control is in the process of moving. /// [Category(@"Behavior")] [Description(@"Occurs when the splitter is being moved.")] - public event SplitterCancelEventHandler SplitterMoving; + public event SplitterCancelEventHandler? SplitterMoving; #endregion #region Identity @@ -189,8 +189,8 @@ protected override void Dispose(bool disposing) set { base.Name = value; - Panel1.Name = value + ".Panel1"; - Panel2.Name = value + ".Panel2"; + Panel1.Name = $"{value}.Panel1"; + Panel2.Name = $"{value}.Panel2"; } } @@ -595,7 +595,7 @@ public int SplitterDistance // Limit check against the orientation direction if (Orientation == Orientation.Vertical) { - // Enfore the minimum size of the second second + // Enforce the minimum size of the second second if ((value + SplitterWidth) > (Width - Panel2MinSize)) { value = Width - Panel2MinSize - SplitterWidth; @@ -609,7 +609,7 @@ public int SplitterDistance } else { - // Enfore the minimum size of the second second + // Enforce the minimum size of the second second if ((value + SplitterWidth) > (Height - Panel2MinSize)) { value = Height - Panel2MinSize - SplitterWidth; @@ -890,7 +890,7 @@ public bool SeparatorMoving(Point mouse, Point splitter) } // Fire the event that indicates the splitter is being moved - SplitterCancelEventArgs e = new(mouse.X, mouse.Y, splitter.X, splitter.Y); + SplitterCancelEventArgs e = new SplitterCancelEventArgs(mouse.X, mouse.Y, splitter.X, splitter.Y); OnSplitterMoving(e); // Tell caller if the movement should be cancelled or not @@ -916,7 +916,7 @@ public void SeparatorMoved(Point mouse, Point splitter) } // Fire the event that indicates the splitter has finished being moved - SplitterEventArgs e = new(mouse.X, mouse.Y, splitter.X, splitter.Y); + SplitterEventArgs e = new SplitterEventArgs(mouse.X, mouse.Y, splitter.X, splitter.Y); OnSplitterMoved(e); } @@ -1076,7 +1076,7 @@ protected void ForceControlLayout() /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(150, 150); + protected override Size DefaultSize => new Size(150, 150); /// /// Raises the Initialized event. @@ -1251,7 +1251,7 @@ protected override void OnLayout(LayoutEventArgs levent) // Find actual pixel width of first panel but limited to maximum allowed var panel1Width = Math.Min(SplitterDistance, panelMax); - // Enfore the minimum panel1 width + // Enforce the minimum panel1 width panel1Width = Math.Max(Panel1MinSize, panel1Width); // Size the panels @@ -1321,7 +1321,7 @@ protected override void OnLayout(LayoutEventArgs levent) // Find actual pixel height of first panel but limited to maximum allowed var panel1Height = Math.Min(SplitterDistance, panel1Max); - // Enfore the minimum panel1 height + // Enforce the minimum panel1 height panel1Height = Math.Max(Panel1MinSize, panel1Height); // Size the panels diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSplitterPanel.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSplitterPanel.cs index 4b78f5db4..f7a6ac001 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSplitterPanel.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonSplitterPanel.cs @@ -30,7 +30,7 @@ public sealed class KryptonSplitterPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler AutoSizeChanged; + public new event EventHandler? AutoSizeChanged; /// /// Occurs when the value of the Dock property changes. @@ -38,7 +38,7 @@ public sealed class KryptonSplitterPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler DockChanged; + public new event EventHandler? DockChanged; /// /// Occurs when the value of the Location property changes. @@ -46,7 +46,7 @@ public sealed class KryptonSplitterPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler LocationChanged; + public new event EventHandler? LocationChanged; /// /// Occurs when the value of the TabIndex property changes. @@ -54,7 +54,7 @@ public sealed class KryptonSplitterPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler TabIndexChanged; + public new event EventHandler? TabIndexChanged; /// /// Occurs when the value of the TabStop property changes. @@ -62,7 +62,7 @@ public sealed class KryptonSplitterPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler TabStopChanged; + public new event EventHandler? TabStopChanged; /// /// Occurs when the value of the Visible property changes. @@ -70,7 +70,7 @@ public sealed class KryptonSplitterPanel : KryptonPanel [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public new event EventHandler VisibleChanged; + public new event EventHandler? VisibleChanged; #endregion #region Identity @@ -302,7 +302,7 @@ public override Size MinimumSize /// /// Gets the space, in pixels, that is specified by default between controls. /// - protected override Padding DefaultMargin => new(0, 0, 0, 0); + protected override Padding DefaultMargin => new Padding(0, 0, 0, 0); /// /// Raises the AutoSizeChanged event. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTableLayoutPanel.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTableLayoutPanel.cs index 0a7420045..252c964a3 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTableLayoutPanel.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTableLayoutPanel.cs @@ -313,7 +313,7 @@ protected override void WndProc(ref Message m) if (KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTaskDialog.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTaskDialog.cs index 7f7ddf2df..de8de5536 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTaskDialog.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTaskDialog.cs @@ -49,14 +49,14 @@ public class KryptonTaskDialog : Component, INotifyPropertyChanged /// [Category(@"Action")] [Description(@"Occurs when the users clicks the footer hyperlink.")] - public event EventHandler FooterHyperlinkClicked; + public event EventHandler? FooterHyperlinkClicked; /// /// Occurs when a property has changed value. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity @@ -507,7 +507,7 @@ public static DialogResult Show(string windowTitle, TaskDialogButtons commonButtons) { // Create a temporary task dialog for storing definition whilst showing - using KryptonTaskDialog taskDialog = new(); + using KryptonTaskDialog taskDialog = new KryptonTaskDialog(); // Store incoming values taskDialog.WindowTitle = windowTitle; taskDialog.MainInstruction = mainInstruction; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTextBox.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTextBox.cs index 7befa3a96..fe5ccf903 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTextBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTextBox.cs @@ -133,7 +133,7 @@ protected override void WndProc(ref Message m) case PI.WM_.PRINTCLIENT: case PI.WM_.PAINT: { - PI.PAINTSTRUCT ps = new(); + PI.PAINTSTRUCT ps = new PI.PAINTSTRUCT(); // Do we need to BeginPaint or just take the given HDC? IntPtr hdc = m.WParam == IntPtr.Zero ? PI.BeginPaint(Handle, ref ps) : m.WParam; @@ -153,12 +153,12 @@ protected override void WndProc(ref Message m) ) { // Go perform the drawing of the CueHint - using SolidBrush backBrush = new(BackColor); + using SolidBrush backBrush = new SolidBrush(BackColor); _kryptonTextBox.CueHint.PerformPaint(_kryptonTextBox, g, rect, backBrush); } else { - using (SolidBrush backBrush = new(BackColor)) + using (SolidBrush backBrush = new SolidBrush(BackColor)) { // Draw entire client area in the background color g.FillRectangle(backBrush, @@ -192,7 +192,7 @@ protected override void WndProc(ref Message m) PaletteState.Disabled)); // Define the string formatting requirements - StringFormat stringFormat = new() + StringFormat stringFormat = new StringFormat { Trimming = StringTrimming.None, LineAlignment = StringAlignment.Near @@ -227,7 +227,7 @@ protected override void WndProc(ref Message m) // Draw using a solid brush try { - using SolidBrush foreBrush = new(ForeColor); + using SolidBrush foreBrush = new SolidBrush(ForeColor); g.DrawString(drawString, Font, foreBrush, new RectangleF(rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top), @@ -235,7 +235,7 @@ protected override void WndProc(ref Message m) } catch (ArgumentException) { - using SolidBrush foreBrush = new(ForeColor); + using SolidBrush foreBrush = new SolidBrush(ForeColor); g.DrawString(drawString, _kryptonTextBox.GetTripleState().PaletteContent? .GetContentShortTextFont(PaletteState.Disabled), foreBrush, @@ -261,7 +261,7 @@ protected override void WndProc(ref Message m) if (_kryptonTextBox.KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) @@ -289,10 +289,7 @@ protected override void WndProc(ref Message m) /// An EventArgs containing the event data. protected virtual void OnTrackMouseEnter(EventArgs e) { - if (TrackMouseEnter != null) - { - TrackMouseEnter.Invoke(this, e); - } + TrackMouseEnter?.Invoke(this, e); } /// @@ -301,10 +298,7 @@ protected virtual void OnTrackMouseEnter(EventArgs e) /// An EventArgs containing the event data. protected virtual void OnTrackMouseLeave(EventArgs e) { - if (TrackMouseLeave != null) - { - TrackMouseLeave.Invoke(this, e); - } + TrackMouseLeave?.Invoke(this, e); } #endregion } @@ -348,7 +342,7 @@ public TextBoxButtonSpecCollection(KryptonTextBox owner) private int _cachedHeight; private bool _multilineStringEditor; private bool _showEllipsisButton; - private bool _isInAlphaNumericMode; + //private bool _isInAlphaNumericMode; private readonly ButtonSpecAny _editorButton; private float _cornerRoundingRadius; @@ -545,7 +539,7 @@ public KryptonTextBox() _cornerRoundingRadius = GlobalStaticValues.PRIMARY_CORNER_ROUNDING_VALUE; - _isInAlphaNumericMode = false; + //_isInAlphaNumericMode = false; _showEllipsisButton = false; } @@ -1475,10 +1469,7 @@ protected void SetMultilineStringEditor(bool value) /// An EventArgs containing the event data. protected virtual void OnAcceptsTabChanged(EventArgs e) { - if (AcceptsTabChanged != null) - { - AcceptsTabChanged.Invoke(this, e); - } + AcceptsTabChanged?.Invoke(this, e); } /// @@ -1487,10 +1478,7 @@ protected virtual void OnAcceptsTabChanged(EventArgs e) /// An EventArgs containing the event data. protected virtual void OnTextAlignChanged(EventArgs e) { - if (TextAlignChanged != null) - { - TextAlignChanged.Invoke(this, e); - } + TextAlignChanged?.Invoke(this, e); } /// @@ -1499,10 +1487,7 @@ protected virtual void OnTextAlignChanged(EventArgs e) /// An EventArgs that contains the event data. protected virtual void OnHideSelectionChanged(EventArgs e) { - if (HideSelectionChanged != null) - { - HideSelectionChanged.Invoke(this, e); - } + HideSelectionChanged?.Invoke(this, e); } /// @@ -1511,10 +1496,7 @@ protected virtual void OnHideSelectionChanged(EventArgs e) /// An EventArgs that contains the event data. protected virtual void OnModifiedChanged(EventArgs e) { - if (ModifiedChanged != null) - { - ModifiedChanged.Invoke(this, e); - } + ModifiedChanged?.Invoke(this, e); } /// @@ -1523,10 +1505,7 @@ protected virtual void OnModifiedChanged(EventArgs e) /// An EventArgs that contains the event data. protected virtual void OnMultilineChanged(EventArgs e) { - if (MultilineChanged != null) - { - MultilineChanged.Invoke(this, e); - } + MultilineChanged?.Invoke(this, e); } /// @@ -1535,10 +1514,7 @@ protected virtual void OnMultilineChanged(EventArgs e) /// An EventArgs that contains the event data. protected virtual void OnReadOnlyChanged(EventArgs e) { - if (ReadOnlyChanged != null) - { - ReadOnlyChanged.Invoke(this, e); - } + ReadOnlyChanged?.Invoke(this, e); } /// @@ -1548,10 +1524,7 @@ protected virtual void OnReadOnlyChanged(EventArgs e) [Description(@"Raises the TrackMouseEnter event.")] protected virtual void OnTrackMouseEnter(EventArgs e) { - if (TrackMouseEnter != null) - { - TrackMouseEnter.Invoke(this, e); - } + TrackMouseEnter?.Invoke(this, e); } /// @@ -1561,10 +1534,7 @@ protected virtual void OnTrackMouseEnter(EventArgs e) [Description(@"Raises the TrackMouseLeave event.")] protected virtual void OnTrackMouseLeave(EventArgs e) { - if (TrackMouseLeave != null) - { - TrackMouseLeave.Invoke(this, e); - } + TrackMouseLeave?.Invoke(this, e); } // ReSharper restore VirtualMemberNeverOverridden.Global #endregion @@ -1634,10 +1604,7 @@ protected override void OnGotFocus(EventArgs e) /// An EventArgs that contains the event data. protected override void OnBackColorChanged(EventArgs e) { - if (BackColorChanged != null) - { - BackColorChanged.Invoke(this, e); - } + BackColorChanged?.Invoke(this, e); } /// @@ -1646,10 +1613,7 @@ protected override void OnBackColorChanged(EventArgs e) /// An EventArgs that contains the event data. protected override void OnBackgroundImageChanged(EventArgs e) { - if (BackgroundImageChanged != null) - { - BackgroundImageChanged.Invoke(this, e); - } + BackgroundImageChanged?.Invoke(this, e); } /// @@ -1658,8 +1622,7 @@ protected override void OnBackgroundImageChanged(EventArgs e) /// An EventArgs that contains the event data. protected override void OnBackgroundImageLayoutChanged(EventArgs e) { - if (BackgroundImageLayoutChanged != null) - BackgroundImageLayoutChanged.Invoke(this, e); + BackgroundImageLayoutChanged?.Invoke(this, e); } /// @@ -1668,8 +1631,7 @@ protected override void OnBackgroundImageLayoutChanged(EventArgs e) /// An EventArgs that contains the event data. protected override void OnForeColorChanged(EventArgs e) { - if (ForeColorChanged != null) - ForeColorChanged.Invoke(this, e); + ForeColorChanged?.Invoke(this, e); } /// @@ -1786,7 +1748,7 @@ protected override void SetBoundsCore(int x, int y, /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(100, PreferredHeight); + protected override Size DefaultSize => new Size(100, PreferredHeight); /// /// Processes a notification from palette storage of a paint and optional layout required. @@ -1998,28 +1960,25 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) bool shadow = true; // Find the button spec associated with the tooltip request - if (_buttonManager != null) - { - ButtonSpec? buttonSpec = _buttonManager.ButtonSpecFromView(e.Target); + ButtonSpec? buttonSpec = _buttonManager?.ButtonSpecFromView(e.Target); - // If the tooltip is for a button spec - if (buttonSpec != null) + // If the tooltip is for a button spec + if (buttonSpec != null) + { + // Are we allowed to show page related tooltips + if (AllowButtonSpecToolTips) { - // Are we allowed to show page related tooltips - if (AllowButtonSpecToolTips) + // Create a helper object to provide tooltip values + if (Redirector != null) { - // Create a helper object to provide tooltip values - if (Redirector != null) - { - ButtonSpecToContent buttonSpecMapping = new(Redirector, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(Redirector, buttonSpec); - // Is there actually anything to show for the tooltip - if (buttonSpecMapping.HasContent) - { - sourceContent = buttonSpecMapping; - toolTipStyle = buttonSpec.ToolTipStyle; - shadow = buttonSpec.ToolTipShadow; - } + // Is there actually anything to show for the tooltip + if (buttonSpecMapping.HasContent) + { + sourceContent = buttonSpecMapping; + toolTipStyle = buttonSpec.ToolTipStyle; + shadow = buttonSpec.ToolTipShadow; } } } @@ -2057,10 +2016,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) // Remove any currently showing tooltip private void OnCancelToolTip(object sender, EventArgs e) { - if (_visualPopupToolTip != null) - { - _visualPopupToolTip.Dispose(); - } + _visualPopupToolTip?.Dispose(); } private void OnVisualPopupToolTipDisposed(object sender, EventArgs e) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonThemeComboBox.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonThemeComboBox.cs index 7d1077c2f..095f46f97 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonThemeComboBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonThemeComboBox.cs @@ -62,7 +62,7 @@ public KryptonManager Manager { get; - } = new(); + } = new KryptonManager(); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTrackBar.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTrackBar.cs index e71b1260e..f1ef39172 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTrackBar.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTrackBar.cs @@ -39,14 +39,14 @@ public class KryptonTrackBar : VisualSimpleBase /// [Category(@"Action")] [Description(@"Occurs when the value of the Value property changes.")] - public event EventHandler ValueChanged; + public event EventHandler? ValueChanged; /// /// Occurs when either a mouse or keyboard action moves the scroll box. /// [Category(@"Behavior")] [Description(@"Occurs when either a mouse or keyboard action moves the scroll box.")] - public event EventHandler Scroll; + public event EventHandler? Scroll; #endregion #region Identity @@ -508,7 +508,7 @@ public bool DrawBackground /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(150, 35); + protected override Size DefaultSize => new Size(150, 35); /// /// Raises the HandleCreated event. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTreeNode.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTreeNode.cs index 7152f4c4b..267b6a386 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTreeNode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTreeNode.cs @@ -31,7 +31,7 @@ public class KryptonTreeNode : TreeNode /// [Category(@"Property Changed")] [Description(@"Occurs when the value of property has changed.")] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTreeView.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTreeView.cs index 9a483e6c0..feda92f6f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTreeView.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonTreeView.cs @@ -44,12 +44,12 @@ private class InternalTreeView : TreeView /// /// Occurs when the mouse enters the InternalTreeView. /// - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the InternalTreeView. /// - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -155,7 +155,8 @@ protected override void OnLayout(LayoutEventArgs levent) base.OnLayout(levent); // Ask the panel to layout given our available size - using ViewLayoutContext context = new(_viewManager, this, _kryptonTreeView, _kryptonTreeView.Renderer); + using ViewLayoutContext context = + new ViewLayoutContext(_viewManager, this, _kryptonTreeView, _kryptonTreeView.Renderer); ViewDrawPanel.Layout(context); } @@ -226,7 +227,7 @@ protected override void WndProc(ref Message m) #region Private private void WmPaint(ref Message m) { - PI.PAINTSTRUCT ps = new(); + PI.PAINTSTRUCT ps = new PI.PAINTSTRUCT(); // Do we need to BeginPaint or just take the given HDC? IntPtr hdc = m.WParam == IntPtr.Zero ? PI.BeginPaint(Handle, ref ps) : m.WParam; @@ -249,16 +250,18 @@ private void WmPaint(ref Message m) PI.SelectObject(_screenDC, hBitmap); // Easier to draw using a graphics instance than a DC! - using (Graphics? g = Graphics.FromHdc(_screenDC)) + using (Graphics g = Graphics.FromHdc(_screenDC)) { // Ask the view element to layout in given space, needs this before a render call - using (ViewLayoutContext context = new(this, _kryptonTreeView.Renderer)) + using (ViewLayoutContext context = + new ViewLayoutContext(this, _kryptonTreeView.Renderer)) { context.DisplayRectangle = realRect; ViewDrawPanel.Layout(context); } - using (RenderContext context = new(this, _kryptonTreeView, g, realRect, _kryptonTreeView.Renderer)) + using (RenderContext context = new RenderContext(this, _kryptonTreeView, g, realRect, + _kryptonTreeView.Renderer)) { ViewDrawPanel.Render(context); } @@ -341,154 +344,154 @@ private void WmPaint(ref Message m) /// [Category(@"Behavior")] [Description(@"Occurs when a checkbox has been checked or unchecked.")] - public event TreeViewEventHandler AfterCheck; + public event TreeViewEventHandler? AfterCheck; /// /// Occurs when a node has been collapsed. /// [Category(@"Behavior")] [Description(@"Occurs when a node has been collapsed.")] - public event TreeViewEventHandler AfterCollapse; + public event TreeViewEventHandler? AfterCollapse; /// /// Occurs when a node has been expanded. /// [Category(@"Behavior")] [Description(@"Occurs when a node has been expanded.")] - public event TreeViewEventHandler AfterExpand; + public event TreeViewEventHandler? AfterExpand; /// /// Occurs when the text of node has been edited by the user. /// [Category(@"Behavior")] [Description(@"Occurs when the text of node has been edited by the user.")] - public event NodeLabelEditEventHandler AfterLabelEdit; + public event NodeLabelEditEventHandler? AfterLabelEdit; /// /// Occurs when the selected has been changed. /// [Category(@"Behavior")] [Description(@"Occurs when the selection has been changed.")] - public event TreeViewEventHandler AfterSelect; + public event TreeViewEventHandler? AfterSelect; /// /// Occurs when a checkbox is about to be checked or unchecked. /// [Category(@"Behavior")] [Description(@"Occurs when a checkbox is about to be checked or unchecked.")] - public event TreeViewCancelEventHandler BeforeCheck; + public event TreeViewCancelEventHandler? BeforeCheck; /// /// Occurs when a node is about to be collapsed. /// [Category(@"Behavior")] [Description(@"Occurs when a node is about to be collapsed.")] - public event TreeViewCancelEventHandler BeforeCollapse; + public event TreeViewCancelEventHandler? BeforeCollapse; /// /// Occurs when a node is about to be expanded. /// [Category(@"Behavior")] [Description(@"Occurs when a node is about to be expanded.")] - public event TreeViewCancelEventHandler BeforeExpand; + public event TreeViewCancelEventHandler? BeforeExpand; /// /// Occurs when the text of node is about to be edited by the user. /// [Category(@"Behavior")] [Description(@"Occurs when the text of node is about to be edited by the user.")] - public event NodeLabelEditEventHandler BeforeLabelEdit; + public event NodeLabelEditEventHandler? BeforeLabelEdit; /// /// Occurs when the selection is about to be changed. /// [Category(@"Behavior")] [Description(@"Occurs when the selection is about to be changed.")] - public event TreeViewCancelEventHandler BeforeSelect; + public event TreeViewCancelEventHandler? BeforeSelect; /// /// Occurs when the user begins dragging an item. /// [Category(@"Action")] [Description(@"Occurs when the user begins dragging an item.")] - public event ItemDragEventHandler ItemDrag; + public event ItemDragEventHandler? ItemDrag; /// /// Occurs when a node is clicked with the mouse. /// [Category(@"Behavior")] [Description(@"Occurs when a node is clicked with the mouse.")] - public event TreeNodeMouseClickEventHandler NodeMouseClick; + public event TreeNodeMouseClickEventHandler? NodeMouseClick; /// /// Occurs when a node is double clicked with the mouse. /// [Category(@"Behavior")] [Description(@"Occurs when a node is double clicked with the mouse.")] - public event TreeNodeMouseClickEventHandler NodeMouseDoubleClick; + public event TreeNodeMouseClickEventHandler? NodeMouseDoubleClick; /// /// Occurs when the mouse hovers over a node. /// [Category(@"Action")] [Description(@"Occurs when the mouse hovers over a node.")] - public event TreeNodeMouseHoverEventHandler NodeMouseHover; + public event TreeNodeMouseHoverEventHandler? NodeMouseHover; /// /// Occurs when the value of the RightToLeftLayout property changes. /// [Category(@"PropertyChanged")] [Description(@"Occurs when the value of the RightToLeftLayout property changes.")] - public event EventHandler RightToLeftLayoutChanged; + public event EventHandler? RightToLeftLayoutChanged; /// /// Occurs when the value of the BackColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackColorChanged; + public new event EventHandler? BackColorChanged; /// /// Occurs when the value of the BackgroundImage property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageChanged; + public new event EventHandler? BackgroundImageChanged; /// /// Occurs when the value of the BackgroundImageLayout property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler BackgroundImageLayoutChanged; + public new event EventHandler? BackgroundImageLayoutChanged; /// /// Occurs when the value of the ForeColor property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler ForeColorChanged; + public new event EventHandler? ForeColorChanged; /// /// Occurs when the value of the MouseClick property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler PaddingChanged; + public new event EventHandler? PaddingChanged; /// /// Occurs when the value of the MouseClick property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event PaintEventHandler Paint; + public new event PaintEventHandler? Paint; /// /// Occurs when the value of the TextChanged property changes. /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] - public new event EventHandler TextChanged; + public new event EventHandler? TextChanged; /// /// Occurs when the mouse enters the control. @@ -496,7 +499,7 @@ private void WmPaint(ref Message m) [Description(@"Raises the TrackMouseEnter event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseEnter; + public event EventHandler? TrackMouseEnter; /// /// Occurs when the mouse leaves the control. @@ -504,7 +507,7 @@ private void WmPaint(ref Message m) [Description(@"Raises the TrackMouseLeave event in the wrapped control.")] [Category(@"Mouse")] [EditorBrowsable(EditorBrowsableState.Advanced)] - public event EventHandler TrackMouseLeave; + public event EventHandler? TrackMouseLeave; #endregion #region Identity @@ -529,22 +532,24 @@ public KryptonTreeView() // Create the palette storage _redirectImages = new PaletteRedirectTreeView(Redirector, PlusMinusImages, CheckBoxImages); - PaletteBackInheritRedirect backInherit = new(Redirector, PaletteBackStyle.InputControlStandalone); - PaletteBorderInheritRedirect borderInherit = new(Redirector, PaletteBorderStyle.InputControlStandalone); - PaletteBackColor1 commonBack = new(backInherit, NeedPaintDelegate); - PaletteBorder commonBorder = new(borderInherit, NeedPaintDelegate); + PaletteBackInheritRedirect backInherit = + new PaletteBackInheritRedirect(Redirector, PaletteBackStyle.InputControlStandalone); + PaletteBorderInheritRedirect borderInherit = + new PaletteBorderInheritRedirect(Redirector, PaletteBorderStyle.InputControlStandalone); + PaletteBackColor1 commonBack = new PaletteBackColor1(backInherit, NeedPaintDelegate); + PaletteBorder commonBorder = new PaletteBorder(borderInherit, NeedPaintDelegate); StateCommon = new PaletteTreeStateRedirect(Redirector, commonBack, backInherit, commonBorder, borderInherit, NeedPaintDelegate); - PaletteBackColor1 disabledBack = new(StateCommon.PaletteBack, NeedPaintDelegate); - PaletteBorder disabledBorder = new(StateCommon.PaletteBorder, NeedPaintDelegate); + PaletteBackColor1 disabledBack = new PaletteBackColor1(StateCommon.PaletteBack, NeedPaintDelegate); + PaletteBorder disabledBorder = new PaletteBorder(StateCommon.PaletteBorder, NeedPaintDelegate); StateDisabled = new PaletteTreeState(StateCommon, disabledBack, disabledBorder, NeedPaintDelegate); - PaletteBackColor1 normalBack = new(StateCommon.PaletteBack, NeedPaintDelegate); - PaletteBorder normalBorder = new(StateCommon.PaletteBorder, NeedPaintDelegate); + PaletteBackColor1 normalBack = new PaletteBackColor1(StateCommon.PaletteBack, NeedPaintDelegate); + PaletteBorder normalBorder = new PaletteBorder(StateCommon.PaletteBorder, NeedPaintDelegate); StateNormal = new PaletteTreeState(StateCommon, normalBack, normalBorder, NeedPaintDelegate); - PaletteBackColor1 activeBack = new(StateCommon.PaletteBack, NeedPaintDelegate); - PaletteBorder activeBorder = new(StateCommon.PaletteBorder, NeedPaintDelegate); + PaletteBackColor1 activeBack = new PaletteBackColor1(StateCommon.PaletteBack, NeedPaintDelegate); + PaletteBorder activeBorder = new PaletteBorder(StateCommon.PaletteBorder, NeedPaintDelegate); StateActive = new PaletteDouble(StateCommon, activeBack, activeBorder, NeedPaintDelegate); OverrideFocus = new PaletteTreeNodeTripleRedirect(Redirector, PaletteBackStyle.ButtonListItem, PaletteBorderStyle.ButtonListItem, PaletteContentStyle.ButtonListItem, NeedPaintDelegate); @@ -565,11 +570,11 @@ public KryptonTreeView() // Create the check box image drawer and place inside element so it is always centered _drawCheckBox = new ViewDrawCheckBox(_redirectImages); - ViewLayoutCenter layoutCheckBox = new() + ViewLayoutCenter layoutCheckBox = new ViewLayoutCenter { _drawCheckBox }; - ViewLayoutSeparator layoutCheckBoxAfter = new(3, 0); + ViewLayoutSeparator layoutCheckBoxAfter = new ViewLayoutSeparator(3, 0); _layoutCheckBoxStack = new ViewLayoutStack(true) { layoutCheckBox, @@ -578,8 +583,8 @@ public KryptonTreeView() // Stack used to layout the location of the node image _layoutImage = new ViewLayoutSeparator(0, 0); - ViewLayoutSeparator layoutImageAfter = new(3, 0); - ViewLayoutCenter layoutImageCenter = new(_layoutImage); + ViewLayoutSeparator layoutImageAfter = new ViewLayoutSeparator(3, 0); + ViewLayoutCenter layoutImageCenter = new ViewLayoutCenter(_layoutImage); _layoutImageStack = new ViewLayoutStack(true) { layoutImageCenter, @@ -645,7 +650,7 @@ public KryptonTreeView() }; // Create inner view for placing inside the drawing docker - ViewLayoutDocker drawDockerInner = new() + ViewLayoutDocker drawDockerInner = new ViewLayoutDocker { { _layoutFill, ViewDockStyle.Fill } }; @@ -1873,7 +1878,7 @@ protected override void OnMouseDown(MouseEventArgs e) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(120, 96); + protected override Size DefaultSize => new Size(120, 96); protected override void CreateHandle() { @@ -1894,7 +1899,7 @@ private void UpdateItemHeight() UpdateContentFromNode(null); // Ask the view element to layout in given space, needs this before a render call - using ViewLayoutContext context = new(this, Renderer); + using ViewLayoutContext context = new ViewLayoutContext(this, Renderer); // For calculating the item height we always assume normal state _drawButton.ElementState = PaletteState.Normal; @@ -2118,7 +2123,7 @@ private void OnTreeViewDrawNode(object sender, DrawTreeNodeEventArgs e) // Create indent rectangle and adjust bounds for remainder var nodeIndent = NodeIndent(e.Node) + 2; - Rectangle indentBounds = new(bounds.X + nodeIndent - indent, bounds.Y, indent, bounds.Height); + Rectangle indentBounds = new Rectangle(bounds.X + nodeIndent - indent, bounds.Y, indent, bounds.Height); bounds.X += nodeIndent; bounds.Width -= nodeIndent; @@ -2136,7 +2141,7 @@ private void OnTreeViewDrawNode(object sender, DrawTreeNodeEventArgs e) // Easier to draw using a graphics instance than a DC! using Graphics g = Graphics.FromHdc(_screenDC); - using (ViewLayoutContext context = new(this, Renderer)) + using (ViewLayoutContext context = new ViewLayoutContext(this, Renderer)) { context.DisplayRectangle = e.Bounds; _treeView.ViewDrawPanel.Layout(context); @@ -2163,7 +2168,7 @@ private void OnTreeViewDrawNode(object sender, DrawTreeNodeEventArgs e) _layoutDocker.Layout(context); } - using (RenderContext context = new(this, g, e.Bounds, Renderer)) + using (RenderContext context = new RenderContext(this, g, e.Bounds, Renderer)) { _treeView.ViewDrawPanel.Render(context); } @@ -2198,7 +2203,7 @@ private void OnTreeViewDrawNode(object sender, DrawTreeNodeEventArgs e) // Draw the horizontal and vertical lines Color lineColor = Redirector.GetContentShortTextColor1(PaletteContentStyle.InputControlStandalone, PaletteState.Normal); - using Pen linePen = new(lineColor); + using Pen linePen = new Pen(lineColor); linePen.DashStyle = DashStyle.Dot; linePen.DashOffset = indent % 2; g.DrawLine(linePen, hCenter, top, hCenter, bottom); @@ -2228,7 +2233,7 @@ private void OnTreeViewDrawNode(object sender, DrawTreeNodeEventArgs e) } } - using (RenderContext context = new(this, g, bounds, Renderer)) + using (RenderContext context = new RenderContext(this, g, bounds, Renderer)) { _layoutDocker.Render(context); } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonWebBrowser.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonWebBrowser.cs index d10a566aa..9bcc0e42c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonWebBrowser.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonWebBrowser.cs @@ -149,7 +149,7 @@ protected override void WndProc(ref Message m) if (KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int) (long) m.LParam) == -1) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonWrapLabel.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonWrapLabel.cs index f1e5f5c8b..7225b228c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonWrapLabel.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Toolkit/KryptonWrapLabel.cs @@ -48,7 +48,7 @@ public class KryptonWrapLabel : Label /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the Palette property is changed.")] - public event EventHandler PaletteChanged; + public event EventHandler? PaletteChanged; #endregion #region Identity @@ -631,7 +631,7 @@ protected override void OnPaintBackground(PaintEventArgs? pEvent) /// Create the redirector instance. /// /// PaletteRedirect derived class. - private PaletteRedirect CreateRedirector() => new(_palette); + private PaletteRedirect CreateRedirector() => new PaletteRedirect(_palette); /// /// Update the view elements based on the requested label style. @@ -716,7 +716,7 @@ protected override void WndProc(ref Message m) if (KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/CommonDialogHandler.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/CommonDialogHandler.cs index 094bcc84d..00ff7d0e9 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/CommonDialogHandler.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/CommonDialogHandler.cs @@ -33,7 +33,7 @@ internal class Attributes public VisualControlBase? Button { get; set; } } - private readonly List _controls = new(); + private readonly List _controls = new List(); internal readonly Color _backColour; private readonly Color _defaultFontColour; private readonly Color _inputFontColour; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonInputBoxForm.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonInputBoxForm.cs index 8290c2c2e..f3c92cd5f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonInputBoxForm.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonInputBoxForm.cs @@ -100,7 +100,8 @@ internal static string InternalShow(IWin32Window? owner, IWin32Window? showOwner = owner ?? FromHandle(PI.GetActiveWindow()); // Show input box window as a modal dialog and then dispose of it afterwards - using KryptonInputBoxForm ib = new(prompt, caption, defaultResponse, cueText, cueColour, cueTypeface, usePasswordOption); + using KryptonInputBoxForm ib = new KryptonInputBoxForm(prompt, caption, defaultResponse, cueText, cueColour, + cueTypeface, usePasswordOption); ib.StartPosition = showOwner == null ? FormStartPosition.CenterScreen : FormStartPosition.CenterParent; return ib.ShowDialog(showOwner) == DialogResult.OK ? ib.InputResponse : string.Empty; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonMessageBoxForm.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonMessageBoxForm.cs index f1d191a52..9948be65d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonMessageBoxForm.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonMessageBoxForm.cs @@ -92,10 +92,10 @@ internal KryptonMessageBoxForm(IWin32Window? showOwner, string text, string capt _applicationImage = applicationImage; _applicationPath = applicationPath ?? string.Empty; _contentAreaType = contentAreaType ?? MessageBoxContentAreaType.Normal; - _linkLabelCommand = linkLabelCommand ?? new(); + _linkLabelCommand = linkLabelCommand ?? new KryptonCommand(); _linkAreaStart = linkAreaStart ?? 0; _linkAreaEnd = linkAreaEnd ?? text.Length; - _linkLaunchArgument = linkLaunchArgument ?? new(); + _linkLaunchArgument = linkLaunchArgument ?? new ProcessStartInfo(); // Create the form contents InitializeComponent(); @@ -610,7 +610,7 @@ private Size UpdateButtonsSizing() // Button1 is always visible Size button1Size = _button1.GetPreferredSize(Size.Empty); - Size maxButtonSize = new(button1Size.Width + GAP, button1Size.Height); + Size maxButtonSize = new Size(button1Size.Width + GAP, button1Size.Height); // If Button2 is visible if (_button2.Enabled) @@ -802,7 +802,7 @@ private void UpdateContentAreaType(MessageBoxContentAreaType? contentAreaType) _messageText.Visible = false; - _linkLabelMessageText.LinkArea = new(_linkAreaStart, _linkAreaEnd); + _linkLabelMessageText.LinkArea = new LinkArea(_linkAreaStart, _linkAreaEnd); break; } } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonMultilineStringEditorForm.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonMultilineStringEditorForm.cs index c536796e6..2014d725a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonMultilineStringEditorForm.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/KryptonMultilineStringEditorForm.cs @@ -224,7 +224,8 @@ private void kbtnOk_Click(object sender, EventArgs e) IWin32Window? showOwner = owner ?? FromHandle(PI.GetActiveWindow()); - using KryptonMultilineStringEditorForm kmse = new(input, null, useRichTextBox, headerText, windowTitle); + using KryptonMultilineStringEditorForm kmse = + new KryptonMultilineStringEditorForm(input, null, useRichTextBox, headerText, windowTitle); kmse.StartPosition = showOwner == null ? FormStartPosition.CenterParent : FormStartPosition.CenterScreen; @@ -239,13 +240,14 @@ private void kbtnOk_Click(object sender, EventArgs e) IWin32Window showOwner = owner ?? FromHandle(PI.GetActiveWindow()); - using KryptonMultilineStringEditorForm kmse = new(null, input, useRichTextBox, headerText, windowTitle); + using KryptonMultilineStringEditorForm kmse = + new KryptonMultilineStringEditorForm(null, input, useRichTextBox, headerText, windowTitle); kmse.StartPosition = showOwner == null ? FormStartPosition.CenterParent : FormStartPosition.CenterScreen; if (kmse._useRichTextBox) { - collection = new(); + collection = new StringCollection(); string[] tmp = kmse.krtbContents.Lines; @@ -253,7 +255,7 @@ private void kbtnOk_Click(object sender, EventArgs e) } else { - collection = new(); + collection = new StringCollection(); string[] tmp = kmse.ktxtStringCollection.Lines; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/MultilineStringEditor.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/MultilineStringEditor.cs index af176e469..5d2211739 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/MultilineStringEditor.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/MultilineStringEditor.cs @@ -95,7 +95,7 @@ protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); // Paint the sizing grip. - using (Bitmap gripImage = new(0x10, 0x10)) + using (Bitmap gripImage = new Bitmap(0x10, 0x10)) { using (Graphics g = Graphics.FromImage(gripImage)) { @@ -205,7 +205,7 @@ private bool OnGetMinMaxInfo(ref Message m) private bool OnNcHitTest(ref Message m) { Point clientLocation = PointToClient(Cursor.Position); - GripBounds gripBounds = new(ClientRectangle); + GripBounds gripBounds = new GripBounds(ClientRectangle); if (gripBounds.BottomRight.Contains(clientLocation)) { m.Result = (IntPtr)PI.HT.BOTTOMRIGHT; diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualBlur.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualBlur.cs index d9e08b039..8edad226d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualBlur.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualBlur.cs @@ -36,7 +36,7 @@ public VisualBlur(BlurValues values) // Update form properties so we do not have a border and do not show // in the task bar. We draw the background in Magenta and set that as // the transparency key so it is a see through window. - CreateParams cp = new() + CreateParams cp = new CreateParams { // Define the screen position/size X = -2, @@ -112,7 +112,7 @@ public void SetTargetRect(Point clientLocation, Rectangle windowBounds) internal static Rectangle GetTargetRectangle(Point clientLocation, Rectangle windowBounds) { - Rectangle rect = new(0, 0, windowBounds.Width, windowBounds.Height); + Rectangle rect = new Rectangle(0, 0, windowBounds.Width, windowBounds.Height); rect.Offset(clientLocation); return rect; } @@ -147,10 +147,10 @@ internal void UpdateShadowLayer() hOldBitmap = PI.SelectObject(memDc, hBitmap); // Set parameters for layered window update. - PI.SIZE newSize = new(_blurredForm.Width, _blurredForm.Height); - PI.POINT sourceLocation = new(0, 0); - PI.POINT newLocation = new(TargetRect.Left, TargetRect.Top); - PI.BLENDFUNCTION blend = new() + PI.SIZE newSize = new PI.SIZE(_blurredForm.Width, _blurredForm.Height); + PI.POINT sourceLocation = new PI.POINT(0, 0); + PI.POINT newLocation = new PI.POINT(TargetRect.Left, TargetRect.Top); + PI.BLENDFUNCTION blend = new PI.BLENDFUNCTION { BlendOp = PI.AC_SRC_OVER, BlendFlags = 0, diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContainerControl.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContainerControl.cs index c2d15dfb6..bac04ffe0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContainerControl.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContainerControl.cs @@ -26,7 +26,7 @@ public abstract class VisualContainerControl : VisualContainerControlBase, /// [Category(@"Behavior")] [Description(@"Occurs when the control has been fully initialized.")] - public event EventHandler Initialized; + public event EventHandler? Initialized; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContainerControlBase.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContainerControlBase.cs index d97b3ab8e..4784df1e7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContainerControlBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContainerControlBase.cs @@ -44,14 +44,14 @@ public abstract class VisualContainerControlBase : ContainerControl, /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the Palette property is changed.")] - public event EventHandler PaletteChanged; + public event EventHandler? PaletteChanged; /// /// Occurs when the Global palette changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the GlobalPalette property is changed.")] - public event EventHandler GlobalPaletteChanged; + public event EventHandler? GlobalPaletteChanged; #endregion #region Identity @@ -716,7 +716,7 @@ protected virtual void OnNeedPaint(object? sender, [DisallowNull] NeedLayoutEven /// Create the redirector instance. /// /// PaletteRedirect derived class. - protected virtual PaletteRedirect? CreateRedirector() => new (_palette); + protected virtual PaletteRedirect? CreateRedirector() => new PaletteRedirect(_palette); // ReSharper restore VirtualMemberNeverOverridden.Global #endregion @@ -1037,7 +1037,7 @@ protected override void WndProc(ref Message m) if (KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContextMenu.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContextMenu.cs index e980b3e73..8351d52a6 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContextMenu.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualContextMenu.cs @@ -387,7 +387,7 @@ protected override void OnLayout(LayoutEventArgs levent) base.OnLayout(levent); // Need a render context for accessing the renderer - using RenderContext context = new(this, null, ClientRectangle, Renderer); + using RenderContext context = new RenderContext(this, null, ClientRectangle, Renderer); // Grab a path that is the outside edge of the border Rectangle borderRect = ClientRectangle; GraphicsPath borderPath1 = Renderer.RenderStandardBorder.GetOutsideBorderPath(context, borderRect, _provider.ProviderStateCommon.ControlOuter.Border, VisualOrientation.Top, PaletteState.Normal); @@ -422,12 +422,13 @@ private void Construct(KryptonContextMenuCollection items, items.GenerateView(_provider, this, _viewColumns, true, true); // Create the control panel canvas - ViewDrawCanvas mainBackground = new(_provider.ProviderStateCommon.ControlInner.Back, _provider.ProviderStateCommon.ControlInner.Border, VisualOrientation.Top) + ViewDrawCanvas mainBackground = new ViewDrawCanvas(_provider.ProviderStateCommon.ControlInner.Back, + _provider.ProviderStateCommon.ControlInner.Border, VisualOrientation.Top) { _viewColumns }; - ViewLayoutDocker layoutDocker = new(); + ViewLayoutDocker layoutDocker = new ViewLayoutDocker(); Padding outerPadding = _provider.ProviderRedirector.GetMetricPadding(PaletteState.Normal, PaletteMetricPadding.ContextMenuItemOuter); layoutDocker.Add(new ViewLayoutSeparator(outerPadding.Top), ViewDockStyle.Top); layoutDocker.Add(new ViewLayoutSeparator(outerPadding.Bottom), ViewDockStyle.Bottom); @@ -458,7 +459,7 @@ private Size CalculatePreferredSize() try { // Find the preferred size which fits exactly the calculated contents size - using ViewLayoutContext context = new(this, Renderer); + using ViewLayoutContext context = new ViewLayoutContext(this, Renderer); return ViewManager.Root.GetPreferredSize(context); } finally diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControl.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControl.cs index 79976299d..693f06e82 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControl.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControl.cs @@ -26,7 +26,7 @@ public abstract class VisualControl : VisualControlBase, /// [Category(@"Behavior")] [Description(@"Occurs when the control has been fully initialized.")] - public event EventHandler Initialized; + public event EventHandler? Initialized; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControlBase.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControlBase.cs index 249946447..9c83839d4 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControlBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControlBase.cs @@ -47,14 +47,14 @@ public abstract class VisualControlBase : Control, /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the Palette property is changed.")] - public event EventHandler PaletteChanged; + public event EventHandler? PaletteChanged; /// /// Occurs when the Global palette changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the GlobalPalette property is changed.")] - public event EventHandler GlobalPaletteChanged; + public event EventHandler? GlobalPaletteChanged; #endregion #region Identity @@ -770,7 +770,7 @@ protected virtual void OnNeedPaint(object? sender, [DisallowNull] NeedLayoutEven /// Create the redirector instance. /// /// PaletteRedirect derived class. - protected virtual PaletteRedirect? CreateRedirector() => new (_palette); + protected virtual PaletteRedirect? CreateRedirector() => new PaletteRedirect(_palette); /// /// Update global event attachments. @@ -1129,7 +1129,7 @@ protected override void WndProc(ref Message m) if (KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControlContainment.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControlContainment.cs index bfd808c09..25b318cbf 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControlContainment.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualControlContainment.cs @@ -128,7 +128,7 @@ public override Color ForeColor /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(150, 150); + protected override Size DefaultSize => new Size(150, 150); #endregion } diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualForm.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualForm.cs index b7d556a41..6e5f80c91 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualForm.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualForm.cs @@ -59,28 +59,28 @@ public abstract class VisualForm : Form, /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the Palette property is changed.")] - public event EventHandler PaletteChanged; + public event EventHandler? PaletteChanged; /// /// Occurs when the use of custom chrome changes. /// [Browsable(false)] // SKC: Probably a special case for not exposing this event in the designer.... [EditorBrowsable(EditorBrowsableState.Never)] - public event EventHandler ApplyCustomChromeChanged; + public event EventHandler? ApplyCustomChromeChanged; /// /// Occurs when the active window setting changes. /// [Browsable(false)] // SKC: Probably a special case for not exposing this event in the designer.... [EditorBrowsable(EditorBrowsableState.Never)] - public event EventHandler WindowActiveChanged; + public event EventHandler? WindowActiveChanged; /// /// Occurs when the Global palette changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the GlobalPalette property is changed.")] - public event EventHandler GlobalPaletteChanged; + public event EventHandler? GlobalPaletteChanged; #endregion #region Identity @@ -805,7 +805,7 @@ protected void InvalidateNonClient(Rectangle invalidRect, realWindowRectangle.Height); } - using Region invalidRegion = new(invalidRect); + using Region invalidRegion = new Region(invalidRect); if (excludeClientArea) { invalidRegion.Exclude(ClientRectangle); @@ -830,7 +830,7 @@ protected Rectangle RealWindowRectangle { // Grab the actual current size of the window, this is more accurate than using // the 'this.Size' which is out of date when performing a resize of the window. - PI.RECT windowRect = new(); + PI.RECT windowRect = new PI.RECT(); PI.GetWindowRect(Handle, ref windowRect); // Create rectangle that encloses the entire window @@ -951,7 +951,7 @@ protected override void OnPaintBackground(PaintEventArgs e) // If drawing with custom chrome and composition if (ApplyCustomChrome && ApplyComposition) { - Rectangle compositionRect = new(0, 0, Width, _compositionHeight); + Rectangle compositionRect = new Rectangle(0, 0, Width, _compositionHeight); // Draw the extended area inside the client in black, this ensures // it is treated as transparent by the desktop window manager @@ -1011,7 +1011,7 @@ protected virtual void ResumePaint() /// Create the redirector instance. /// /// PaletteRedirect derived class. - protected virtual PaletteRedirect? CreateRedirector() => new(_palette); + protected virtual PaletteRedirect? CreateRedirector() => new PaletteRedirect(_palette); /// /// Processes a notification from palette storage of a button spec change. @@ -1345,7 +1345,7 @@ protected virtual bool OnWM_NCPAINT(ref Message m) protected virtual bool OnWM_NCHITTEST(ref Message m) { // Extract the point in screen coordinates - Point screenPoint = new((int)m.LParam.ToInt64()); + Point screenPoint = new Point((int)m.LParam.ToInt64()); // Convert to window coordinates Point windowPoint = ScreenToWindow(screenPoint); @@ -1381,7 +1381,7 @@ protected virtual bool OnCompWM_NCHITTEST(ref Message m) || m.Result == (IntPtr)PI.HT.CLIENT) { // Extract the point in screen coordinates - Point screenPoint = new((int)m.LParam.ToInt64()); + Point screenPoint = new Point((int)m.LParam.ToInt64()); // Convert to window coordinates Point windowPoint = ScreenToWindow(screenPoint); @@ -1449,7 +1449,7 @@ protected virtual bool OnPaintNonClient(ref Message m) protected virtual bool OnWM_NCMOUSEMOVE(ref Message m) { // Extract the point in screen coordinates - Point screenPoint = new((int)m.LParam.ToInt64()); + Point screenPoint = new Point((int)m.LParam.ToInt64()); // Convert to window coordinates Point windowPoint = ScreenToWindow(screenPoint); @@ -1466,7 +1466,7 @@ protected virtual bool OnWM_NCMOUSEMOVE(ref Message m) // If we are not tracking when the mouse leaves the non-client window if (!_trackingMouse) { - PI.TRACKMOUSEEVENTS tme = new() + PI.TRACKMOUSEEVENTS tme = new PI.TRACKMOUSEEVENTS { // This structure needs to know its own size in bytes cbSize = (uint)Marshal.SizeOf(typeof(PI.TRACKMOUSEEVENTS)), @@ -1501,7 +1501,7 @@ protected virtual bool OnWM_NCMOUSEMOVE(ref Message m) protected virtual bool OnWM_NCLBUTTONDOWN(ref Message m) { // Extract the point in screen coordinates - Point screenPoint = new((int)m.LParam.ToInt64()); + Point screenPoint = new Point((int)m.LParam.ToInt64()); // Convert to window coordinates Point windowPoint = ScreenToWindow(screenPoint); @@ -1524,7 +1524,7 @@ protected virtual bool OnWM_NCLBUTTONDOWN(ref Message m) protected virtual bool OnWM_NCLBUTTONUP(ref Message m) { // Extract the point in screen coordinates - Point screenPoint = new((int)m.LParam.ToInt64()); + Point screenPoint = new Point((int)m.LParam.ToInt64()); // Convert to window coordinates Point windowPoint = ScreenToWindow(screenPoint); @@ -1571,7 +1571,7 @@ protected virtual bool OnWM_NCMOUSELEAVE(ref Message m) protected virtual bool OnWM_MOUSEMOVE(ref Message m) { // Extract the point in client coordinates - Point clientPoint = new((int)m.LParam); + Point clientPoint = new Point((int)m.LParam); // Convert to screen coordinates Point screenPoint = PointToScreen(clientPoint); @@ -1603,7 +1603,7 @@ protected virtual bool OnWM_LBUTTONUP(ref Message m) _trackingMouse = false; // Extract the point in client coordinates - Point clientPoint = new((int)m.LParam); + Point clientPoint = new Point((int)m.LParam); // Convert to screen coordinates Point screenPoint = PointToScreen(clientPoint); @@ -1631,7 +1631,7 @@ protected virtual bool OnWM_LBUTTONUP(ref Message m) protected virtual bool OnWM_NCLBUTTONDBLCLK(ref Message m) { // Extract the point in screen coordinates - Point screenPoint = new((int)m.LParam.ToInt64()); + Point screenPoint = new Point((int)m.LParam.ToInt64()); // Convert to window coordinates Point windowPoint = ScreenToWindow(screenPoint); @@ -1668,9 +1668,8 @@ protected virtual void OnNonClientPaint(IntPtr hWnd) { // Find the rectangle that covers the client area of the form Padding borders = RealWindowBorders; - Rectangle clipClientRect = new(borders.Left, borders.Top, - windowBounds.Width - borders.Horizontal, - windowBounds.Height - borders.Vertical); + Rectangle clipClientRect = new Rectangle(borders.Left, borders.Top, + windowBounds.Width - borders.Horizontal, windowBounds.Height - borders.Vertical); var minimized = CommonHelper.IsFormMinimized(this); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPanel.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPanel.cs index 4e83d1cd3..b63304c17 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPanel.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPanel.cs @@ -48,21 +48,21 @@ public abstract class VisualPanel : Panel, /// [Category(@"Behavior")] [Description(@"Occurs when the control has been fully initialized.")] - public event EventHandler Initialized; + public event EventHandler? Initialized; /// /// Occurs when the palette changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the Palette property is changed.")] - public event EventHandler PaletteChanged; + public event EventHandler? PaletteChanged; /// /// Occurs when the Global palette changes. /// [Category(@"Property Changed")] [Description(@"Occurs when the value of the GlobalPalette property is changed.")] - public event EventHandler GlobalPaletteChanged; + public event EventHandler? GlobalPaletteChanged; #endregion #region Identity @@ -144,16 +144,16 @@ protected override void Dispose(bool disposing) // Unhook from any current menu strip if (base.ContextMenuStrip != null) { - base.ContextMenuStrip.Opening -= OnContextMenuStripOpening!; - base.ContextMenuStrip.Closed -= OnContextMenuClosed!; + base.ContextMenuStrip.Opening -= OnContextMenuStripOpening; + base.ContextMenuStrip.Closed -= OnContextMenuClosed; base.ContextMenuStrip = null; } // Must unhook from the palette paint event if (_palette != null) { - _palette.PalettePaint -= OnNeedPaint!; - _palette.ButtonSpecChanged -= OnButtonSpecChanged!; + _palette.PalettePaint -= OnNeedPaint; + _palette.ButtonSpecChanged -= OnButtonSpecChanged; } UnattachGlobalEvents(); @@ -247,8 +247,8 @@ public override ContextMenuStrip? ContextMenuStrip // Unhook from any current menu strip if (base.ContextMenuStrip != null) { - base.ContextMenuStrip.Opening -= OnContextMenuStripOpening!; - base.ContextMenuStrip.Closed -= OnContextMenuClosed!; + base.ContextMenuStrip.Opening -= OnContextMenuStripOpening; + base.ContextMenuStrip.Closed -= OnContextMenuClosed; } // Let parent handle actual storage @@ -257,8 +257,8 @@ public override ContextMenuStrip? ContextMenuStrip // Hook into the strip being shown (so we can set the correct renderer) if (base.ContextMenuStrip != null) { - base.ContextMenuStrip.Opening += OnContextMenuStripOpening!; - base.ContextMenuStrip.Closed += OnContextMenuClosed!; + base.ContextMenuStrip.Opening += OnContextMenuStripOpening; + base.ContextMenuStrip.Closed += OnContextMenuClosed; } } } @@ -279,16 +279,16 @@ public virtual KryptonContextMenu? KryptonContextMenu { if (_kryptonContextMenu != null) { - _kryptonContextMenu.Closed -= OnContextMenuClosed!; - _kryptonContextMenu.Disposed -= OnKryptonContextMenuDisposed!; + _kryptonContextMenu.Closed -= OnContextMenuClosed; + _kryptonContextMenu.Disposed -= OnKryptonContextMenuDisposed; } _kryptonContextMenu = value; if (_kryptonContextMenu != null) { - _kryptonContextMenu.Closed += OnContextMenuClosed!; - _kryptonContextMenu.Disposed += OnKryptonContextMenuDisposed!; + _kryptonContextMenu.Closed += OnContextMenuClosed; + _kryptonContextMenu.Disposed += OnKryptonContextMenuDisposed; } } } @@ -493,7 +493,7 @@ protected override void WndProc(ref Message m) if (KryptonContextMenu != null) { // Extract the screen mouse position (if might not actually be provided) - Point mousePt = new(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); + Point mousePt = new Point(PI.LOWORD(m.LParam), PI.HIWORD(m.LParam)); // If keyboard activated, the menu position is centered if (((int)(long)m.LParam) == -1) @@ -780,12 +780,12 @@ protected virtual void UpdateGlobalEvents(bool attach) { if (attach) { - KryptonManager.GlobalPaletteChanged += OnGlobalPaletteChanged!; + KryptonManager.GlobalPaletteChanged += OnGlobalPaletteChanged; SystemEvents.UserPreferenceChanged += OnUserPreferenceChanged; } else { - KryptonManager.GlobalPaletteChanged -= OnGlobalPaletteChanged!; + KryptonManager.GlobalPaletteChanged -= OnGlobalPaletteChanged; SystemEvents.UserPreferenceChanged -= OnUserPreferenceChanged; } } @@ -796,7 +796,7 @@ protected virtual void UpdateGlobalEvents(bool attach) /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(100, 100); + protected override Size DefaultSize => new Size(100, 100); /// /// Raises the RightToLeftChanged event. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopup.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopup.cs index ac4abfa3b..7b89b7136 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopup.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopup.cs @@ -212,7 +212,7 @@ public virtual bool DoesCurrentMouseDownEndAllTracking(Message m, Point pt) { // Get the window handle of the window under this screen point Point screenPt = PointToScreen(pt); - PI.POINT screenPIPt = new() + PI.POINT screenPIPt = new PI.POINT { X = screenPt.X, Y = screenPt.Y @@ -222,7 +222,7 @@ public virtual bool DoesCurrentMouseDownEndAllTracking(Message m, Point pt) // Assuming we got back a valid window handle if (hWnd != IntPtr.Zero) { - StringBuilder className = new(256); + StringBuilder className = new StringBuilder(256); var length = PI.GetClassName(hWnd, className, className.Capacity); // If we got back a valid name @@ -320,7 +320,7 @@ public IRenderer? Renderer /// [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Advanced)] - public EventHandler DismissedDelegate { get; set; } + public EventHandler? DismissedDelegate { get; set; } /// /// Gets a value indicating if the keyboard is passed to this popup. diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopupManager.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopupManager.cs index f63c18b8d..471fe91c2 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopupManager.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopupManager.cs @@ -32,7 +32,7 @@ private class PopupStack : Stack {} private bool _filtering; private int _suspended; private ContextMenuStrip _cms; - private EventHandler _cmsFinishDelegate; + private EventHandler? _cmsFinishDelegate; #endregion #region Identity @@ -292,7 +292,7 @@ public void ShowContextMenuStrip(ContextMenuStrip cms, /// Delegate to call when strip dismissed. public void ShowContextMenuStrip([DisallowNull] ContextMenuStrip cms, Point screenPt, - EventHandler cmsFinishDelegate) + EventHandler? cmsFinishDelegate) { Debug.Assert(cms != null); @@ -417,7 +417,7 @@ public bool PreFilterMessage(ref Message m) // KeyPress events occur for the current popup. if (!CurrentPopup.ContainsFocus) { - PI.MSG msg = new() + PI.MSG msg = new PI.MSG { hwnd = m.HWnd, message = m.Msg, @@ -576,7 +576,7 @@ private bool ProcessClientMouseDown(ref Message m) private bool ProcessNonClientMouseDown(ref Message m) { // Extract the x and y mouse position from message - Point screenPt = new(PI.LOWORD((int)m.LParam), PI.HIWORD((int)m.LParam)); + Point screenPt = new Point(PI.LOWORD((int)m.LParam), PI.HIWORD((int)m.LParam)); // Ask the popup if this message causes the entire stack to be killed if (CurrentPopup.DoesCurrentMouseDownEndAllTracking(m, ScreenPtToClientPt(screenPt))) @@ -661,7 +661,7 @@ private bool ProcessMouseMoveWithCMS(ref Message m) Point screenPt = CommonHelper.ClientMouseMessageToScreenPt(m); // Convert from a class to a structure - PI.POINT screenPIPt = new() + PI.POINT screenPIPt = new PI.POINT { X = screenPt.X, Y = screenPt.Y @@ -697,7 +697,7 @@ private bool ProcessMouseMoveWithCMS(ref Message m) private Point ScreenPtToClientPt(Point pt, IntPtr handle) { - PI.POINTC clientPt = new() + PI.POINTC clientPt = new PI.POINTC { x = pt.X, y = pt.Y @@ -716,7 +716,7 @@ private Point ScreenPtToClientPt(Point pt, IntPtr handle) } // Convert a 0,0 point from client to screen to find offsetting - PI.POINTC zeroPIPt = new() + PI.POINTC zeroPIPt = new PI.POINTC { x = 0, y = 0 diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopupTooltip.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopupTooltip.cs index 15136e2c8..79e1e70bc 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopupTooltip.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualPopupTooltip.cs @@ -134,10 +134,17 @@ public void ShowRelativeTo(ViewBase target, Point controlMousePosition) // The screen, or PlacementRectangle if it is set. The PlacementRectangle is relative to the screen. if (positionPlacementRectangle.IsEmpty) { - // PlacementTarget or parent. - positionPlacementRectangle = - position.PlacementTarget?.ClientRectangle ?? target.ClientRectangle; - positionPlacementRectangle = (position.PlacementTarget?.OwningControl ?? target.OwningControl).RectangleToScreen(positionPlacementRectangle); + var ctrl = (position.PlacementTarget?.OwningControl ?? target.OwningControl); + if (ctrl is not null) + { + // PlacementTarget or parent. + positionPlacementRectangle = position.PlacementTarget?.ClientRectangle ?? target.ClientRectangle; + positionPlacementRectangle = ctrl.RectangleToScreen(positionPlacementRectangle); + } + else + { + positionPlacementRectangle = new Rectangle(controlMousePosition.X, controlMousePosition.Y, currentCursorHotSpot.X + 2, currentCursorHotSpot.Y + 2); + } } else { @@ -228,7 +235,7 @@ protected override void OnLayout(LayoutEventArgs lEvent) base.OnLayout(lEvent); // Need a render context for accessing the renderer - using RenderContext context = new(this, null, ClientRectangle, Renderer); + using RenderContext context = new RenderContext(this, null, ClientRectangle, Renderer); // Grab a path that is the outside edge of the border Rectangle borderRect = ClientRectangle; GraphicsPath borderPath1 = Renderer.RenderStandardBorder.GetOutsideBorderPath(context, borderRect, _palette.Border, VisualOrientation.Top, PaletteState.Normal); diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualShadowBase.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualShadowBase.cs index 549c685e1..74cd1f9d8 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualShadowBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualShadowBase.cs @@ -36,7 +36,7 @@ public VisualShadowBase(ShadowValues shadowValues, VisualOrientation visualOrien // Update form properties so we do not have a border and do not show // in the task bar. We draw the background in Magenta and set that as // the transparency key so it is a see through window. - CreateParams cp = new() + CreateParams cp = new CreateParams { // Define the screen position/size X = -2, @@ -171,10 +171,10 @@ internal void UpdateShadowLayer() hOldBitmap = PI.SelectObject(memDc, hBitmap); // Set parameters for layered window update. - PI.SIZE newSize = new(_shadowClip.Width, _shadowClip.Height); - PI.POINT sourceLocation = new(0, 0); - PI.POINT newLocation = new(TargetRect.Left, TargetRect.Top); - PI.BLENDFUNCTION blend = new() + PI.SIZE newSize = new PI.SIZE(_shadowClip.Width, _shadowClip.Height); + PI.POINT sourceLocation = new PI.POINT(0, 0); + PI.POINT newLocation = new PI.POINT(TargetRect.Left, TargetRect.Top); + PI.BLENDFUNCTION blend = new PI.BLENDFUNCTION { BlendOp = PI.AC_SRC_OVER, BlendFlags = 0, diff --git a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualTaskDialog.cs b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualTaskDialog.cs index 9f90f83f3..b078e8e88 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualTaskDialog.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Controls Visuals/VisualTaskDialog.cs @@ -302,7 +302,7 @@ private void UpdateRadioButtons() foreach (KryptonTaskDialogCommand command in _radioButtons) { // Create and add a new radio button instance - KryptonRadioButton button = new() + KryptonRadioButton button = new KryptonRadioButton { LabelStyle = LabelStyle.NormalPanel }; @@ -330,7 +330,7 @@ private void UpdateRadioButtons() maxButtonSize.Width = Math.Min(Math.Max(maxButtonSize.Width, 150), 400); // Position the radio buttons in a vertical stack and size owning panel - Point offset = new(BUTTON_GAP - 1, 2); + Point offset = new Point(BUTTON_GAP - 1, 2); foreach (KryptonRadioButton button in _panelMainRadio.Controls) { button.Location = offset; @@ -358,7 +358,7 @@ private void UpdateCommandButtons() foreach (KryptonTaskDialogCommand command in _commandButtons) { // Create and add a new button instance - KryptonButton button = new() + KryptonButton button = new KryptonButton { ButtonStyle = ButtonStyle.Command }; @@ -385,7 +385,7 @@ private void UpdateCommandButtons() maxButtonSize.Width = Math.Min(Math.Max(maxButtonSize.Width, 150), 400); // Position the buttons in a vertical stack and size owning panel - Point offset = new(BUTTON_GAP - 1, 2); + Point offset = new Point(BUTTON_GAP - 1, 2); foreach (KryptonButton button in _panelMainCommands.Controls) { button.Location = offset; @@ -643,7 +643,7 @@ private Size UpdateMainTextSizing() var h = (int)Math.Min(messageContentSize.Height, dispSize.Height * 0.6); var w = (int)Math.Min(messageContentSize.Width, dispSize.Width * 0.6); - Size sz = new(w, h); + Size sz = new Size(w, h); if (messageContentSize != sz) { messageContentSize = sz; @@ -833,7 +833,8 @@ private Size UpdateButtonsSizing() { _panelButtons.Visible = true; - Size panelButtonSize = new((maxButtonSize.Width * numButtons) + (BUTTON_GAP * (numButtons + 1)), maxButtonSize.Height + (BUTTON_GAP * 2)); + Size panelButtonSize = new Size((maxButtonSize.Width * numButtons) + (BUTTON_GAP * (numButtons + 1)), + maxButtonSize.Height + (BUTTON_GAP * 2)); if (!checkboxSize.IsEmpty) { @@ -985,7 +986,7 @@ private void button_keyDown(object sender, KeyEventArgs e) // Pressing Ctrl+C should copy message text into the clipboard if (e is { Modifiers: Keys.Control, KeyCode: Keys.C }) { - StringBuilder sb = new(); + StringBuilder sb = new StringBuilder(); sb.AppendLine("---------------------------"); sb.AppendLine(_windowTitle); diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/ButtonStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/ButtonStyleConverter.cs index d4058528f..97d513f85 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/ButtonStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/ButtonStyleConverter.cs @@ -49,25 +49,25 @@ internal class ButtonStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(ButtonStyle.Standalone, KryptonLanguageManager.ButtonStyles.Standalone), - new(ButtonStyle.Alternate, KryptonLanguageManager.ButtonStyles.Alternate), - new(ButtonStyle.LowProfile, KryptonLanguageManager.ButtonStyles.LowProfile), - new(ButtonStyle.ButtonSpec, KryptonLanguageManager.ButtonStyles.ButtonSpec), - new(ButtonStyle.BreadCrumb, KryptonLanguageManager.ButtonStyles.BreadCrumb), - new(ButtonStyle.CalendarDay, KryptonLanguageManager.ButtonStyles.CalendarDay), - new(ButtonStyle.Cluster, KryptonLanguageManager.ButtonStyles.Cluster), - new(ButtonStyle.Gallery, KryptonLanguageManager.ButtonStyles.Gallery), - new(ButtonStyle.NavigatorStack, KryptonLanguageManager.ButtonStyles.NavigatorStack), - new(ButtonStyle.NavigatorOverflow, KryptonLanguageManager.ButtonStyles.NavigatorOverflow), - new(ButtonStyle.NavigatorMini, KryptonLanguageManager.ButtonStyles.NavigatorMini), - new(ButtonStyle.InputControl, KryptonLanguageManager.ButtonStyles.InputControl), - new(ButtonStyle.ListItem, KryptonLanguageManager.ButtonStyles.ListItem), - new(ButtonStyle.Form, KryptonLanguageManager.ButtonStyles.Form), - new(ButtonStyle.FormClose, KryptonLanguageManager.ButtonStyles.FormClose), - new(ButtonStyle.Command, KryptonLanguageManager.ButtonStyles.Command), - new(ButtonStyle.Custom1, KryptonLanguageManager.ButtonStyles.CustomOne), - new(ButtonStyle.Custom2, KryptonLanguageManager.ButtonStyles.CustomTwo), - new(ButtonStyle.Custom3, KryptonLanguageManager.ButtonStyles.CustomThree) + new Pair(ButtonStyle.Standalone, KryptonLanguageManager.ButtonStyles.Standalone), + new Pair(ButtonStyle.Alternate, KryptonLanguageManager.ButtonStyles.Alternate), + new Pair(ButtonStyle.LowProfile, KryptonLanguageManager.ButtonStyles.LowProfile), + new Pair(ButtonStyle.ButtonSpec, KryptonLanguageManager.ButtonStyles.ButtonSpec), + new Pair(ButtonStyle.BreadCrumb, KryptonLanguageManager.ButtonStyles.BreadCrumb), + new Pair(ButtonStyle.CalendarDay, KryptonLanguageManager.ButtonStyles.CalendarDay), + new Pair(ButtonStyle.Cluster, KryptonLanguageManager.ButtonStyles.Cluster), + new Pair(ButtonStyle.Gallery, KryptonLanguageManager.ButtonStyles.Gallery), + new Pair(ButtonStyle.NavigatorStack, KryptonLanguageManager.ButtonStyles.NavigatorStack), + new Pair(ButtonStyle.NavigatorOverflow, KryptonLanguageManager.ButtonStyles.NavigatorOverflow), + new Pair(ButtonStyle.NavigatorMini, KryptonLanguageManager.ButtonStyles.NavigatorMini), + new Pair(ButtonStyle.InputControl, KryptonLanguageManager.ButtonStyles.InputControl), + new Pair(ButtonStyle.ListItem, KryptonLanguageManager.ButtonStyles.ListItem), + new Pair(ButtonStyle.Form, KryptonLanguageManager.ButtonStyles.Form), + new Pair(ButtonStyle.FormClose, KryptonLanguageManager.ButtonStyles.FormClose), + new Pair(ButtonStyle.Command, KryptonLanguageManager.ButtonStyles.Command), + new Pair(ButtonStyle.Custom1, KryptonLanguageManager.ButtonStyles.CustomOne), + new Pair(ButtonStyle.Custom2, KryptonLanguageManager.ButtonStyles.CustomTwo), + new Pair(ButtonStyle.Custom3, KryptonLanguageManager.ButtonStyles.CustomThree) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/DataGridViewStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/DataGridViewStyleConverter.cs index 5e4cff4aa..71edf106b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/DataGridViewStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/DataGridViewStyleConverter.cs @@ -36,12 +36,12 @@ internal class DataGridViewStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(DataGridViewStyle.List, KryptonLanguageManager.DataGridViewStyles.List), - new(DataGridViewStyle.Sheet, KryptonLanguageManager.DataGridViewStyles.Sheet), - new(DataGridViewStyle.Custom1, KryptonLanguageManager.DataGridViewStyles.CustomOne), - new(DataGridViewStyle.Custom2, KryptonLanguageManager.DataGridViewStyles.CustomTwo), - new(DataGridViewStyle.Custom3, KryptonLanguageManager.DataGridViewStyles.CustomThree), - new(DataGridViewStyle.Mixed, KryptonLanguageManager.DataGridViewStyles.Mixed) + new Pair(DataGridViewStyle.List, KryptonLanguageManager.DataGridViewStyles.List), + new Pair(DataGridViewStyle.Sheet, KryptonLanguageManager.DataGridViewStyles.Sheet), + new Pair(DataGridViewStyle.Custom1, KryptonLanguageManager.DataGridViewStyles.CustomOne), + new Pair(DataGridViewStyle.Custom2, KryptonLanguageManager.DataGridViewStyles.CustomTwo), + new Pair(DataGridViewStyle.Custom3, KryptonLanguageManager.DataGridViewStyles.CustomThree), + new Pair(DataGridViewStyle.Mixed, KryptonLanguageManager.DataGridViewStyles.Mixed) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/GridStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/GridStyleConverter.cs index f37508994..c68b3d7a4 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/GridStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/GridStyleConverter.cs @@ -35,11 +35,11 @@ internal class GridStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(GridStyle.List, KryptonLanguageManager.GridStyles.List), - new(GridStyle.Sheet, KryptonLanguageManager.GridStyles.Sheet), - new(GridStyle.Custom1, KryptonLanguageManager.GridStyles.CustomOne), - new(GridStyle.Custom2, KryptonLanguageManager.GridStyles.CustomTwo), - new(GridStyle.Custom3, KryptonLanguageManager.GridStyles.CustomThree) + new Pair(GridStyle.List, KryptonLanguageManager.GridStyles.List), + new Pair(GridStyle.Sheet, KryptonLanguageManager.GridStyles.Sheet), + new Pair(GridStyle.Custom1, KryptonLanguageManager.GridStyles.CustomOne), + new Pair(GridStyle.Custom2, KryptonLanguageManager.GridStyles.CustomTwo), + new Pair(GridStyle.Custom3, KryptonLanguageManager.GridStyles.CustomThree) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/HeaderGroupCollapseTargetConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/HeaderGroupCollapseTargetConverter.cs index 648b320ec..9c1eb0735 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/HeaderGroupCollapseTargetConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/HeaderGroupCollapseTargetConverter.cs @@ -33,9 +33,12 @@ internal class HeaderGroupCollapsedTargetConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(HeaderGroupCollapsedTarget.CollapsedToPrimary, KryptonLanguageManager.GroupCollapsedTargetStrings.CollapsedToPrimary), - new(HeaderGroupCollapsedTarget.CollapsedToSecondary, KryptonLanguageManager.GroupCollapsedTargetStrings.CollapsedToSecondary), - new(HeaderGroupCollapsedTarget.CollapsedToBoth, KryptonLanguageManager.GroupCollapsedTargetStrings.CollapsedToBoth) + new Pair(HeaderGroupCollapsedTarget.CollapsedToPrimary, + KryptonLanguageManager.GroupCollapsedTargetStrings.CollapsedToPrimary), + new Pair(HeaderGroupCollapsedTarget.CollapsedToSecondary, + KryptonLanguageManager.GroupCollapsedTargetStrings.CollapsedToSecondary), + new Pair(HeaderGroupCollapsedTarget.CollapsedToBoth, + KryptonLanguageManager.GroupCollapsedTargetStrings.CollapsedToBoth) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/HeaderStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/HeaderStyleConverter.cs index 22a777ca0..9c10cac97 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/HeaderStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/HeaderStyleConverter.cs @@ -39,15 +39,15 @@ internal class HeaderStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(HeaderStyle.Primary, KryptonLanguageManager.HeaderStyles.Primary), - new(HeaderStyle.Secondary, KryptonLanguageManager.HeaderStyles.Secondary), - new(HeaderStyle.DockInactive, KryptonLanguageManager.HeaderStyles.DockInactive), - new(HeaderStyle.DockActive, KryptonLanguageManager.HeaderStyles.DockActive), - new(HeaderStyle.Form, KryptonLanguageManager.HeaderStyles.Form), - new(HeaderStyle.Calendar, KryptonLanguageManager.HeaderStyles.Calendar), - new(HeaderStyle.Custom1, KryptonLanguageManager.HeaderStyles.CustomOne), - new(HeaderStyle.Custom2, KryptonLanguageManager.HeaderStyles.CustomTwo), - new(HeaderStyle.Custom3, KryptonLanguageManager.HeaderStyles.CustomThree) + new Pair(HeaderStyle.Primary, KryptonLanguageManager.HeaderStyles.Primary), + new Pair(HeaderStyle.Secondary, KryptonLanguageManager.HeaderStyles.Secondary), + new Pair(HeaderStyle.DockInactive, KryptonLanguageManager.HeaderStyles.DockInactive), + new Pair(HeaderStyle.DockActive, KryptonLanguageManager.HeaderStyles.DockActive), + new Pair(HeaderStyle.Form, KryptonLanguageManager.HeaderStyles.Form), + new Pair(HeaderStyle.Calendar, KryptonLanguageManager.HeaderStyles.Calendar), + new Pair(HeaderStyle.Custom1, KryptonLanguageManager.HeaderStyles.CustomOne), + new Pair(HeaderStyle.Custom2, KryptonLanguageManager.HeaderStyles.CustomTwo), + new Pair(HeaderStyle.Custom3, KryptonLanguageManager.HeaderStyles.CustomThree) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/InputControlStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/InputControlStyleConverter.cs index 922ecf4a7..798e4e103 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/InputControlStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/InputControlStyleConverter.cs @@ -38,13 +38,13 @@ internal class InputControlStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(InputControlStyle.Standalone, KryptonLanguageManager.InputControlStyles.Standalone), - new(InputControlStyle.Ribbon, KryptonLanguageManager.InputControlStyles.Ribbon), - new(InputControlStyle.Custom1, KryptonLanguageManager.InputControlStyles.CustomOne), - new(InputControlStyle.Custom2, KryptonLanguageManager.InputControlStyles.CustomTwo), - new(InputControlStyle.Custom3, KryptonLanguageManager.InputControlStyles.CustomThree), - new(InputControlStyle.PanelClient, KryptonLanguageManager.InputControlStyles.PanelClient), - new(InputControlStyle.PanelAlternate, KryptonLanguageManager.InputControlStyles.PanelAlternate), + new Pair(InputControlStyle.Standalone, KryptonLanguageManager.InputControlStyles.Standalone), + new Pair(InputControlStyle.Ribbon, KryptonLanguageManager.InputControlStyles.Ribbon), + new Pair(InputControlStyle.Custom1, KryptonLanguageManager.InputControlStyles.CustomOne), + new Pair(InputControlStyle.Custom2, KryptonLanguageManager.InputControlStyles.CustomTwo), + new Pair(InputControlStyle.Custom3, KryptonLanguageManager.InputControlStyles.CustomThree), + new Pair(InputControlStyle.PanelClient, KryptonLanguageManager.InputControlStyles.PanelClient), + new Pair(InputControlStyle.PanelAlternate, KryptonLanguageManager.InputControlStyles.PanelAlternate), // new(InputControlStyle.Disabled, "Disabled") }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/KryptonLinkBehaviorConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/KryptonLinkBehaviorConverter.cs index 32f23c29e..34d86f02a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/KryptonLinkBehaviorConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/KryptonLinkBehaviorConverter.cs @@ -33,9 +33,9 @@ internal class KryptonLinkBehaviorConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(KryptonLinkBehavior.AlwaysUnderline, KryptonLanguageManager.LinkBehaviorStrings.AlwaysUnderline), - new(KryptonLinkBehavior.HoverUnderline, KryptonLanguageManager.LinkBehaviorStrings.HoverUnderline), - new(KryptonLinkBehavior.NeverUnderline, KryptonLanguageManager.LinkBehaviorStrings.NeverUnderline) + new Pair(KryptonLinkBehavior.AlwaysUnderline, KryptonLanguageManager.LinkBehaviorStrings.AlwaysUnderline), + new Pair(KryptonLinkBehavior.HoverUnderline, KryptonLanguageManager.LinkBehaviorStrings.HoverUnderline), + new Pair(KryptonLinkBehavior.NeverUnderline, KryptonLanguageManager.LinkBehaviorStrings.NeverUnderline) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/LabelStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/LabelStyleConverter.cs index 5b76c5c5c..5b9f1c455 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/LabelStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/LabelStyleConverter.cs @@ -45,21 +45,21 @@ internal class LabelStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(LabelStyle.NormalControl, KryptonLanguageManager.KryptonLabelStyleStrings.NormalControl), - new(LabelStyle.BoldControl, KryptonLanguageManager.KryptonLabelStyleStrings.BoldControl), - new(LabelStyle.ItalicControl, KryptonLanguageManager.KryptonLabelStyleStrings.ItalicControl), - new(LabelStyle.TitleControl, KryptonLanguageManager.KryptonLabelStyleStrings.TitleControl), - new(LabelStyle.NormalPanel, KryptonLanguageManager.KryptonLabelStyleStrings.NormalPanel), - new(LabelStyle.BoldPanel, KryptonLanguageManager.KryptonLabelStyleStrings.BoldPanel), - new(LabelStyle.ItalicPanel, KryptonLanguageManager.KryptonLabelStyleStrings.ItalicPanel), - new(LabelStyle.TitlePanel, KryptonLanguageManager.KryptonLabelStyleStrings.TitlePanel), - new(LabelStyle.GroupBoxCaption, KryptonLanguageManager.KryptonLabelStyleStrings.GroupBoxCaption), - new(LabelStyle.ToolTip, KryptonLanguageManager.KryptonLabelStyleStrings.ToolTip), - new(LabelStyle.SuperTip, KryptonLanguageManager.KryptonLabelStyleStrings.SuperTip), - new(LabelStyle.KeyTip, KryptonLanguageManager.KryptonLabelStyleStrings.KeyTip), - new(LabelStyle.Custom1, KryptonLanguageManager.KryptonLabelStyleStrings.CustomOne), - new(LabelStyle.Custom2, KryptonLanguageManager.KryptonLabelStyleStrings.CustomTwo), - new(LabelStyle.Custom3, KryptonLanguageManager.KryptonLabelStyleStrings.CustomThree) + new Pair(LabelStyle.NormalControl, KryptonLanguageManager.KryptonLabelStyleStrings.NormalControl), + new Pair(LabelStyle.BoldControl, KryptonLanguageManager.KryptonLabelStyleStrings.BoldControl), + new Pair(LabelStyle.ItalicControl, KryptonLanguageManager.KryptonLabelStyleStrings.ItalicControl), + new Pair(LabelStyle.TitleControl, KryptonLanguageManager.KryptonLabelStyleStrings.TitleControl), + new Pair(LabelStyle.NormalPanel, KryptonLanguageManager.KryptonLabelStyleStrings.NormalPanel), + new Pair(LabelStyle.BoldPanel, KryptonLanguageManager.KryptonLabelStyleStrings.BoldPanel), + new Pair(LabelStyle.ItalicPanel, KryptonLanguageManager.KryptonLabelStyleStrings.ItalicPanel), + new Pair(LabelStyle.TitlePanel, KryptonLanguageManager.KryptonLabelStyleStrings.TitlePanel), + new Pair(LabelStyle.GroupBoxCaption, KryptonLanguageManager.KryptonLabelStyleStrings.GroupBoxCaption), + new Pair(LabelStyle.ToolTip, KryptonLanguageManager.KryptonLabelStyleStrings.ToolTip), + new Pair(LabelStyle.SuperTip, KryptonLanguageManager.KryptonLabelStyleStrings.SuperTip), + new Pair(LabelStyle.KeyTip, KryptonLanguageManager.KryptonLabelStyleStrings.KeyTip), + new Pair(LabelStyle.Custom1, KryptonLanguageManager.KryptonLabelStyleStrings.CustomOne), + new Pair(LabelStyle.Custom2, KryptonLanguageManager.KryptonLabelStyleStrings.CustomTwo), + new Pair(LabelStyle.Custom3, KryptonLanguageManager.KryptonLabelStyleStrings.CustomThree) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteBackStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteBackStyleConverter.cs index 3a7317ed0..3abf0e183 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteBackStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteBackStyleConverter.cs @@ -122,98 +122,120 @@ internal class PaletteBackStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(PaletteBackStyle.ButtonStandalone, KryptonLanguageManager.BackStyleStrings.ButtonStandalone), - new(PaletteBackStyle.ButtonAlternate, KryptonLanguageManager.BackStyleStrings.ButtonAlternate), - new(PaletteBackStyle.ButtonLowProfile, KryptonLanguageManager.BackStyleStrings.ButtonLowProfile), - new(PaletteBackStyle.ButtonButtonSpec, KryptonLanguageManager.BackStyleStrings.ButtonButtonSpec), - new(PaletteBackStyle.ButtonBreadCrumb, KryptonLanguageManager.BackStyleStrings.ButtonBreadCrumb), - new(PaletteBackStyle.ButtonCalendarDay, KryptonLanguageManager.BackStyleStrings.ButtonCalendarDay), - new(PaletteBackStyle.ButtonCluster, KryptonLanguageManager.BackStyleStrings.ButtonCluster), - new(PaletteBackStyle.ButtonGallery, KryptonLanguageManager.BackStyleStrings.ButtonGallery), - new(PaletteBackStyle.ButtonNavigatorStack, KryptonLanguageManager.BackStyleStrings.ButtonNavigatorStack), - new(PaletteBackStyle.ButtonNavigatorOverflow, KryptonLanguageManager.BackStyleStrings.ButtonNavigatorOverflow), - new(PaletteBackStyle.ButtonNavigatorMini, KryptonLanguageManager.BackStyleStrings.ButtonNavigatorMini), - new(PaletteBackStyle.ButtonInputControl, KryptonLanguageManager.BackStyleStrings.ButtonInputControl), - new(PaletteBackStyle.ButtonListItem, KryptonLanguageManager.BackStyleStrings.ButtonListItem), - new(PaletteBackStyle.ButtonForm, KryptonLanguageManager.BackStyleStrings.ButtonForm), - new(PaletteBackStyle.ButtonFormClose, KryptonLanguageManager.BackStyleStrings.ButtonFormClose), - new(PaletteBackStyle.ButtonCommand, KryptonLanguageManager.BackStyleStrings.ButtonCommand), - new(PaletteBackStyle.ButtonCustom1, KryptonLanguageManager.BackStyleStrings.ButtonCustom1), - new(PaletteBackStyle.ButtonCustom2, KryptonLanguageManager.BackStyleStrings.ButtonCustom2), - new(PaletteBackStyle.ButtonCustom3, KryptonLanguageManager.BackStyleStrings.ButtonCustom3), - new(PaletteBackStyle.ControlClient, KryptonLanguageManager.BackStyleStrings.ControlClient), - new(PaletteBackStyle.ControlAlternate, KryptonLanguageManager.BackStyleStrings.ControlAlternate), - new(PaletteBackStyle.ControlGroupBox, KryptonLanguageManager.BackStyleStrings.ControlGroupBox), - new(PaletteBackStyle.ControlToolTip, KryptonLanguageManager.BackStyleStrings.ControlToolTip), - new(PaletteBackStyle.ControlRibbon, KryptonLanguageManager.BackStyleStrings.ControlRibbon), - new(PaletteBackStyle.ControlRibbonAppMenu, KryptonLanguageManager.BackStyleStrings.ControlRibbonAppMenu), - new(PaletteBackStyle.ControlCustom1, KryptonLanguageManager.BackStyleStrings.ControlCustom1), - new(PaletteBackStyle.ControlCustom2, KryptonLanguageManager.BackStyleStrings.ControlCustom2), - new(PaletteBackStyle.ControlCustom3, KryptonLanguageManager.BackStyleStrings.ControlCustom3), - new(PaletteBackStyle.ContextMenuOuter, KryptonLanguageManager.BackStyleStrings.ContextMenuOuter), - new(PaletteBackStyle.ContextMenuInner, KryptonLanguageManager.BackStyleStrings.ContextMenuInner), - new(PaletteBackStyle.ContextMenuHeading, KryptonLanguageManager.BackStyleStrings.ContextMenuHeading), - new(PaletteBackStyle.ContextMenuSeparator, KryptonLanguageManager.BackStyleStrings.ContextMenuSeparator), - new(PaletteBackStyle.ContextMenuItemSplit, KryptonLanguageManager.BackStyleStrings.ContextMenuItemSplit), - new(PaletteBackStyle.ContextMenuItemImage, KryptonLanguageManager.BackStyleStrings.ContextMenuItemImage), - new(PaletteBackStyle.ContextMenuItemImageColumn, KryptonLanguageManager.BackStyleStrings.ContextMenuItemImageColumn), - new(PaletteBackStyle.ContextMenuItemHighlight, KryptonLanguageManager.BackStyleStrings.ContextMenuItemHighlight), - new(PaletteBackStyle.InputControlStandalone, KryptonLanguageManager.BackStyleStrings.InputControlStandalone), - new(PaletteBackStyle.InputControlRibbon, KryptonLanguageManager.BackStyleStrings.InputControlRibbon), - new(PaletteBackStyle.InputControlCustom1, KryptonLanguageManager.BackStyleStrings.InputControlCustom1), - new(PaletteBackStyle.InputControlCustom2, KryptonLanguageManager.BackStyleStrings.InputControlCustom2), - new(PaletteBackStyle.InputControlCustom3, KryptonLanguageManager.BackStyleStrings.InputControlCustom3), - new(PaletteBackStyle.FormMain, KryptonLanguageManager.BackStyleStrings.FormMain), - new(PaletteBackStyle.FormCustom1, KryptonLanguageManager.BackStyleStrings.FormCustom1), - new(PaletteBackStyle.FormCustom2, KryptonLanguageManager.BackStyleStrings.FormCustom2), - new(PaletteBackStyle.FormCustom3, KryptonLanguageManager.BackStyleStrings.FormCustom3), - new(PaletteBackStyle.GridHeaderColumnList, KryptonLanguageManager.BackStyleStrings.GridHeaderColumnList), - new(PaletteBackStyle.GridHeaderRowList, KryptonLanguageManager.BackStyleStrings.GridHeaderRowList), - new(PaletteBackStyle.GridDataCellList, KryptonLanguageManager.BackStyleStrings.GridDataCellList), - new(PaletteBackStyle.GridBackgroundList, KryptonLanguageManager.BackStyleStrings.GridBackgroundList), - new(PaletteBackStyle.GridHeaderColumnSheet, KryptonLanguageManager.BackStyleStrings.GridHeaderColumnSheet), - new(PaletteBackStyle.GridHeaderRowSheet, KryptonLanguageManager.BackStyleStrings.GridHeaderRowSheet), - new(PaletteBackStyle.GridDataCellSheet, KryptonLanguageManager.BackStyleStrings.GridDataCellSheet), - new(PaletteBackStyle.GridBackgroundSheet, KryptonLanguageManager.BackStyleStrings.GridBackgroundSheet), - new(PaletteBackStyle.GridHeaderColumnCustom1, KryptonLanguageManager.BackStyleStrings.GridHeaderColumnCustom1), - new(PaletteBackStyle.GridHeaderColumnCustom2, KryptonLanguageManager.BackStyleStrings.GridHeaderColumnCustom2), - new(PaletteBackStyle.GridHeaderColumnCustom3, KryptonLanguageManager.BackStyleStrings.GridHeaderColumnCustom3), - new(PaletteBackStyle.GridHeaderRowCustom1, KryptonLanguageManager.BackStyleStrings.GridHeaderRowCustom1), - new(PaletteBackStyle.GridHeaderRowCustom2, KryptonLanguageManager.BackStyleStrings.GridHeaderRowCustom2), - new(PaletteBackStyle.GridHeaderRowCustom3, KryptonLanguageManager.BackStyleStrings.GridHeaderRowCustom3), - new(PaletteBackStyle.GridDataCellCustom1, KryptonLanguageManager.BackStyleStrings.GridDataCellCustom1), - new(PaletteBackStyle.GridDataCellCustom2, KryptonLanguageManager.BackStyleStrings.GridDataCellCustom2), - new(PaletteBackStyle.GridDataCellCustom3, KryptonLanguageManager.BackStyleStrings.GridDataCellCustom3), - new(PaletteBackStyle.GridBackgroundCustom1, KryptonLanguageManager.BackStyleStrings.GridBackgroundCustom1), - new(PaletteBackStyle.GridBackgroundCustom2, KryptonLanguageManager.BackStyleStrings.GridBackgroundCustom2), - new(PaletteBackStyle.GridBackgroundCustom3, KryptonLanguageManager.BackStyleStrings.GridBackgroundCustom3), - new(PaletteBackStyle.HeaderPrimary, KryptonLanguageManager.BackStyleStrings.HeaderPrimary), - new(PaletteBackStyle.HeaderSecondary, KryptonLanguageManager.BackStyleStrings.HeaderSecondary), - new(PaletteBackStyle.HeaderDockActive, KryptonLanguageManager.BackStyleStrings.HeaderDockActive), - new(PaletteBackStyle.HeaderDockInactive, KryptonLanguageManager.BackStyleStrings.HeaderDockInactive), - new(PaletteBackStyle.HeaderForm, KryptonLanguageManager.BackStyleStrings.HeaderForm), - new(PaletteBackStyle.HeaderCalendar, KryptonLanguageManager.BackStyleStrings.HeaderCalendar), - new(PaletteBackStyle.HeaderCustom1, KryptonLanguageManager.BackStyleStrings.HeaderCustom1), - new(PaletteBackStyle.HeaderCustom2, KryptonLanguageManager.BackStyleStrings.HeaderCustom2), - new(PaletteBackStyle.HeaderCustom3, KryptonLanguageManager.BackStyleStrings.HeaderCustom3), - new(PaletteBackStyle.PanelClient, KryptonLanguageManager.BackStyleStrings.PanelClient), - new(PaletteBackStyle.PanelAlternate, KryptonLanguageManager.BackStyleStrings.PanelAlternate), - new(PaletteBackStyle.PanelRibbonInactive, KryptonLanguageManager.BackStyleStrings.PanelRibbonInactive), - new(PaletteBackStyle.PanelCustom1, KryptonLanguageManager.BackStyleStrings.PanelCustom1), - new(PaletteBackStyle.PanelCustom2, KryptonLanguageManager.BackStyleStrings.PanelCustom2), - new(PaletteBackStyle.PanelCustom3, KryptonLanguageManager.BackStyleStrings.PanelCustom3), - new(PaletteBackStyle.SeparatorLowProfile, KryptonLanguageManager.BackStyleStrings.SeparatorLowProfile), - new(PaletteBackStyle.SeparatorHighProfile, KryptonLanguageManager.BackStyleStrings.SeparatorHighProfile), - new(PaletteBackStyle.SeparatorHighInternalProfile, KryptonLanguageManager.BackStyleStrings.SeparatorHighInternalProfile), - new(PaletteBackStyle.TabHighProfile, KryptonLanguageManager.BackStyleStrings.TabHighProfile), - new(PaletteBackStyle.TabStandardProfile, KryptonLanguageManager.BackStyleStrings.TabStandardProfile), - new(PaletteBackStyle.TabLowProfile, KryptonLanguageManager.BackStyleStrings.TabLowProfile), - new(PaletteBackStyle.TabOneNote, KryptonLanguageManager.BackStyleStrings.TabOneNote), - new(PaletteBackStyle.TabDock, KryptonLanguageManager.BackStyleStrings.TabDock), - new(PaletteBackStyle.TabDockAutoHidden, KryptonLanguageManager.BackStyleStrings.TabDockAutoHidden), - new(PaletteBackStyle.TabCustom1, KryptonLanguageManager.BackStyleStrings.TabCustom1), - new(PaletteBackStyle.TabCustom2, KryptonLanguageManager.BackStyleStrings.TabCustom2), - new(PaletteBackStyle.TabCustom3, KryptonLanguageManager.BackStyleStrings.TabCustom3) + new Pair(PaletteBackStyle.ButtonStandalone, KryptonLanguageManager.BackStyleStrings.ButtonStandalone), + new Pair(PaletteBackStyle.ButtonAlternate, KryptonLanguageManager.BackStyleStrings.ButtonAlternate), + new Pair(PaletteBackStyle.ButtonLowProfile, KryptonLanguageManager.BackStyleStrings.ButtonLowProfile), + new Pair(PaletteBackStyle.ButtonButtonSpec, KryptonLanguageManager.BackStyleStrings.ButtonButtonSpec), + new Pair(PaletteBackStyle.ButtonBreadCrumb, KryptonLanguageManager.BackStyleStrings.ButtonBreadCrumb), + new Pair(PaletteBackStyle.ButtonCalendarDay, KryptonLanguageManager.BackStyleStrings.ButtonCalendarDay), + new Pair(PaletteBackStyle.ButtonCluster, KryptonLanguageManager.BackStyleStrings.ButtonCluster), + new Pair(PaletteBackStyle.ButtonGallery, KryptonLanguageManager.BackStyleStrings.ButtonGallery), + new Pair(PaletteBackStyle.ButtonNavigatorStack, + KryptonLanguageManager.BackStyleStrings.ButtonNavigatorStack), + new Pair(PaletteBackStyle.ButtonNavigatorOverflow, + KryptonLanguageManager.BackStyleStrings.ButtonNavigatorOverflow), + new Pair(PaletteBackStyle.ButtonNavigatorMini, KryptonLanguageManager.BackStyleStrings.ButtonNavigatorMini), + new Pair(PaletteBackStyle.ButtonInputControl, KryptonLanguageManager.BackStyleStrings.ButtonInputControl), + new Pair(PaletteBackStyle.ButtonListItem, KryptonLanguageManager.BackStyleStrings.ButtonListItem), + new Pair(PaletteBackStyle.ButtonForm, KryptonLanguageManager.BackStyleStrings.ButtonForm), + new Pair(PaletteBackStyle.ButtonFormClose, KryptonLanguageManager.BackStyleStrings.ButtonFormClose), + new Pair(PaletteBackStyle.ButtonCommand, KryptonLanguageManager.BackStyleStrings.ButtonCommand), + new Pair(PaletteBackStyle.ButtonCustom1, KryptonLanguageManager.BackStyleStrings.ButtonCustom1), + new Pair(PaletteBackStyle.ButtonCustom2, KryptonLanguageManager.BackStyleStrings.ButtonCustom2), + new Pair(PaletteBackStyle.ButtonCustom3, KryptonLanguageManager.BackStyleStrings.ButtonCustom3), + new Pair(PaletteBackStyle.ControlClient, KryptonLanguageManager.BackStyleStrings.ControlClient), + new Pair(PaletteBackStyle.ControlAlternate, KryptonLanguageManager.BackStyleStrings.ControlAlternate), + new Pair(PaletteBackStyle.ControlGroupBox, KryptonLanguageManager.BackStyleStrings.ControlGroupBox), + new Pair(PaletteBackStyle.ControlToolTip, KryptonLanguageManager.BackStyleStrings.ControlToolTip), + new Pair(PaletteBackStyle.ControlRibbon, KryptonLanguageManager.BackStyleStrings.ControlRibbon), + new Pair(PaletteBackStyle.ControlRibbonAppMenu, + KryptonLanguageManager.BackStyleStrings.ControlRibbonAppMenu), + new Pair(PaletteBackStyle.ControlCustom1, KryptonLanguageManager.BackStyleStrings.ControlCustom1), + new Pair(PaletteBackStyle.ControlCustom2, KryptonLanguageManager.BackStyleStrings.ControlCustom2), + new Pair(PaletteBackStyle.ControlCustom3, KryptonLanguageManager.BackStyleStrings.ControlCustom3), + new Pair(PaletteBackStyle.ContextMenuOuter, KryptonLanguageManager.BackStyleStrings.ContextMenuOuter), + new Pair(PaletteBackStyle.ContextMenuInner, KryptonLanguageManager.BackStyleStrings.ContextMenuInner), + new Pair(PaletteBackStyle.ContextMenuHeading, KryptonLanguageManager.BackStyleStrings.ContextMenuHeading), + new Pair(PaletteBackStyle.ContextMenuSeparator, + KryptonLanguageManager.BackStyleStrings.ContextMenuSeparator), + new Pair(PaletteBackStyle.ContextMenuItemSplit, + KryptonLanguageManager.BackStyleStrings.ContextMenuItemSplit), + new Pair(PaletteBackStyle.ContextMenuItemImage, + KryptonLanguageManager.BackStyleStrings.ContextMenuItemImage), + new Pair(PaletteBackStyle.ContextMenuItemImageColumn, + KryptonLanguageManager.BackStyleStrings.ContextMenuItemImageColumn), + new Pair(PaletteBackStyle.ContextMenuItemHighlight, + KryptonLanguageManager.BackStyleStrings.ContextMenuItemHighlight), + new Pair(PaletteBackStyle.InputControlStandalone, + KryptonLanguageManager.BackStyleStrings.InputControlStandalone), + new Pair(PaletteBackStyle.InputControlRibbon, KryptonLanguageManager.BackStyleStrings.InputControlRibbon), + new Pair(PaletteBackStyle.InputControlCustom1, KryptonLanguageManager.BackStyleStrings.InputControlCustom1), + new Pair(PaletteBackStyle.InputControlCustom2, KryptonLanguageManager.BackStyleStrings.InputControlCustom2), + new Pair(PaletteBackStyle.InputControlCustom3, KryptonLanguageManager.BackStyleStrings.InputControlCustom3), + new Pair(PaletteBackStyle.FormMain, KryptonLanguageManager.BackStyleStrings.FormMain), + new Pair(PaletteBackStyle.FormCustom1, KryptonLanguageManager.BackStyleStrings.FormCustom1), + new Pair(PaletteBackStyle.FormCustom2, KryptonLanguageManager.BackStyleStrings.FormCustom2), + new Pair(PaletteBackStyle.FormCustom3, KryptonLanguageManager.BackStyleStrings.FormCustom3), + new Pair(PaletteBackStyle.GridHeaderColumnList, + KryptonLanguageManager.BackStyleStrings.GridHeaderColumnList), + new Pair(PaletteBackStyle.GridHeaderRowList, KryptonLanguageManager.BackStyleStrings.GridHeaderRowList), + new Pair(PaletteBackStyle.GridDataCellList, KryptonLanguageManager.BackStyleStrings.GridDataCellList), + new Pair(PaletteBackStyle.GridBackgroundList, KryptonLanguageManager.BackStyleStrings.GridBackgroundList), + new Pair(PaletteBackStyle.GridHeaderColumnSheet, + KryptonLanguageManager.BackStyleStrings.GridHeaderColumnSheet), + new Pair(PaletteBackStyle.GridHeaderRowSheet, KryptonLanguageManager.BackStyleStrings.GridHeaderRowSheet), + new Pair(PaletteBackStyle.GridDataCellSheet, KryptonLanguageManager.BackStyleStrings.GridDataCellSheet), + new Pair(PaletteBackStyle.GridBackgroundSheet, KryptonLanguageManager.BackStyleStrings.GridBackgroundSheet), + new Pair(PaletteBackStyle.GridHeaderColumnCustom1, + KryptonLanguageManager.BackStyleStrings.GridHeaderColumnCustom1), + new Pair(PaletteBackStyle.GridHeaderColumnCustom2, + KryptonLanguageManager.BackStyleStrings.GridHeaderColumnCustom2), + new Pair(PaletteBackStyle.GridHeaderColumnCustom3, + KryptonLanguageManager.BackStyleStrings.GridHeaderColumnCustom3), + new Pair(PaletteBackStyle.GridHeaderRowCustom1, + KryptonLanguageManager.BackStyleStrings.GridHeaderRowCustom1), + new Pair(PaletteBackStyle.GridHeaderRowCustom2, + KryptonLanguageManager.BackStyleStrings.GridHeaderRowCustom2), + new Pair(PaletteBackStyle.GridHeaderRowCustom3, + KryptonLanguageManager.BackStyleStrings.GridHeaderRowCustom3), + new Pair(PaletteBackStyle.GridDataCellCustom1, KryptonLanguageManager.BackStyleStrings.GridDataCellCustom1), + new Pair(PaletteBackStyle.GridDataCellCustom2, KryptonLanguageManager.BackStyleStrings.GridDataCellCustom2), + new Pair(PaletteBackStyle.GridDataCellCustom3, KryptonLanguageManager.BackStyleStrings.GridDataCellCustom3), + new Pair(PaletteBackStyle.GridBackgroundCustom1, + KryptonLanguageManager.BackStyleStrings.GridBackgroundCustom1), + new Pair(PaletteBackStyle.GridBackgroundCustom2, + KryptonLanguageManager.BackStyleStrings.GridBackgroundCustom2), + new Pair(PaletteBackStyle.GridBackgroundCustom3, + KryptonLanguageManager.BackStyleStrings.GridBackgroundCustom3), + new Pair(PaletteBackStyle.HeaderPrimary, KryptonLanguageManager.BackStyleStrings.HeaderPrimary), + new Pair(PaletteBackStyle.HeaderSecondary, KryptonLanguageManager.BackStyleStrings.HeaderSecondary), + new Pair(PaletteBackStyle.HeaderDockActive, KryptonLanguageManager.BackStyleStrings.HeaderDockActive), + new Pair(PaletteBackStyle.HeaderDockInactive, KryptonLanguageManager.BackStyleStrings.HeaderDockInactive), + new Pair(PaletteBackStyle.HeaderForm, KryptonLanguageManager.BackStyleStrings.HeaderForm), + new Pair(PaletteBackStyle.HeaderCalendar, KryptonLanguageManager.BackStyleStrings.HeaderCalendar), + new Pair(PaletteBackStyle.HeaderCustom1, KryptonLanguageManager.BackStyleStrings.HeaderCustom1), + new Pair(PaletteBackStyle.HeaderCustom2, KryptonLanguageManager.BackStyleStrings.HeaderCustom2), + new Pair(PaletteBackStyle.HeaderCustom3, KryptonLanguageManager.BackStyleStrings.HeaderCustom3), + new Pair(PaletteBackStyle.PanelClient, KryptonLanguageManager.BackStyleStrings.PanelClient), + new Pair(PaletteBackStyle.PanelAlternate, KryptonLanguageManager.BackStyleStrings.PanelAlternate), + new Pair(PaletteBackStyle.PanelRibbonInactive, KryptonLanguageManager.BackStyleStrings.PanelRibbonInactive), + new Pair(PaletteBackStyle.PanelCustom1, KryptonLanguageManager.BackStyleStrings.PanelCustom1), + new Pair(PaletteBackStyle.PanelCustom2, KryptonLanguageManager.BackStyleStrings.PanelCustom2), + new Pair(PaletteBackStyle.PanelCustom3, KryptonLanguageManager.BackStyleStrings.PanelCustom3), + new Pair(PaletteBackStyle.SeparatorLowProfile, KryptonLanguageManager.BackStyleStrings.SeparatorLowProfile), + new Pair(PaletteBackStyle.SeparatorHighProfile, + KryptonLanguageManager.BackStyleStrings.SeparatorHighProfile), + new Pair(PaletteBackStyle.SeparatorHighInternalProfile, + KryptonLanguageManager.BackStyleStrings.SeparatorHighInternalProfile), + new Pair(PaletteBackStyle.TabHighProfile, KryptonLanguageManager.BackStyleStrings.TabHighProfile), + new Pair(PaletteBackStyle.TabStandardProfile, KryptonLanguageManager.BackStyleStrings.TabStandardProfile), + new Pair(PaletteBackStyle.TabLowProfile, KryptonLanguageManager.BackStyleStrings.TabLowProfile), + new Pair(PaletteBackStyle.TabOneNote, KryptonLanguageManager.BackStyleStrings.TabOneNote), + new Pair(PaletteBackStyle.TabDock, KryptonLanguageManager.BackStyleStrings.TabDock), + new Pair(PaletteBackStyle.TabDockAutoHidden, KryptonLanguageManager.BackStyleStrings.TabDockAutoHidden), + new Pair(PaletteBackStyle.TabCustom1, KryptonLanguageManager.BackStyleStrings.TabCustom1), + new Pair(PaletteBackStyle.TabCustom2, KryptonLanguageManager.BackStyleStrings.TabCustom2), + new Pair(PaletteBackStyle.TabCustom3, KryptonLanguageManager.BackStyleStrings.TabCustom3) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteBorderStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteBorderStyleConverter.cs index d163acbaf..aa7a80377 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteBorderStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteBorderStyleConverter.cs @@ -111,87 +111,120 @@ internal class PaletteBorderStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(PaletteBorderStyle.ButtonStandalone, KryptonLanguageManager.BorderStyleStrings.ButtonStandalone), - new(PaletteBorderStyle.ButtonAlternate, KryptonLanguageManager.BorderStyleStrings.ButtonAlternate), - new(PaletteBorderStyle.ButtonLowProfile, KryptonLanguageManager.BorderStyleStrings.ButtonLowProfile), - new(PaletteBorderStyle.ButtonButtonSpec, KryptonLanguageManager.BorderStyleStrings.ButtonButtonSpec), - new(PaletteBorderStyle.ButtonBreadCrumb, KryptonLanguageManager.BorderStyleStrings.ButtonBreadCrumb), - new(PaletteBorderStyle.ButtonCalendarDay, KryptonLanguageManager.BorderStyleStrings.ButtonCalendarDay), - new(PaletteBorderStyle.ButtonCluster, KryptonLanguageManager.BorderStyleStrings.ButtonCluster), - new(PaletteBorderStyle.ButtonGallery, KryptonLanguageManager.BorderStyleStrings.ButtonGallery), - new(PaletteBorderStyle.ButtonNavigatorStack, KryptonLanguageManager.BorderStyleStrings.ButtonNavigatorStack), - new(PaletteBorderStyle.ButtonNavigatorOverflow, KryptonLanguageManager.BorderStyleStrings.ButtonNavigatorOverflow), - new(PaletteBorderStyle.ButtonNavigatorMini, KryptonLanguageManager.BorderStyleStrings.ButtonNavigatorMini), - new(PaletteBorderStyle.ButtonInputControl, KryptonLanguageManager.BorderStyleStrings.ButtonInputControl), - new(PaletteBorderStyle.ButtonListItem, KryptonLanguageManager.BorderStyleStrings.ButtonListItem), - new(PaletteBorderStyle.ButtonForm, KryptonLanguageManager.BorderStyleStrings.ButtonForm), - new(PaletteBorderStyle.ButtonFormClose, KryptonLanguageManager.BorderStyleStrings.ButtonFormClose), - new(PaletteBorderStyle.ButtonCommand, KryptonLanguageManager.BorderStyleStrings.ButtonCommand), - new(PaletteBorderStyle.ButtonCustom1, KryptonLanguageManager.BorderStyleStrings.ButtonCustom1), - new(PaletteBorderStyle.ButtonCustom2, KryptonLanguageManager.BorderStyleStrings.ButtonCustom2), - new(PaletteBorderStyle.ButtonCustom3, KryptonLanguageManager.BorderStyleStrings.ButtonCustom3), - new(PaletteBorderStyle.ControlClient, KryptonLanguageManager.BorderStyleStrings.ControlClient), - new(PaletteBorderStyle.ControlAlternate, KryptonLanguageManager.BorderStyleStrings.ControlAlternate), - new(PaletteBorderStyle.ControlGroupBox, KryptonLanguageManager.BorderStyleStrings.ControlGroupBox), - new(PaletteBorderStyle.ControlToolTip, KryptonLanguageManager.BorderStyleStrings.ControlToolTip), - new(PaletteBorderStyle.ControlRibbon, KryptonLanguageManager.BorderStyleStrings.ControlRibbon), - new(PaletteBorderStyle.ControlRibbonAppMenu, KryptonLanguageManager.BorderStyleStrings.ControlRibbonAppMenu), - new(PaletteBorderStyle.ControlCustom1, KryptonLanguageManager.BorderStyleStrings.ControlCustom1), - new(PaletteBorderStyle.ControlCustom2, KryptonLanguageManager.BorderStyleStrings.ControlCustom2), - new(PaletteBorderStyle.ControlCustom3, KryptonLanguageManager.BorderStyleStrings.ControlCustom3), - new(PaletteBorderStyle.ContextMenuOuter, KryptonLanguageManager.BorderStyleStrings.ContextMenuOuter), - new(PaletteBorderStyle.ContextMenuInner, KryptonLanguageManager.BorderStyleStrings.ContextMenuInner), - new(PaletteBorderStyle.ContextMenuHeading, KryptonLanguageManager.BorderStyleStrings.ContextMenuHeading), - new(PaletteBorderStyle.ContextMenuSeparator, KryptonLanguageManager.BorderStyleStrings.ContextMenuSeparator), - new(PaletteBorderStyle.ContextMenuItemSplit, KryptonLanguageManager.BorderStyleStrings.ContextMenuItemSplit), - new(PaletteBorderStyle.ContextMenuItemImage, KryptonLanguageManager.BorderStyleStrings.ContextMenuItemImage), - new(PaletteBorderStyle.ContextMenuItemImageColumn, KryptonLanguageManager.BorderStyleStrings.ContextMenuItemImageColumn), - new(PaletteBorderStyle.ContextMenuItemHighlight, KryptonLanguageManager.BorderStyleStrings.ContextMenuItemHighlight), - new(PaletteBorderStyle.InputControlStandalone, KryptonLanguageManager.BorderStyleStrings.InputControlStandalone), - new(PaletteBorderStyle.InputControlRibbon, KryptonLanguageManager.BorderStyleStrings.InputControlRibbon), - new(PaletteBorderStyle.InputControlCustom1, KryptonLanguageManager.BorderStyleStrings.InputControlCustom1), - new(PaletteBorderStyle.InputControlCustom2, KryptonLanguageManager.BorderStyleStrings.InputControlCustom2), - new(PaletteBorderStyle.InputControlCustom3, KryptonLanguageManager.BorderStyleStrings.InputControlCustom3), - new(PaletteBorderStyle.FormMain, KryptonLanguageManager.BorderStyleStrings.FormMain), - new(PaletteBorderStyle.FormCustom1, KryptonLanguageManager.BorderStyleStrings.FormCustom1), - new(PaletteBorderStyle.FormCustom2, KryptonLanguageManager.BorderStyleStrings.FormCustom2), - new(PaletteBorderStyle.FormCustom3, KryptonLanguageManager.BorderStyleStrings.FormCustom3), - new(PaletteBorderStyle.GridHeaderColumnList, KryptonLanguageManager.BorderStyleStrings.GridHeaderColumnList), - new(PaletteBorderStyle.GridHeaderRowList, KryptonLanguageManager.BorderStyleStrings.GridHeaderRowList), - new(PaletteBorderStyle.GridDataCellList, KryptonLanguageManager.BorderStyleStrings.GridDataCellList), - new(PaletteBorderStyle.GridHeaderColumnSheet, KryptonLanguageManager.BorderStyleStrings.GridHeaderColumnSheet), - new(PaletteBorderStyle.GridHeaderRowSheet, KryptonLanguageManager.BorderStyleStrings.GridHeaderRowSheet), - new(PaletteBorderStyle.GridDataCellSheet, KryptonLanguageManager.BorderStyleStrings.GridDataCellSheet), - new(PaletteBorderStyle.GridHeaderColumnCustom1, KryptonLanguageManager.BorderStyleStrings.GridHeaderColumnCustom1), - new(PaletteBorderStyle.GridHeaderColumnCustom2, KryptonLanguageManager.BorderStyleStrings.GridHeaderColumnCustom2), - new(PaletteBorderStyle.GridHeaderColumnCustom3, KryptonLanguageManager.BorderStyleStrings.GridHeaderColumnCustom3), - new(PaletteBorderStyle.GridHeaderRowCustom1, KryptonLanguageManager.BorderStyleStrings.GridHeaderRowCustom1), - new(PaletteBorderStyle.GridHeaderRowCustom2, KryptonLanguageManager.BorderStyleStrings.GridHeaderRowCustom2), - new(PaletteBorderStyle.GridHeaderRowCustom3, KryptonLanguageManager.BorderStyleStrings.GridHeaderRowCustom3), - new(PaletteBorderStyle.GridDataCellCustom1, KryptonLanguageManager.BorderStyleStrings.GridDataCellCustom1), - new(PaletteBorderStyle.GridDataCellCustom2, KryptonLanguageManager.BorderStyleStrings.GridDataCellCustom2), - new(PaletteBorderStyle.GridDataCellCustom3, KryptonLanguageManager.BorderStyleStrings.GridDataCellCustom3), - new(PaletteBorderStyle.HeaderPrimary, KryptonLanguageManager.BorderStyleStrings.HeaderPrimary), - new(PaletteBorderStyle.HeaderSecondary, KryptonLanguageManager.BorderStyleStrings.HeaderSecondary), - new(PaletteBorderStyle.HeaderDockActive, KryptonLanguageManager.BorderStyleStrings.HeaderDockActive), - new(PaletteBorderStyle.HeaderDockInactive, KryptonLanguageManager.BorderStyleStrings.HeaderDockInactive), - new(PaletteBorderStyle.HeaderForm, KryptonLanguageManager.BorderStyleStrings.HeaderForm), - new(PaletteBorderStyle.HeaderCalendar, KryptonLanguageManager.BorderStyleStrings.HeaderCalendar), - new(PaletteBorderStyle.HeaderCustom1, KryptonLanguageManager.BorderStyleStrings.HeaderCustom1), - new(PaletteBorderStyle.HeaderCustom2, KryptonLanguageManager.BorderStyleStrings.HeaderCustom2), - new(PaletteBorderStyle.HeaderCustom3, KryptonLanguageManager.BorderStyleStrings.HeaderCustom3), - new(PaletteBorderStyle.SeparatorLowProfile, KryptonLanguageManager.BorderStyleStrings.SeparatorLowProfile), - new(PaletteBorderStyle.SeparatorHighProfile, KryptonLanguageManager.BorderStyleStrings.SeparatorHighProfile), - new(PaletteBorderStyle.SeparatorHighInternalProfile, KryptonLanguageManager.BorderStyleStrings.SeparatorHighInternalProfile), - new(PaletteBorderStyle.TabHighProfile, KryptonLanguageManager.BorderStyleStrings.TabHighProfile), - new(PaletteBorderStyle.TabStandardProfile, KryptonLanguageManager.BorderStyleStrings.TabStandardProfile), - new(PaletteBorderStyle.TabLowProfile, KryptonLanguageManager.BorderStyleStrings.TabLowProfile), - new(PaletteBorderStyle.TabOneNote, KryptonLanguageManager.BorderStyleStrings.TabOneNote), - new(PaletteBorderStyle.TabDock, KryptonLanguageManager.BorderStyleStrings.TabDock), - new(PaletteBorderStyle.TabDockAutoHidden, KryptonLanguageManager.BorderStyleStrings.TabDockAutoHidden), - new(PaletteBorderStyle.TabCustom1, KryptonLanguageManager.BorderStyleStrings.TabCustom1), - new(PaletteBorderStyle.TabCustom2, KryptonLanguageManager.BorderStyleStrings.TabCustom2), - new(PaletteBorderStyle.TabCustom3, KryptonLanguageManager.BorderStyleStrings.TabCustom3) + new Pair(PaletteBorderStyle.ButtonStandalone, KryptonLanguageManager.BorderStyleStrings.ButtonStandalone), + new Pair(PaletteBorderStyle.ButtonAlternate, KryptonLanguageManager.BorderStyleStrings.ButtonAlternate), + new Pair(PaletteBorderStyle.ButtonLowProfile, KryptonLanguageManager.BorderStyleStrings.ButtonLowProfile), + new Pair(PaletteBorderStyle.ButtonButtonSpec, KryptonLanguageManager.BorderStyleStrings.ButtonButtonSpec), + new Pair(PaletteBorderStyle.ButtonBreadCrumb, KryptonLanguageManager.BorderStyleStrings.ButtonBreadCrumb), + new Pair(PaletteBorderStyle.ButtonCalendarDay, KryptonLanguageManager.BorderStyleStrings.ButtonCalendarDay), + new Pair(PaletteBorderStyle.ButtonCluster, KryptonLanguageManager.BorderStyleStrings.ButtonCluster), + new Pair(PaletteBorderStyle.ButtonGallery, KryptonLanguageManager.BorderStyleStrings.ButtonGallery), + new Pair(PaletteBorderStyle.ButtonNavigatorStack, + KryptonLanguageManager.BorderStyleStrings.ButtonNavigatorStack), + new Pair(PaletteBorderStyle.ButtonNavigatorOverflow, + KryptonLanguageManager.BorderStyleStrings.ButtonNavigatorOverflow), + new Pair(PaletteBorderStyle.ButtonNavigatorMini, + KryptonLanguageManager.BorderStyleStrings.ButtonNavigatorMini), + new Pair(PaletteBorderStyle.ButtonInputControl, + KryptonLanguageManager.BorderStyleStrings.ButtonInputControl), + new Pair(PaletteBorderStyle.ButtonListItem, KryptonLanguageManager.BorderStyleStrings.ButtonListItem), + new Pair(PaletteBorderStyle.ButtonForm, KryptonLanguageManager.BorderStyleStrings.ButtonForm), + new Pair(PaletteBorderStyle.ButtonFormClose, KryptonLanguageManager.BorderStyleStrings.ButtonFormClose), + new Pair(PaletteBorderStyle.ButtonCommand, KryptonLanguageManager.BorderStyleStrings.ButtonCommand), + new Pair(PaletteBorderStyle.ButtonCustom1, KryptonLanguageManager.BorderStyleStrings.ButtonCustom1), + new Pair(PaletteBorderStyle.ButtonCustom2, KryptonLanguageManager.BorderStyleStrings.ButtonCustom2), + new Pair(PaletteBorderStyle.ButtonCustom3, KryptonLanguageManager.BorderStyleStrings.ButtonCustom3), + new Pair(PaletteBorderStyle.ControlClient, KryptonLanguageManager.BorderStyleStrings.ControlClient), + new Pair(PaletteBorderStyle.ControlAlternate, KryptonLanguageManager.BorderStyleStrings.ControlAlternate), + new Pair(PaletteBorderStyle.ControlGroupBox, KryptonLanguageManager.BorderStyleStrings.ControlGroupBox), + new Pair(PaletteBorderStyle.ControlToolTip, KryptonLanguageManager.BorderStyleStrings.ControlToolTip), + new Pair(PaletteBorderStyle.ControlRibbon, KryptonLanguageManager.BorderStyleStrings.ControlRibbon), + new Pair(PaletteBorderStyle.ControlRibbonAppMenu, + KryptonLanguageManager.BorderStyleStrings.ControlRibbonAppMenu), + new Pair(PaletteBorderStyle.ControlCustom1, KryptonLanguageManager.BorderStyleStrings.ControlCustom1), + new Pair(PaletteBorderStyle.ControlCustom2, KryptonLanguageManager.BorderStyleStrings.ControlCustom2), + new Pair(PaletteBorderStyle.ControlCustom3, KryptonLanguageManager.BorderStyleStrings.ControlCustom3), + new Pair(PaletteBorderStyle.ContextMenuOuter, KryptonLanguageManager.BorderStyleStrings.ContextMenuOuter), + new Pair(PaletteBorderStyle.ContextMenuInner, KryptonLanguageManager.BorderStyleStrings.ContextMenuInner), + new Pair(PaletteBorderStyle.ContextMenuHeading, + KryptonLanguageManager.BorderStyleStrings.ContextMenuHeading), + new Pair(PaletteBorderStyle.ContextMenuSeparator, + KryptonLanguageManager.BorderStyleStrings.ContextMenuSeparator), + new Pair(PaletteBorderStyle.ContextMenuItemSplit, + KryptonLanguageManager.BorderStyleStrings.ContextMenuItemSplit), + new Pair(PaletteBorderStyle.ContextMenuItemImage, + KryptonLanguageManager.BorderStyleStrings.ContextMenuItemImage), + new Pair(PaletteBorderStyle.ContextMenuItemImageColumn, + KryptonLanguageManager.BorderStyleStrings.ContextMenuItemImageColumn), + new Pair(PaletteBorderStyle.ContextMenuItemHighlight, + KryptonLanguageManager.BorderStyleStrings.ContextMenuItemHighlight), + new Pair(PaletteBorderStyle.InputControlStandalone, + KryptonLanguageManager.BorderStyleStrings.InputControlStandalone), + new Pair(PaletteBorderStyle.InputControlRibbon, + KryptonLanguageManager.BorderStyleStrings.InputControlRibbon), + new Pair(PaletteBorderStyle.InputControlCustom1, + KryptonLanguageManager.BorderStyleStrings.InputControlCustom1), + new Pair(PaletteBorderStyle.InputControlCustom2, + KryptonLanguageManager.BorderStyleStrings.InputControlCustom2), + new Pair(PaletteBorderStyle.InputControlCustom3, + KryptonLanguageManager.BorderStyleStrings.InputControlCustom3), + new Pair(PaletteBorderStyle.FormMain, KryptonLanguageManager.BorderStyleStrings.FormMain), + new Pair(PaletteBorderStyle.FormCustom1, KryptonLanguageManager.BorderStyleStrings.FormCustom1), + new Pair(PaletteBorderStyle.FormCustom2, KryptonLanguageManager.BorderStyleStrings.FormCustom2), + new Pair(PaletteBorderStyle.FormCustom3, KryptonLanguageManager.BorderStyleStrings.FormCustom3), + new Pair(PaletteBorderStyle.GridHeaderColumnList, + KryptonLanguageManager.BorderStyleStrings.GridHeaderColumnList), + new Pair(PaletteBorderStyle.GridHeaderRowList, KryptonLanguageManager.BorderStyleStrings.GridHeaderRowList), + new Pair(PaletteBorderStyle.GridDataCellList, KryptonLanguageManager.BorderStyleStrings.GridDataCellList), + new Pair(PaletteBorderStyle.GridHeaderColumnSheet, + KryptonLanguageManager.BorderStyleStrings.GridHeaderColumnSheet), + new Pair(PaletteBorderStyle.GridHeaderRowSheet, + KryptonLanguageManager.BorderStyleStrings.GridHeaderRowSheet), + new Pair(PaletteBorderStyle.GridDataCellSheet, KryptonLanguageManager.BorderStyleStrings.GridDataCellSheet), + new Pair(PaletteBorderStyle.GridHeaderColumnCustom1, + KryptonLanguageManager.BorderStyleStrings.GridHeaderColumnCustom1), + new Pair(PaletteBorderStyle.GridHeaderColumnCustom2, + KryptonLanguageManager.BorderStyleStrings.GridHeaderColumnCustom2), + new Pair(PaletteBorderStyle.GridHeaderColumnCustom3, + KryptonLanguageManager.BorderStyleStrings.GridHeaderColumnCustom3), + new Pair(PaletteBorderStyle.GridHeaderRowCustom1, + KryptonLanguageManager.BorderStyleStrings.GridHeaderRowCustom1), + new Pair(PaletteBorderStyle.GridHeaderRowCustom2, + KryptonLanguageManager.BorderStyleStrings.GridHeaderRowCustom2), + new Pair(PaletteBorderStyle.GridHeaderRowCustom3, + KryptonLanguageManager.BorderStyleStrings.GridHeaderRowCustom3), + new Pair(PaletteBorderStyle.GridDataCellCustom1, + KryptonLanguageManager.BorderStyleStrings.GridDataCellCustom1), + new Pair(PaletteBorderStyle.GridDataCellCustom2, + KryptonLanguageManager.BorderStyleStrings.GridDataCellCustom2), + new Pair(PaletteBorderStyle.GridDataCellCustom3, + KryptonLanguageManager.BorderStyleStrings.GridDataCellCustom3), + new Pair(PaletteBorderStyle.HeaderPrimary, KryptonLanguageManager.BorderStyleStrings.HeaderPrimary), + new Pair(PaletteBorderStyle.HeaderSecondary, KryptonLanguageManager.BorderStyleStrings.HeaderSecondary), + new Pair(PaletteBorderStyle.HeaderDockActive, KryptonLanguageManager.BorderStyleStrings.HeaderDockActive), + new Pair(PaletteBorderStyle.HeaderDockInactive, + KryptonLanguageManager.BorderStyleStrings.HeaderDockInactive), + new Pair(PaletteBorderStyle.HeaderForm, KryptonLanguageManager.BorderStyleStrings.HeaderForm), + new Pair(PaletteBorderStyle.HeaderCalendar, KryptonLanguageManager.BorderStyleStrings.HeaderCalendar), + new Pair(PaletteBorderStyle.HeaderCustom1, KryptonLanguageManager.BorderStyleStrings.HeaderCustom1), + new Pair(PaletteBorderStyle.HeaderCustom2, KryptonLanguageManager.BorderStyleStrings.HeaderCustom2), + new Pair(PaletteBorderStyle.HeaderCustom3, KryptonLanguageManager.BorderStyleStrings.HeaderCustom3), + new Pair(PaletteBorderStyle.SeparatorLowProfile, + KryptonLanguageManager.BorderStyleStrings.SeparatorLowProfile), + new Pair(PaletteBorderStyle.SeparatorHighProfile, + KryptonLanguageManager.BorderStyleStrings.SeparatorHighProfile), + new Pair(PaletteBorderStyle.SeparatorHighInternalProfile, + KryptonLanguageManager.BorderStyleStrings.SeparatorHighInternalProfile), + new Pair(PaletteBorderStyle.TabHighProfile, KryptonLanguageManager.BorderStyleStrings.TabHighProfile), + new Pair(PaletteBorderStyle.TabStandardProfile, + KryptonLanguageManager.BorderStyleStrings.TabStandardProfile), + new Pair(PaletteBorderStyle.TabLowProfile, KryptonLanguageManager.BorderStyleStrings.TabLowProfile), + new Pair(PaletteBorderStyle.TabOneNote, KryptonLanguageManager.BorderStyleStrings.TabOneNote), + new Pair(PaletteBorderStyle.TabDock, KryptonLanguageManager.BorderStyleStrings.TabDock), + new Pair(PaletteBorderStyle.TabDockAutoHidden, KryptonLanguageManager.BorderStyleStrings.TabDockAutoHidden), + new Pair(PaletteBorderStyle.TabCustom1, KryptonLanguageManager.BorderStyleStrings.TabCustom1), + new Pair(PaletteBorderStyle.TabCustom2, KryptonLanguageManager.BorderStyleStrings.TabCustom2), + new Pair(PaletteBorderStyle.TabCustom3, KryptonLanguageManager.BorderStyleStrings.TabCustom3) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonOrientationConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonOrientationConverter.cs index 4ddacdf22..4b6d7da62 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonOrientationConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonOrientationConverter.cs @@ -36,12 +36,12 @@ internal class PaletteButtonOrientationConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(PaletteButtonOrientation.Inherit, KryptonLanguageManager.ButtonOrientationStrings.Inherit), - new(PaletteButtonOrientation.Auto, KryptonLanguageManager.ButtonOrientationStrings.Auto), - new(PaletteButtonOrientation.FixedTop, KryptonLanguageManager.ButtonOrientationStrings.FixedTop), - new(PaletteButtonOrientation.FixedBottom, KryptonLanguageManager.ButtonOrientationStrings.FixedBottom), - new(PaletteButtonOrientation.FixedLeft, KryptonLanguageManager.ButtonOrientationStrings.FixedLeft), - new(PaletteButtonOrientation.FixedRight, KryptonLanguageManager.ButtonOrientationStrings.FixedRight) + new Pair(PaletteButtonOrientation.Inherit, KryptonLanguageManager.ButtonOrientationStrings.Inherit), + new Pair(PaletteButtonOrientation.Auto, KryptonLanguageManager.ButtonOrientationStrings.Auto), + new Pair(PaletteButtonOrientation.FixedTop, KryptonLanguageManager.ButtonOrientationStrings.FixedTop), + new Pair(PaletteButtonOrientation.FixedBottom, KryptonLanguageManager.ButtonOrientationStrings.FixedBottom), + new Pair(PaletteButtonOrientation.FixedLeft, KryptonLanguageManager.ButtonOrientationStrings.FixedLeft), + new Pair(PaletteButtonOrientation.FixedRight, KryptonLanguageManager.ButtonOrientationStrings.FixedRight) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonSpecStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonSpecStyleConverter.cs index f8afeff25..8e6444afc 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonSpecStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonSpecStyleConverter.cs @@ -68,44 +68,45 @@ internal class PaletteButtonSpecStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(PaletteButtonSpecStyle.Close, KryptonLanguageManager.ButtonSpecStyles.Close), - new(PaletteButtonSpecStyle.Context, KryptonLanguageManager.ButtonSpecStyles.Context), - new(PaletteButtonSpecStyle.Next, KryptonLanguageManager.ButtonSpecStyles.Next), - new(PaletteButtonSpecStyle.Previous, KryptonLanguageManager.ButtonSpecStyles.Previous), - new(PaletteButtonSpecStyle.Generic, KryptonLanguageManager.ButtonSpecStyles.Generic), - new(PaletteButtonSpecStyle.ArrowLeft, KryptonLanguageManager.ButtonSpecStyles.ArrowLeft), - new(PaletteButtonSpecStyle.ArrowRight, KryptonLanguageManager.ButtonSpecStyles.ArrowRight), - new(PaletteButtonSpecStyle.ArrowUp, KryptonLanguageManager.ButtonSpecStyles.ArrowUp), - new(PaletteButtonSpecStyle.ArrowDown, KryptonLanguageManager.ButtonSpecStyles.ArrowDown), - new(PaletteButtonSpecStyle.DropDown, KryptonLanguageManager.ButtonSpecStyles.DropDown), - new(PaletteButtonSpecStyle.PinVertical, KryptonLanguageManager.ButtonSpecStyles.PinVertical), - new(PaletteButtonSpecStyle.PinHorizontal, KryptonLanguageManager.ButtonSpecStyles.PinHorizontal), - new(PaletteButtonSpecStyle.FormClose, KryptonLanguageManager.ButtonSpecStyles.FormClose), - new(PaletteButtonSpecStyle.FormMax, KryptonLanguageManager.ButtonSpecStyles.FormMaximise), - new(PaletteButtonSpecStyle.FormMin, KryptonLanguageManager.ButtonSpecStyles.FormMinimise), - new(PaletteButtonSpecStyle.FormRestore, KryptonLanguageManager.ButtonSpecStyles.FormRestore), - new(PaletteButtonSpecStyle.FormHelp, KryptonLanguageManager.ButtonSpecStyles.FormHelp), - new(PaletteButtonSpecStyle.PendantClose, KryptonLanguageManager.ButtonSpecStyles.PendantClose), - new(PaletteButtonSpecStyle.PendantMin, KryptonLanguageManager.ButtonSpecStyles.PendantMinimise), - new(PaletteButtonSpecStyle.PendantRestore, KryptonLanguageManager.ButtonSpecStyles.PendantRestore), - new(PaletteButtonSpecStyle.WorkspaceMaximize, KryptonLanguageManager.ButtonSpecStyles.WorkspaceMaximise), - new(PaletteButtonSpecStyle.WorkspaceRestore, KryptonLanguageManager.ButtonSpecStyles.WorkspaceRestore), - new(PaletteButtonSpecStyle.RibbonMinimize, KryptonLanguageManager.ButtonSpecStyles.RibbonMinimise), - new(PaletteButtonSpecStyle.RibbonExpand, KryptonLanguageManager.ButtonSpecStyles.RibbonExpand), - new(PaletteButtonSpecStyle.New, KryptonLanguageManager.ToolBarStrings.New), - new(PaletteButtonSpecStyle.Open, KryptonLanguageManager.ToolBarStrings.Open), - new(PaletteButtonSpecStyle.Save, KryptonLanguageManager.ToolBarStrings.Save), - new(PaletteButtonSpecStyle.SaveAs, KryptonLanguageManager.ToolBarStrings.SaveAs), - new(PaletteButtonSpecStyle.SaveAll, KryptonLanguageManager.ToolBarStrings.SaveAll), - new(PaletteButtonSpecStyle.Cut, KryptonLanguageManager.ToolBarStrings.Cut), - new(PaletteButtonSpecStyle.Copy, KryptonLanguageManager.ToolBarStrings.Copy), - new(PaletteButtonSpecStyle.Paste, KryptonLanguageManager.ToolBarStrings.Paste), - new(PaletteButtonSpecStyle.Undo, KryptonLanguageManager.ToolBarStrings.Undo), - new(PaletteButtonSpecStyle.Redo, KryptonLanguageManager.ToolBarStrings.Redo), - new(PaletteButtonSpecStyle.PageSetup, KryptonLanguageManager.ToolBarStrings.PageSetup), - new(PaletteButtonSpecStyle.PrintPreview, KryptonLanguageManager.ToolBarStrings.PrintPreview), - new(PaletteButtonSpecStyle.Print, KryptonLanguageManager.ToolBarStrings.Print), - new(PaletteButtonSpecStyle.QuickPrint, KryptonLanguageManager.ToolBarStrings.QuickPrint) + new Pair(PaletteButtonSpecStyle.Close, KryptonLanguageManager.ButtonSpecStyles.Close), + new Pair(PaletteButtonSpecStyle.Context, KryptonLanguageManager.ButtonSpecStyles.Context), + new Pair(PaletteButtonSpecStyle.Next, KryptonLanguageManager.ButtonSpecStyles.Next), + new Pair(PaletteButtonSpecStyle.Previous, KryptonLanguageManager.ButtonSpecStyles.Previous), + new Pair(PaletteButtonSpecStyle.Generic, KryptonLanguageManager.ButtonSpecStyles.Generic), + new Pair(PaletteButtonSpecStyle.ArrowLeft, KryptonLanguageManager.ButtonSpecStyles.ArrowLeft), + new Pair(PaletteButtonSpecStyle.ArrowRight, KryptonLanguageManager.ButtonSpecStyles.ArrowRight), + new Pair(PaletteButtonSpecStyle.ArrowUp, KryptonLanguageManager.ButtonSpecStyles.ArrowUp), + new Pair(PaletteButtonSpecStyle.ArrowDown, KryptonLanguageManager.ButtonSpecStyles.ArrowDown), + new Pair(PaletteButtonSpecStyle.DropDown, KryptonLanguageManager.ButtonSpecStyles.DropDown), + new Pair(PaletteButtonSpecStyle.PinVertical, KryptonLanguageManager.ButtonSpecStyles.PinVertical), + new Pair(PaletteButtonSpecStyle.PinHorizontal, KryptonLanguageManager.ButtonSpecStyles.PinHorizontal), + new Pair(PaletteButtonSpecStyle.FormClose, KryptonLanguageManager.ButtonSpecStyles.FormClose), + new Pair(PaletteButtonSpecStyle.FormMax, KryptonLanguageManager.ButtonSpecStyles.FormMaximise), + new Pair(PaletteButtonSpecStyle.FormMin, KryptonLanguageManager.ButtonSpecStyles.FormMinimise), + new Pair(PaletteButtonSpecStyle.FormRestore, KryptonLanguageManager.ButtonSpecStyles.FormRestore), + new Pair(PaletteButtonSpecStyle.FormHelp, KryptonLanguageManager.ButtonSpecStyles.FormHelp), + new Pair(PaletteButtonSpecStyle.PendantClose, KryptonLanguageManager.ButtonSpecStyles.PendantClose), + new Pair(PaletteButtonSpecStyle.PendantMin, KryptonLanguageManager.ButtonSpecStyles.PendantMinimise), + new Pair(PaletteButtonSpecStyle.PendantRestore, KryptonLanguageManager.ButtonSpecStyles.PendantRestore), + new Pair(PaletteButtonSpecStyle.WorkspaceMaximize, + KryptonLanguageManager.ButtonSpecStyles.WorkspaceMaximise), + new Pair(PaletteButtonSpecStyle.WorkspaceRestore, KryptonLanguageManager.ButtonSpecStyles.WorkspaceRestore), + new Pair(PaletteButtonSpecStyle.RibbonMinimize, KryptonLanguageManager.ButtonSpecStyles.RibbonMinimise), + new Pair(PaletteButtonSpecStyle.RibbonExpand, KryptonLanguageManager.ButtonSpecStyles.RibbonExpand), + new Pair(PaletteButtonSpecStyle.New, KryptonLanguageManager.ToolBarStrings.New), + new Pair(PaletteButtonSpecStyle.Open, KryptonLanguageManager.ToolBarStrings.Open), + new Pair(PaletteButtonSpecStyle.Save, KryptonLanguageManager.ToolBarStrings.Save), + new Pair(PaletteButtonSpecStyle.SaveAs, KryptonLanguageManager.ToolBarStrings.SaveAs), + new Pair(PaletteButtonSpecStyle.SaveAll, KryptonLanguageManager.ToolBarStrings.SaveAll), + new Pair(PaletteButtonSpecStyle.Cut, KryptonLanguageManager.ToolBarStrings.Cut), + new Pair(PaletteButtonSpecStyle.Copy, KryptonLanguageManager.ToolBarStrings.Copy), + new Pair(PaletteButtonSpecStyle.Paste, KryptonLanguageManager.ToolBarStrings.Paste), + new Pair(PaletteButtonSpecStyle.Undo, KryptonLanguageManager.ToolBarStrings.Undo), + new Pair(PaletteButtonSpecStyle.Redo, KryptonLanguageManager.ToolBarStrings.Redo), + new Pair(PaletteButtonSpecStyle.PageSetup, KryptonLanguageManager.ToolBarStrings.PageSetup), + new Pair(PaletteButtonSpecStyle.PrintPreview, KryptonLanguageManager.ToolBarStrings.PrintPreview), + new Pair(PaletteButtonSpecStyle.Print, KryptonLanguageManager.ToolBarStrings.Print), + new Pair(PaletteButtonSpecStyle.QuickPrint, KryptonLanguageManager.ToolBarStrings.QuickPrint) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonStyleConverter.cs index b77ae8b88..06981cbae 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteButtonStyleConverter.cs @@ -48,24 +48,24 @@ internal class PaletteButtonStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(PaletteButtonStyle.Inherit, KryptonLanguageManager.PaletteButtonStyles.Inherit), - new(PaletteButtonStyle.Standalone, KryptonLanguageManager.PaletteButtonStyles.Standalone), - new(PaletteButtonStyle.Alternate, KryptonLanguageManager.PaletteButtonStyles.Alternate), - new(PaletteButtonStyle.LowProfile, KryptonLanguageManager.PaletteButtonStyles.LowProfile), - new(PaletteButtonStyle.BreadCrumb, KryptonLanguageManager.PaletteButtonStyles.BreadCrumb), - new(PaletteButtonStyle.Cluster, KryptonLanguageManager.PaletteButtonStyles.Cluster), - new(PaletteButtonStyle.NavigatorStack, KryptonLanguageManager.PaletteButtonStyles.NavigatorStack), - new(PaletteButtonStyle.NavigatorOverflow, KryptonLanguageManager.PaletteButtonStyles.NavigatorOverflow), - new(PaletteButtonStyle.NavigatorMini, KryptonLanguageManager.PaletteButtonStyles.NavigatorMini), - new(PaletteButtonStyle.InputControl, KryptonLanguageManager.PaletteButtonStyles.InputControl), - new(PaletteButtonStyle.ListItem, KryptonLanguageManager.PaletteButtonStyles.ListItem), - new(PaletteButtonStyle.Form, KryptonLanguageManager.PaletteButtonStyles.Form), - new(PaletteButtonStyle.FormClose, KryptonLanguageManager.PaletteButtonStyles.FormClose), - new(PaletteButtonStyle.ButtonSpec, KryptonLanguageManager.PaletteButtonStyles.ButtonSpec), - new(PaletteButtonStyle.Command, KryptonLanguageManager.PaletteButtonStyles.Command), - new(PaletteButtonStyle.Custom1, KryptonLanguageManager.PaletteButtonStyles.Custom1), - new(PaletteButtonStyle.Custom2, KryptonLanguageManager.PaletteButtonStyles.Custom2), - new(PaletteButtonStyle.Custom3, KryptonLanguageManager.PaletteButtonStyles.Custom3) + new Pair(PaletteButtonStyle.Inherit, KryptonLanguageManager.PaletteButtonStyles.Inherit), + new Pair(PaletteButtonStyle.Standalone, KryptonLanguageManager.PaletteButtonStyles.Standalone), + new Pair(PaletteButtonStyle.Alternate, KryptonLanguageManager.PaletteButtonStyles.Alternate), + new Pair(PaletteButtonStyle.LowProfile, KryptonLanguageManager.PaletteButtonStyles.LowProfile), + new Pair(PaletteButtonStyle.BreadCrumb, KryptonLanguageManager.PaletteButtonStyles.BreadCrumb), + new Pair(PaletteButtonStyle.Cluster, KryptonLanguageManager.PaletteButtonStyles.Cluster), + new Pair(PaletteButtonStyle.NavigatorStack, KryptonLanguageManager.PaletteButtonStyles.NavigatorStack), + new Pair(PaletteButtonStyle.NavigatorOverflow, KryptonLanguageManager.PaletteButtonStyles.NavigatorOverflow), + new Pair(PaletteButtonStyle.NavigatorMini, KryptonLanguageManager.PaletteButtonStyles.NavigatorMini), + new Pair(PaletteButtonStyle.InputControl, KryptonLanguageManager.PaletteButtonStyles.InputControl), + new Pair(PaletteButtonStyle.ListItem, KryptonLanguageManager.PaletteButtonStyles.ListItem), + new Pair(PaletteButtonStyle.Form, KryptonLanguageManager.PaletteButtonStyles.Form), + new Pair(PaletteButtonStyle.FormClose, KryptonLanguageManager.PaletteButtonStyles.FormClose), + new Pair(PaletteButtonStyle.ButtonSpec, KryptonLanguageManager.PaletteButtonStyles.ButtonSpec), + new Pair(PaletteButtonStyle.Command, KryptonLanguageManager.PaletteButtonStyles.Command), + new Pair(PaletteButtonStyle.Custom1, KryptonLanguageManager.PaletteButtonStyles.Custom1), + new Pair(PaletteButtonStyle.Custom2, KryptonLanguageManager.PaletteButtonStyles.Custom2), + new Pair(PaletteButtonStyle.Custom3, KryptonLanguageManager.PaletteButtonStyles.Custom3) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteContentStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteContentStyleConverter.cs index 6f9a20331..75de53d0d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteContentStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteContentStyleConverter.cs @@ -105,81 +105,117 @@ internal class PaletteContentStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(PaletteContentStyle.ButtonStandalone, KryptonLanguageManager.ContentStyleStrings.ButtonStandalone), - new(PaletteContentStyle.ButtonLowProfile, KryptonLanguageManager.ContentStyleStrings.ButtonLowProfile), - new(PaletteContentStyle.ButtonButtonSpec, KryptonLanguageManager.ContentStyleStrings.ButtonButtonSpec), - new(PaletteContentStyle.ButtonBreadCrumb, KryptonLanguageManager.ContentStyleStrings.ButtonBreadCrumb), - new(PaletteContentStyle.ButtonCalendarDay, KryptonLanguageManager.ContentStyleStrings.ButtonCalendarDay), - new(PaletteContentStyle.ButtonCluster, KryptonLanguageManager.ContentStyleStrings.ButtonCluster), - new(PaletteContentStyle.ButtonGallery, KryptonLanguageManager.ContentStyleStrings.ButtonGallery), - new(PaletteContentStyle.ButtonNavigatorStack, KryptonLanguageManager.ContentStyleStrings.ButtonNavigatorStack), - new(PaletteContentStyle.ButtonNavigatorOverflow, KryptonLanguageManager.ContentStyleStrings.ButtonNavigatorOverflow), - new(PaletteContentStyle.ButtonNavigatorMini, KryptonLanguageManager.ContentStyleStrings.ButtonNavigatorMini), - new(PaletteContentStyle.ButtonInputControl, KryptonLanguageManager.ContentStyleStrings.ButtonInputControl), - new(PaletteContentStyle.ButtonListItem, KryptonLanguageManager.ContentStyleStrings.ButtonListItem), - new(PaletteContentStyle.ButtonForm, KryptonLanguageManager.ContentStyleStrings.ButtonForm), - new(PaletteContentStyle.ButtonFormClose, KryptonLanguageManager.ContentStyleStrings.ButtonFormClose), - new(PaletteContentStyle.ButtonCommand, KryptonLanguageManager.ContentStyleStrings.ButtonCommand), - new(PaletteContentStyle.ButtonCustom1, KryptonLanguageManager.ContentStyleStrings.ButtonCustom1), - new(PaletteContentStyle.ButtonCustom2, KryptonLanguageManager.ContentStyleStrings.ButtonCustom2), - new(PaletteContentStyle.ButtonCustom3, KryptonLanguageManager.ContentStyleStrings.ButtonCustom3), - new(PaletteContentStyle.ContextMenuHeading, KryptonLanguageManager.ContentStyleStrings.ContextMenuHeading), - new(PaletteContentStyle.ContextMenuItemImage, KryptonLanguageManager.ContentStyleStrings.ContextMenuItemImage), - new(PaletteContentStyle.ContextMenuItemTextStandard, KryptonLanguageManager.ContentStyleStrings.ContextMenuItemTextStandard), - new(PaletteContentStyle.ContextMenuItemTextAlternate, KryptonLanguageManager.ContentStyleStrings.ContextMenuItemTextAlternate), - new(PaletteContentStyle.ContextMenuItemShortcutText, KryptonLanguageManager.ContentStyleStrings.ContextMenuItemShortcutText), - new(PaletteContentStyle.GridHeaderColumnList, KryptonLanguageManager.ContentStyleStrings.GridHeaderColumnList), - new(PaletteContentStyle.GridHeaderRowList, KryptonLanguageManager.ContentStyleStrings.GridHeaderRowList), - new(PaletteContentStyle.GridDataCellList, KryptonLanguageManager.ContentStyleStrings.GridDataCellList), - new(PaletteContentStyle.GridHeaderColumnSheet, KryptonLanguageManager.ContentStyleStrings.GridHeaderColumnSheet), - new(PaletteContentStyle.GridHeaderRowSheet, KryptonLanguageManager.ContentStyleStrings.GridHeaderRowSheet), - new(PaletteContentStyle.GridDataCellSheet, KryptonLanguageManager.ContentStyleStrings.GridDataCellSheet), - new(PaletteContentStyle.GridHeaderColumnCustom1, KryptonLanguageManager.ContentStyleStrings.GridHeaderColumnCustom1), - new(PaletteContentStyle.GridHeaderColumnCustom2, KryptonLanguageManager.ContentStyleStrings.GridHeaderColumnCustom2), - new(PaletteContentStyle.GridHeaderColumnCustom3, KryptonLanguageManager.ContentStyleStrings.GridHeaderColumnCustom3), - new(PaletteContentStyle.GridHeaderRowCustom1, KryptonLanguageManager.ContentStyleStrings.GridHeaderRowCustom1), - new(PaletteContentStyle.GridHeaderRowCustom2, KryptonLanguageManager.ContentStyleStrings.GridHeaderRowCustom2), - new(PaletteContentStyle.GridHeaderRowCustom3, KryptonLanguageManager.ContentStyleStrings.GridHeaderRowCustom3), - new(PaletteContentStyle.GridDataCellCustom1, KryptonLanguageManager.ContentStyleStrings.GridDataCellCustom1), - new(PaletteContentStyle.GridDataCellCustom2, KryptonLanguageManager.ContentStyleStrings.GridDataCellCustom2), - new(PaletteContentStyle.GridDataCellCustom3, KryptonLanguageManager.ContentStyleStrings.GridDataCellCustom3), - new(PaletteContentStyle.HeaderPrimary, KryptonLanguageManager.ContentStyleStrings.HeaderPrimary), - new(PaletteContentStyle.HeaderSecondary, KryptonLanguageManager.ContentStyleStrings.HeaderSecondary), - new(PaletteContentStyle.HeaderDockActive, KryptonLanguageManager.ContentStyleStrings.HeaderDockActive), - new(PaletteContentStyle.HeaderDockInactive, KryptonLanguageManager.ContentStyleStrings.HeaderDockInactive), - new(PaletteContentStyle.HeaderForm, KryptonLanguageManager.ContentStyleStrings.HeaderForm), - new(PaletteContentStyle.HeaderCalendar, KryptonLanguageManager.ContentStyleStrings.HeaderCalendar), - new(PaletteContentStyle.HeaderCustom1, KryptonLanguageManager.ContentStyleStrings.HeaderCustom1), - new(PaletteContentStyle.HeaderCustom2, KryptonLanguageManager.ContentStyleStrings.HeaderCustom2), - new(PaletteContentStyle.HeaderCustom3, KryptonLanguageManager.ContentStyleStrings.HeaderCustom3), - new(PaletteContentStyle.LabelNormalControl, KryptonLanguageManager.ContentStyleStrings.LabelNormalControl), - new(PaletteContentStyle.LabelBoldControl, KryptonLanguageManager.ContentStyleStrings.LabelBoldControl), - new(PaletteContentStyle.LabelItalicControl, KryptonLanguageManager.ContentStyleStrings.LabelItalicControl), - new(PaletteContentStyle.LabelTitleControl, KryptonLanguageManager.ContentStyleStrings.LabelTitleControl), - new(PaletteContentStyle.LabelNormalPanel, KryptonLanguageManager.ContentStyleStrings.LabelNormalPanel), - new(PaletteContentStyle.LabelBoldPanel, KryptonLanguageManager.ContentStyleStrings.LabelBoldPanel), - new(PaletteContentStyle.LabelItalicPanel, KryptonLanguageManager.ContentStyleStrings.LabelItalicPanel), - new(PaletteContentStyle.LabelTitlePanel, KryptonLanguageManager.ContentStyleStrings.LabelTitlePanel), - new(PaletteContentStyle.LabelGroupBoxCaption, KryptonLanguageManager.ContentStyleStrings.LabelGroupBoxCaption), - new(PaletteContentStyle.LabelToolTip, KryptonLanguageManager.ContentStyleStrings.LabelToolTip), - new(PaletteContentStyle.LabelSuperTip, KryptonLanguageManager.ContentStyleStrings.LabelSuperTip), - new(PaletteContentStyle.LabelKeyTip, KryptonLanguageManager.ContentStyleStrings.LabelKeyTip), - new(PaletteContentStyle.LabelCustom1, KryptonLanguageManager.ContentStyleStrings.LabelCustom1), - new(PaletteContentStyle.LabelCustom2, KryptonLanguageManager.ContentStyleStrings.LabelCustom2), - new(PaletteContentStyle.TabHighProfile, KryptonLanguageManager.ContentStyleStrings.TabHighProfile), - new(PaletteContentStyle.TabStandardProfile, KryptonLanguageManager.ContentStyleStrings.TabStandardProfile), - new(PaletteContentStyle.TabLowProfile, KryptonLanguageManager.ContentStyleStrings.TabLowProfile), - new(PaletteContentStyle.TabOneNote, KryptonLanguageManager.ContentStyleStrings.TabOneNote), - new(PaletteContentStyle.TabDock, KryptonLanguageManager.ContentStyleStrings.TabDock), - new(PaletteContentStyle.TabDockAutoHidden, KryptonLanguageManager.ContentStyleStrings.TabDockAutoHidden), - new(PaletteContentStyle.TabCustom1, KryptonLanguageManager.ContentStyleStrings.TabCustom1), - new(PaletteContentStyle.TabCustom2, KryptonLanguageManager.ContentStyleStrings.TabCustom2), - new(PaletteContentStyle.TabCustom3, KryptonLanguageManager.ContentStyleStrings.TabCustom3), - new(PaletteContentStyle.InputControlStandalone, KryptonLanguageManager.ContentStyleStrings.InputControlStandalone), - new(PaletteContentStyle.InputControlRibbon, KryptonLanguageManager.ContentStyleStrings.InputControlRibbon), - new(PaletteContentStyle.InputControlCustom1, KryptonLanguageManager.ContentStyleStrings.InputControlCustom1), - new(PaletteContentStyle.InputControlCustom2, KryptonLanguageManager.ContentStyleStrings.InputControlCustom2), - new(PaletteContentStyle.InputControlCustom3, KryptonLanguageManager.ContentStyleStrings.InputControlCustom3) + new Pair(PaletteContentStyle.ButtonStandalone, KryptonLanguageManager.ContentStyleStrings.ButtonStandalone), + new Pair(PaletteContentStyle.ButtonLowProfile, KryptonLanguageManager.ContentStyleStrings.ButtonLowProfile), + new Pair(PaletteContentStyle.ButtonButtonSpec, KryptonLanguageManager.ContentStyleStrings.ButtonButtonSpec), + new Pair(PaletteContentStyle.ButtonBreadCrumb, KryptonLanguageManager.ContentStyleStrings.ButtonBreadCrumb), + new Pair(PaletteContentStyle.ButtonCalendarDay, + KryptonLanguageManager.ContentStyleStrings.ButtonCalendarDay), + new Pair(PaletteContentStyle.ButtonCluster, KryptonLanguageManager.ContentStyleStrings.ButtonCluster), + new Pair(PaletteContentStyle.ButtonGallery, KryptonLanguageManager.ContentStyleStrings.ButtonGallery), + new Pair(PaletteContentStyle.ButtonNavigatorStack, + KryptonLanguageManager.ContentStyleStrings.ButtonNavigatorStack), + new Pair(PaletteContentStyle.ButtonNavigatorOverflow, + KryptonLanguageManager.ContentStyleStrings.ButtonNavigatorOverflow), + new Pair(PaletteContentStyle.ButtonNavigatorMini, + KryptonLanguageManager.ContentStyleStrings.ButtonNavigatorMini), + new Pair(PaletteContentStyle.ButtonInputControl, + KryptonLanguageManager.ContentStyleStrings.ButtonInputControl), + new Pair(PaletteContentStyle.ButtonListItem, KryptonLanguageManager.ContentStyleStrings.ButtonListItem), + new Pair(PaletteContentStyle.ButtonForm, KryptonLanguageManager.ContentStyleStrings.ButtonForm), + new Pair(PaletteContentStyle.ButtonFormClose, KryptonLanguageManager.ContentStyleStrings.ButtonFormClose), + new Pair(PaletteContentStyle.ButtonCommand, KryptonLanguageManager.ContentStyleStrings.ButtonCommand), + new Pair(PaletteContentStyle.ButtonCustom1, KryptonLanguageManager.ContentStyleStrings.ButtonCustom1), + new Pair(PaletteContentStyle.ButtonCustom2, KryptonLanguageManager.ContentStyleStrings.ButtonCustom2), + new Pair(PaletteContentStyle.ButtonCustom3, KryptonLanguageManager.ContentStyleStrings.ButtonCustom3), + new Pair(PaletteContentStyle.ContextMenuHeading, + KryptonLanguageManager.ContentStyleStrings.ContextMenuHeading), + new Pair(PaletteContentStyle.ContextMenuItemImage, + KryptonLanguageManager.ContentStyleStrings.ContextMenuItemImage), + new Pair(PaletteContentStyle.ContextMenuItemTextStandard, + KryptonLanguageManager.ContentStyleStrings.ContextMenuItemTextStandard), + new Pair(PaletteContentStyle.ContextMenuItemTextAlternate, + KryptonLanguageManager.ContentStyleStrings.ContextMenuItemTextAlternate), + new Pair(PaletteContentStyle.ContextMenuItemShortcutText, + KryptonLanguageManager.ContentStyleStrings.ContextMenuItemShortcutText), + new Pair(PaletteContentStyle.GridHeaderColumnList, + KryptonLanguageManager.ContentStyleStrings.GridHeaderColumnList), + new Pair(PaletteContentStyle.GridHeaderRowList, + KryptonLanguageManager.ContentStyleStrings.GridHeaderRowList), + new Pair(PaletteContentStyle.GridDataCellList, KryptonLanguageManager.ContentStyleStrings.GridDataCellList), + new Pair(PaletteContentStyle.GridHeaderColumnSheet, + KryptonLanguageManager.ContentStyleStrings.GridHeaderColumnSheet), + new Pair(PaletteContentStyle.GridHeaderRowSheet, + KryptonLanguageManager.ContentStyleStrings.GridHeaderRowSheet), + new Pair(PaletteContentStyle.GridDataCellSheet, + KryptonLanguageManager.ContentStyleStrings.GridDataCellSheet), + new Pair(PaletteContentStyle.GridHeaderColumnCustom1, + KryptonLanguageManager.ContentStyleStrings.GridHeaderColumnCustom1), + new Pair(PaletteContentStyle.GridHeaderColumnCustom2, + KryptonLanguageManager.ContentStyleStrings.GridHeaderColumnCustom2), + new Pair(PaletteContentStyle.GridHeaderColumnCustom3, + KryptonLanguageManager.ContentStyleStrings.GridHeaderColumnCustom3), + new Pair(PaletteContentStyle.GridHeaderRowCustom1, + KryptonLanguageManager.ContentStyleStrings.GridHeaderRowCustom1), + new Pair(PaletteContentStyle.GridHeaderRowCustom2, + KryptonLanguageManager.ContentStyleStrings.GridHeaderRowCustom2), + new Pair(PaletteContentStyle.GridHeaderRowCustom3, + KryptonLanguageManager.ContentStyleStrings.GridHeaderRowCustom3), + new Pair(PaletteContentStyle.GridDataCellCustom1, + KryptonLanguageManager.ContentStyleStrings.GridDataCellCustom1), + new Pair(PaletteContentStyle.GridDataCellCustom2, + KryptonLanguageManager.ContentStyleStrings.GridDataCellCustom2), + new Pair(PaletteContentStyle.GridDataCellCustom3, + KryptonLanguageManager.ContentStyleStrings.GridDataCellCustom3), + new Pair(PaletteContentStyle.HeaderPrimary, KryptonLanguageManager.ContentStyleStrings.HeaderPrimary), + new Pair(PaletteContentStyle.HeaderSecondary, KryptonLanguageManager.ContentStyleStrings.HeaderSecondary), + new Pair(PaletteContentStyle.HeaderDockActive, KryptonLanguageManager.ContentStyleStrings.HeaderDockActive), + new Pair(PaletteContentStyle.HeaderDockInactive, + KryptonLanguageManager.ContentStyleStrings.HeaderDockInactive), + new Pair(PaletteContentStyle.HeaderForm, KryptonLanguageManager.ContentStyleStrings.HeaderForm), + new Pair(PaletteContentStyle.HeaderCalendar, KryptonLanguageManager.ContentStyleStrings.HeaderCalendar), + new Pair(PaletteContentStyle.HeaderCustom1, KryptonLanguageManager.ContentStyleStrings.HeaderCustom1), + new Pair(PaletteContentStyle.HeaderCustom2, KryptonLanguageManager.ContentStyleStrings.HeaderCustom2), + new Pair(PaletteContentStyle.HeaderCustom3, KryptonLanguageManager.ContentStyleStrings.HeaderCustom3), + new Pair(PaletteContentStyle.LabelNormalControl, + KryptonLanguageManager.ContentStyleStrings.LabelNormalControl), + new Pair(PaletteContentStyle.LabelBoldControl, KryptonLanguageManager.ContentStyleStrings.LabelBoldControl), + new Pair(PaletteContentStyle.LabelItalicControl, + KryptonLanguageManager.ContentStyleStrings.LabelItalicControl), + new Pair(PaletteContentStyle.LabelTitleControl, + KryptonLanguageManager.ContentStyleStrings.LabelTitleControl), + new Pair(PaletteContentStyle.LabelNormalPanel, KryptonLanguageManager.ContentStyleStrings.LabelNormalPanel), + new Pair(PaletteContentStyle.LabelBoldPanel, KryptonLanguageManager.ContentStyleStrings.LabelBoldPanel), + new Pair(PaletteContentStyle.LabelItalicPanel, KryptonLanguageManager.ContentStyleStrings.LabelItalicPanel), + new Pair(PaletteContentStyle.LabelTitlePanel, KryptonLanguageManager.ContentStyleStrings.LabelTitlePanel), + new Pair(PaletteContentStyle.LabelGroupBoxCaption, + KryptonLanguageManager.ContentStyleStrings.LabelGroupBoxCaption), + new Pair(PaletteContentStyle.LabelToolTip, KryptonLanguageManager.ContentStyleStrings.LabelToolTip), + new Pair(PaletteContentStyle.LabelSuperTip, KryptonLanguageManager.ContentStyleStrings.LabelSuperTip), + new Pair(PaletteContentStyle.LabelKeyTip, KryptonLanguageManager.ContentStyleStrings.LabelKeyTip), + new Pair(PaletteContentStyle.LabelCustom1, KryptonLanguageManager.ContentStyleStrings.LabelCustom1), + new Pair(PaletteContentStyle.LabelCustom2, KryptonLanguageManager.ContentStyleStrings.LabelCustom2), + new Pair(PaletteContentStyle.TabHighProfile, KryptonLanguageManager.ContentStyleStrings.TabHighProfile), + new Pair(PaletteContentStyle.TabStandardProfile, + KryptonLanguageManager.ContentStyleStrings.TabStandardProfile), + new Pair(PaletteContentStyle.TabLowProfile, KryptonLanguageManager.ContentStyleStrings.TabLowProfile), + new Pair(PaletteContentStyle.TabOneNote, KryptonLanguageManager.ContentStyleStrings.TabOneNote), + new Pair(PaletteContentStyle.TabDock, KryptonLanguageManager.ContentStyleStrings.TabDock), + new Pair(PaletteContentStyle.TabDockAutoHidden, + KryptonLanguageManager.ContentStyleStrings.TabDockAutoHidden), + new Pair(PaletteContentStyle.TabCustom1, KryptonLanguageManager.ContentStyleStrings.TabCustom1), + new Pair(PaletteContentStyle.TabCustom2, KryptonLanguageManager.ContentStyleStrings.TabCustom2), + new Pair(PaletteContentStyle.TabCustom3, KryptonLanguageManager.ContentStyleStrings.TabCustom3), + new Pair(PaletteContentStyle.InputControlStandalone, + KryptonLanguageManager.ContentStyleStrings.InputControlStandalone), + new Pair(PaletteContentStyle.InputControlRibbon, + KryptonLanguageManager.ContentStyleStrings.InputControlRibbon), + new Pair(PaletteContentStyle.InputControlCustom1, + KryptonLanguageManager.ContentStyleStrings.InputControlCustom1), + new Pair(PaletteContentStyle.InputControlCustom2, + KryptonLanguageManager.ContentStyleStrings.InputControlCustom2), + new Pair(PaletteContentStyle.InputControlCustom3, + KryptonLanguageManager.ContentStyleStrings.InputControlCustom3) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteDrawBordersConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteDrawBordersConverter.cs index 7f8bb20f0..b190cfd2d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteDrawBordersConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteDrawBordersConverter.cs @@ -55,7 +55,7 @@ public override object ConvertTo(ITypeDescriptorContext context, else { // Append the names of each border we want - StringBuilder sb = new(); + StringBuilder sb = new StringBuilder(); if (borders.HasFlag(PaletteDrawBorders.Top)) { diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteImageEffectConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteImageEffectConverter.cs index dcc46446b..c6b5b77b3 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteImageEffectConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteImageEffectConverter.cs @@ -41,17 +41,17 @@ internal class PaletteImageEffectConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(PaletteImageEffect.Inherit, KryptonLanguageManager.ImageEffectStrings.Inherit), - new(PaletteImageEffect.Light, KryptonLanguageManager.ImageEffectStrings.Light), - new(PaletteImageEffect.LightLight, KryptonLanguageManager.ImageEffectStrings.LightLight), - new(PaletteImageEffect.Normal, KryptonLanguageManager.ImageEffectStrings.Normal), - new(PaletteImageEffect.Disabled, KryptonLanguageManager.ImageEffectStrings.Disabled), - new(PaletteImageEffect.Dark, KryptonLanguageManager.ImageEffectStrings.Dark), - new(PaletteImageEffect.DarkDark, KryptonLanguageManager.ImageEffectStrings.DarkDark), - new(PaletteImageEffect.GrayScale, KryptonLanguageManager.ImageEffectStrings.GrayScale), - new(PaletteImageEffect.GrayScaleRed, KryptonLanguageManager.ImageEffectStrings.GrayScaleRed), - new(PaletteImageEffect.GrayScaleGreen, KryptonLanguageManager.ImageEffectStrings.GrayScaleGreen), - new(PaletteImageEffect.GrayScaleBlue, KryptonLanguageManager.ImageEffectStrings.GrayScaleBlue) + new Pair(PaletteImageEffect.Inherit, KryptonLanguageManager.ImageEffectStrings.Inherit), + new Pair(PaletteImageEffect.Light, KryptonLanguageManager.ImageEffectStrings.Light), + new Pair(PaletteImageEffect.LightLight, KryptonLanguageManager.ImageEffectStrings.LightLight), + new Pair(PaletteImageEffect.Normal, KryptonLanguageManager.ImageEffectStrings.Normal), + new Pair(PaletteImageEffect.Disabled, KryptonLanguageManager.ImageEffectStrings.Disabled), + new Pair(PaletteImageEffect.Dark, KryptonLanguageManager.ImageEffectStrings.Dark), + new Pair(PaletteImageEffect.DarkDark, KryptonLanguageManager.ImageEffectStrings.DarkDark), + new Pair(PaletteImageEffect.GrayScale, KryptonLanguageManager.ImageEffectStrings.GrayScale), + new Pair(PaletteImageEffect.GrayScaleRed, KryptonLanguageManager.ImageEffectStrings.GrayScaleRed), + new Pair(PaletteImageEffect.GrayScaleGreen, KryptonLanguageManager.ImageEffectStrings.GrayScaleGreen), + new Pair(PaletteImageEffect.GrayScaleBlue, KryptonLanguageManager.ImageEffectStrings.GrayScaleBlue) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteImageStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteImageStyleConverter.cs index 8caf582d5..f926b0b64 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteImageStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteImageStyleConverter.cs @@ -45,21 +45,21 @@ internal class PaletteImageStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(PaletteImageStyle.Inherit, KryptonLanguageManager.ImageStyleStrings.Inherit), - new(PaletteImageStyle.Stretch, KryptonLanguageManager.ImageStyleStrings.Stretch), - new(PaletteImageStyle.Tile, KryptonLanguageManager.ImageStyleStrings.Tile), - new(PaletteImageStyle.TileFlipX, KryptonLanguageManager.ImageStyleStrings.TileFlipX), - new(PaletteImageStyle.TileFlipY, KryptonLanguageManager.ImageStyleStrings.TileFlipY), - new(PaletteImageStyle.TileFlipXY, KryptonLanguageManager.ImageStyleStrings.TileFlipXY), - new(PaletteImageStyle.TopLeft, KryptonLanguageManager.ImageStyleStrings.TopLeft), - new(PaletteImageStyle.TopMiddle, KryptonLanguageManager.ImageStyleStrings.TopMiddle), - new(PaletteImageStyle.TopRight, KryptonLanguageManager.ImageStyleStrings.TopRight), - new(PaletteImageStyle.CenterLeft, KryptonLanguageManager.ImageStyleStrings.CenterLeft), - new(PaletteImageStyle.CenterMiddle, KryptonLanguageManager.ImageStyleStrings.CenterMiddle), - new(PaletteImageStyle.CenterRight, KryptonLanguageManager.ImageStyleStrings.CenterRight), - new(PaletteImageStyle.BottomLeft, KryptonLanguageManager.ImageStyleStrings.BottomLeft), - new(PaletteImageStyle.BottomMiddle, KryptonLanguageManager.ImageStyleStrings.BottomMiddle), - new(PaletteImageStyle.BottomRight, KryptonLanguageManager.ImageStyleStrings.BottomRight) + new Pair(PaletteImageStyle.Inherit, KryptonLanguageManager.ImageStyleStrings.Inherit), + new Pair(PaletteImageStyle.Stretch, KryptonLanguageManager.ImageStyleStrings.Stretch), + new Pair(PaletteImageStyle.Tile, KryptonLanguageManager.ImageStyleStrings.Tile), + new Pair(PaletteImageStyle.TileFlipX, KryptonLanguageManager.ImageStyleStrings.TileFlipX), + new Pair(PaletteImageStyle.TileFlipY, KryptonLanguageManager.ImageStyleStrings.TileFlipY), + new Pair(PaletteImageStyle.TileFlipXY, KryptonLanguageManager.ImageStyleStrings.TileFlipXY), + new Pair(PaletteImageStyle.TopLeft, KryptonLanguageManager.ImageStyleStrings.TopLeft), + new Pair(PaletteImageStyle.TopMiddle, KryptonLanguageManager.ImageStyleStrings.TopMiddle), + new Pair(PaletteImageStyle.TopRight, KryptonLanguageManager.ImageStyleStrings.TopRight), + new Pair(PaletteImageStyle.CenterLeft, KryptonLanguageManager.ImageStyleStrings.CenterLeft), + new Pair(PaletteImageStyle.CenterMiddle, KryptonLanguageManager.ImageStyleStrings.CenterMiddle), + new Pair(PaletteImageStyle.CenterRight, KryptonLanguageManager.ImageStyleStrings.CenterRight), + new Pair(PaletteImageStyle.BottomLeft, KryptonLanguageManager.ImageStyleStrings.BottomLeft), + new Pair(PaletteImageStyle.BottomMiddle, KryptonLanguageManager.ImageStyleStrings.BottomMiddle), + new Pair(PaletteImageStyle.BottomRight, KryptonLanguageManager.ImageStyleStrings.BottomRight) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteModeConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteModeConverter.cs index ea47729a8..f2fb567d2 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteModeConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteModeConverter.cs @@ -82,57 +82,59 @@ public class PaletteModeConverter : StringLookupConverter private readonly Pair[] _pairs = { - new(PaletteMode.ProfessionalSystem, KryptonLanguageManager.ModeStrings.Professional), - new(PaletteMode.ProfessionalOffice2003, KryptonLanguageManager.ModeStrings.Professional2003), - new(PaletteMode.Office2007Black, KryptonLanguageManager.ModeStrings.Office2007Black), - new(PaletteMode.Office2007BlackDarkMode, KryptonLanguageManager.ModeStrings.Office2007BlackDarkMode), - new(PaletteMode.Office2007Blue, KryptonLanguageManager.ModeStrings.Office2007Blue), - new(PaletteMode.Office2007BlueDarkMode, KryptonLanguageManager.ModeStrings.Office2007BlueDarkMode), - new(PaletteMode.Office2007BlueLightMode, KryptonLanguageManager.ModeStrings.Office2007BlueLightMode), - // Note: Re-enable when the gray themes are completed - new(PaletteMode.Office2007DarkGray, KryptonLanguageManager.ModeStrings.Office2007DarkGray), - //new(PaletteMode.Office2007LightGray, KryptonLanguageManager.ModeStrings.Office2007LightGray), - new(PaletteMode.Office2007Silver, KryptonLanguageManager.ModeStrings.Office2007Silver), - new(PaletteMode.Office2007SilverDarkMode, KryptonLanguageManager.ModeStrings.Office2007SilverDarkMode), - new(PaletteMode.Office2007SilverLightMode, KryptonLanguageManager.ModeStrings.Office2007SilverLightMode), - new(PaletteMode.Office2007White, KryptonLanguageManager.ModeStrings.Office2007White), - new(PaletteMode.Office2010Black, KryptonLanguageManager.ModeStrings.Office2010Black), - new(PaletteMode.Office2010BlackDarkMode, KryptonLanguageManager.ModeStrings.Office2010BlackDarkMode), - new(PaletteMode.Office2010Blue, KryptonLanguageManager.ModeStrings.Office2010Blue), - new(PaletteMode.Office2010BlueDarkMode, KryptonLanguageManager.ModeStrings.Office2010BlueDarkMode), - new(PaletteMode.Office2010BlueLightMode, KryptonLanguageManager.ModeStrings.Office2010BlueLightMode), - // Note: Re-enable when the gray themes are completed - new(PaletteMode.Office2010DarkGray, KryptonLanguageManager.ModeStrings.Office2010DarkGray), - //new(PaletteMode.Office2010LightGray, KryptonLanguageManager.ModeStrings.Office2010LightGray), - new(PaletteMode.Office2010Silver, KryptonLanguageManager.ModeStrings.Office2010Silver), - new(PaletteMode.Office2010SilverDarkMode, KryptonLanguageManager.ModeStrings.Office2010SilverDarkMode), - new(PaletteMode.Office2010SilverLightMode, KryptonLanguageManager.ModeStrings.Office2010SilverLightMode), - new(PaletteMode.Office2010White, KryptonLanguageManager.ModeStrings.Office2010White), - // Note: Re-enable when the gray themes are completed - new(PaletteMode.Office2013DarkGray, KryptonLanguageManager.ModeStrings.Office2013DarkGray), - //new(PaletteMode.Office2013LightGray, KryptonLanguageManager.ModeStrings.Office2013LightGray), - new(PaletteMode.Office2013White, KryptonLanguageManager.ModeStrings.Office2013White), - new(PaletteMode.Microsoft365Black, KryptonLanguageManager.ModeStrings.Microsoft365Black), - new(PaletteMode.Microsoft365BlackDarkMode, KryptonLanguageManager.ModeStrings.Microsoft365BlackDarkMode), - new(PaletteMode.Microsoft365Blue, KryptonLanguageManager.ModeStrings.Microsoft365Blue), - new(PaletteMode.Microsoft365BlueDarkMode, KryptonLanguageManager.ModeStrings.Microsoft365BlueDarkMode), - new(PaletteMode.Microsoft365BlueLightMode, KryptonLanguageManager.ModeStrings.Microsoft365BlueLightMode), - // Note: Re-enable when the gray themes are completed - new(PaletteMode.Microsoft365DarkGray, KryptonLanguageManager.ModeStrings.Microsoft365DarkGray), - //new(PaletteMode.Microsoft365LightGray, KryptonLanguageManager.ModeStrings.Microsoft365LightGray), - new(PaletteMode.Microsoft365Silver, KryptonLanguageManager.ModeStrings.Microsoft365Silver), - new(PaletteMode.Microsoft365SilverDarkMode, KryptonLanguageManager.ModeStrings.Microsoft365SilverDarkMode), - new(PaletteMode.Microsoft365SilverLightMode, KryptonLanguageManager.ModeStrings.Microsoft365SilverLightMode), - new(PaletteMode.Microsoft365White, KryptonLanguageManager.ModeStrings.Microsoft365White), - new(PaletteMode.SparkleBlue, KryptonLanguageManager.ModeStrings.SparkleBlue), - new(PaletteMode.SparkleBlueDarkMode, KryptonLanguageManager.ModeStrings.SparkleBlueDarkMode), - new(PaletteMode.SparkleBlueLightMode, KryptonLanguageManager.ModeStrings.SparkleBlueLightMode), - new(PaletteMode.SparkleOrange, KryptonLanguageManager.ModeStrings.SparkleOrange), - new(PaletteMode.SparkleOrangeDarkMode, KryptonLanguageManager.ModeStrings.SparkleOrangeDarkMode), - new(PaletteMode.SparkleOrangeLightMode, KryptonLanguageManager.ModeStrings.SparkleOrangeLightMode), - new(PaletteMode.SparklePurple, KryptonLanguageManager.ModeStrings.SparklePurple), - new(PaletteMode.SparklePurpleDarkMode, KryptonLanguageManager.ModeStrings.SparklePurpleDarkMode), - new(PaletteMode.SparklePurpleLightMode, KryptonLanguageManager.ModeStrings.SparklePurpleLightMode) + new Pair(PaletteMode.ProfessionalSystem, KryptonLanguageManager.ModeStrings.Professional), + new Pair(PaletteMode.ProfessionalOffice2003, KryptonLanguageManager.ModeStrings.Professional2003), + new Pair(PaletteMode.Office2007Black, KryptonLanguageManager.ModeStrings.Office2007Black), + new Pair(PaletteMode.Office2007BlackDarkMode, KryptonLanguageManager.ModeStrings.Office2007BlackDarkMode), + new Pair(PaletteMode.Office2007Blue, KryptonLanguageManager.ModeStrings.Office2007Blue), + new Pair(PaletteMode.Office2007BlueDarkMode, KryptonLanguageManager.ModeStrings.Office2007BlueDarkMode), + new Pair(PaletteMode.Office2007BlueLightMode, KryptonLanguageManager.ModeStrings.Office2007BlueLightMode), + // Note: Re-enable when the gray themes are completed + new Pair(PaletteMode.Office2007DarkGray, KryptonLanguageManager.ModeStrings.Office2007DarkGray), + //new(PaletteMode.Office2007LightGray, KryptonLanguageManager.ModeStrings.Office2007LightGray), + new Pair(PaletteMode.Office2007Silver, KryptonLanguageManager.ModeStrings.Office2007Silver), + new Pair(PaletteMode.Office2007SilverDarkMode, KryptonLanguageManager.ModeStrings.Office2007SilverDarkMode), + new Pair(PaletteMode.Office2007SilverLightMode, KryptonLanguageManager.ModeStrings.Office2007SilverLightMode), + new Pair(PaletteMode.Office2007White, KryptonLanguageManager.ModeStrings.Office2007White), + new Pair(PaletteMode.Office2010Black, KryptonLanguageManager.ModeStrings.Office2010Black), + new Pair(PaletteMode.Office2010BlackDarkMode, KryptonLanguageManager.ModeStrings.Office2010BlackDarkMode), + new Pair(PaletteMode.Office2010Blue, KryptonLanguageManager.ModeStrings.Office2010Blue), + new Pair(PaletteMode.Office2010BlueDarkMode, KryptonLanguageManager.ModeStrings.Office2010BlueDarkMode), + new Pair(PaletteMode.Office2010BlueLightMode, KryptonLanguageManager.ModeStrings.Office2010BlueLightMode), + // Note: Re-enable when the gray themes are completed + new Pair(PaletteMode.Office2010DarkGray, KryptonLanguageManager.ModeStrings.Office2010DarkGray), + //new(PaletteMode.Office2010LightGray, KryptonLanguageManager.ModeStrings.Office2010LightGray), + new Pair(PaletteMode.Office2010Silver, KryptonLanguageManager.ModeStrings.Office2010Silver), + new Pair(PaletteMode.Office2010SilverDarkMode, KryptonLanguageManager.ModeStrings.Office2010SilverDarkMode), + new Pair(PaletteMode.Office2010SilverLightMode, KryptonLanguageManager.ModeStrings.Office2010SilverLightMode), + new Pair(PaletteMode.Office2010White, KryptonLanguageManager.ModeStrings.Office2010White), + // Note: Re-enable when the gray themes are completed + new Pair(PaletteMode.Office2013DarkGray, KryptonLanguageManager.ModeStrings.Office2013DarkGray), + //new(PaletteMode.Office2013LightGray, KryptonLanguageManager.ModeStrings.Office2013LightGray), + new Pair(PaletteMode.Office2013White, KryptonLanguageManager.ModeStrings.Office2013White), + new Pair(PaletteMode.Microsoft365Black, KryptonLanguageManager.ModeStrings.Microsoft365Black), + new Pair(PaletteMode.Microsoft365BlackDarkMode, KryptonLanguageManager.ModeStrings.Microsoft365BlackDarkMode), + new Pair(PaletteMode.Microsoft365Blue, KryptonLanguageManager.ModeStrings.Microsoft365Blue), + new Pair(PaletteMode.Microsoft365BlueDarkMode, KryptonLanguageManager.ModeStrings.Microsoft365BlueDarkMode), + new Pair(PaletteMode.Microsoft365BlueLightMode, KryptonLanguageManager.ModeStrings.Microsoft365BlueLightMode), + // Note: Re-enable when the gray themes are completed + new Pair(PaletteMode.Microsoft365DarkGray, KryptonLanguageManager.ModeStrings.Microsoft365DarkGray), + //new(PaletteMode.Microsoft365LightGray, KryptonLanguageManager.ModeStrings.Microsoft365LightGray), + new Pair(PaletteMode.Microsoft365Silver, KryptonLanguageManager.ModeStrings.Microsoft365Silver), + new Pair(PaletteMode.Microsoft365SilverDarkMode, + KryptonLanguageManager.ModeStrings.Microsoft365SilverDarkMode), + new Pair(PaletteMode.Microsoft365SilverLightMode, + KryptonLanguageManager.ModeStrings.Microsoft365SilverLightMode), + new Pair(PaletteMode.Microsoft365White, KryptonLanguageManager.ModeStrings.Microsoft365White), + new Pair(PaletteMode.SparkleBlue, KryptonLanguageManager.ModeStrings.SparkleBlue), + new Pair(PaletteMode.SparkleBlueDarkMode, KryptonLanguageManager.ModeStrings.SparkleBlueDarkMode), + new Pair(PaletteMode.SparkleBlueLightMode, KryptonLanguageManager.ModeStrings.SparkleBlueLightMode), + new Pair(PaletteMode.SparkleOrange, KryptonLanguageManager.ModeStrings.SparkleOrange), + new Pair(PaletteMode.SparkleOrangeDarkMode, KryptonLanguageManager.ModeStrings.SparkleOrangeDarkMode), + new Pair(PaletteMode.SparkleOrangeLightMode, KryptonLanguageManager.ModeStrings.SparkleOrangeLightMode), + new Pair(PaletteMode.SparklePurple, KryptonLanguageManager.ModeStrings.SparklePurple), + new Pair(PaletteMode.SparklePurpleDarkMode, KryptonLanguageManager.ModeStrings.SparklePurpleDarkMode), + new Pair(PaletteMode.SparklePurpleLightMode, KryptonLanguageManager.ModeStrings.SparklePurpleLightMode) //new(PaletteMode.VisualStudioDark, "Visual Studio (Dark Mode)"), //new(PaletteMode.VisualStudioLight, "Visual Studio (Light Mode)") }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteTextTrimConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteTextTrimConverter.cs index a2d053caf..3324a99b3 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteTextTrimConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PaletteTextTrimConverter.cs @@ -37,13 +37,13 @@ internal class PaletteTextTrimConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(PaletteTextTrim.Inherit, KryptonLanguageManager.TextTrimStrings.Inherit), - new(PaletteTextTrim.Hide, KryptonLanguageManager.TextTrimStrings.Hide), - new(PaletteTextTrim.Character, KryptonLanguageManager.TextTrimStrings.Character), - new(PaletteTextTrim.Word, KryptonLanguageManager.TextTrimStrings.Word), - new(PaletteTextTrim.EllipsisCharacter, KryptonLanguageManager.TextTrimStrings.EllipsisCharacter), - new(PaletteTextTrim.EllipsisWord, KryptonLanguageManager.TextTrimStrings.EllipsisWord), - new(PaletteTextTrim.EllipsisPath, KryptonLanguageManager.TextTrimStrings.EllipsisPath) + new Pair(PaletteTextTrim.Inherit, KryptonLanguageManager.TextTrimStrings.Inherit), + new Pair(PaletteTextTrim.Hide, KryptonLanguageManager.TextTrimStrings.Hide), + new Pair(PaletteTextTrim.Character, KryptonLanguageManager.TextTrimStrings.Character), + new Pair(PaletteTextTrim.Word, KryptonLanguageManager.TextTrimStrings.Word), + new Pair(PaletteTextTrim.EllipsisCharacter, KryptonLanguageManager.TextTrimStrings.EllipsisCharacter), + new Pair(PaletteTextTrim.EllipsisWord, KryptonLanguageManager.TextTrimStrings.EllipsisWord), + new Pair(PaletteTextTrim.EllipsisPath, KryptonLanguageManager.TextTrimStrings.EllipsisPath) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/PlacementModeConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/PlacementModeConverter.cs index d8d91f5de..5e0250aa1 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/PlacementModeConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/PlacementModeConverter.cs @@ -38,17 +38,17 @@ internal class PlacementModeConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(PlacementMode.Absolute, KryptonLanguageManager.PlacementModeStrings.Absolute), - new(PlacementMode.AbsolutePoint, KryptonLanguageManager.PlacementModeStrings.AbsolutePoint), - new(PlacementMode.Bottom, KryptonLanguageManager.PlacementModeStrings.Bottom), - new(PlacementMode.Center, KryptonLanguageManager.PlacementModeStrings.Center), - new(PlacementMode.Left, KryptonLanguageManager.PlacementModeStrings.Left), - new(PlacementMode.Mouse, KryptonLanguageManager.PlacementModeStrings.Mouse), - new(PlacementMode.MousePoint, KryptonLanguageManager.PlacementModeStrings.MousePoint), - new(PlacementMode.Relative, KryptonLanguageManager.PlacementModeStrings.Relative), - new(PlacementMode.RelativePoint, KryptonLanguageManager.PlacementModeStrings.RelativePoint), - new(PlacementMode.Right, KryptonLanguageManager.PlacementModeStrings.Right), - new(PlacementMode.Top, KryptonLanguageManager.PlacementModeStrings.Top) + new Pair(PlacementMode.Absolute, KryptonLanguageManager.PlacementModeStrings.Absolute), + new Pair(PlacementMode.AbsolutePoint, KryptonLanguageManager.PlacementModeStrings.AbsolutePoint), + new Pair(PlacementMode.Bottom, KryptonLanguageManager.PlacementModeStrings.Bottom), + new Pair(PlacementMode.Center, KryptonLanguageManager.PlacementModeStrings.Center), + new Pair(PlacementMode.Left, KryptonLanguageManager.PlacementModeStrings.Left), + new Pair(PlacementMode.Mouse, KryptonLanguageManager.PlacementModeStrings.Mouse), + new Pair(PlacementMode.MousePoint, KryptonLanguageManager.PlacementModeStrings.MousePoint), + new Pair(PlacementMode.Relative, KryptonLanguageManager.PlacementModeStrings.Relative), + new Pair(PlacementMode.RelativePoint, KryptonLanguageManager.PlacementModeStrings.RelativePoint), + new Pair(PlacementMode.Right, KryptonLanguageManager.PlacementModeStrings.Right), + new Pair(PlacementMode.Top, KryptonLanguageManager.PlacementModeStrings.Top) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/SeparatorStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/SeparatorStyleConverter.cs index 85e8581f2..ec925333d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/SeparatorStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/SeparatorStyleConverter.cs @@ -36,12 +36,12 @@ internal class SeparatorStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(SeparatorStyle.LowProfile, KryptonLanguageManager.SeparatorStyles.LowProfile), - new(SeparatorStyle.HighProfile, KryptonLanguageManager.SeparatorStyles.HighProfile), - new(SeparatorStyle.HighInternalProfile, KryptonLanguageManager.SeparatorStyles.HighInternalProfile), - new(SeparatorStyle.Custom1, KryptonLanguageManager.SeparatorStyles.Custom1), - new(SeparatorStyle.Custom2, KryptonLanguageManager.SeparatorStyles.Custom2), - new(SeparatorStyle.Custom3, KryptonLanguageManager.SeparatorStyles.Custom3) + new Pair(SeparatorStyle.LowProfile, KryptonLanguageManager.SeparatorStyles.LowProfile), + new Pair(SeparatorStyle.HighProfile, KryptonLanguageManager.SeparatorStyles.HighProfile), + new Pair(SeparatorStyle.HighInternalProfile, KryptonLanguageManager.SeparatorStyles.HighInternalProfile), + new Pair(SeparatorStyle.Custom1, KryptonLanguageManager.SeparatorStyles.Custom1), + new Pair(SeparatorStyle.Custom2, KryptonLanguageManager.SeparatorStyles.Custom2), + new Pair(SeparatorStyle.Custom3, KryptonLanguageManager.SeparatorStyles.Custom3) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/TabBorderStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/TabBorderStyleConverter.cs index ced1b1971..5a27f8817 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/TabBorderStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/TabBorderStyleConverter.cs @@ -53,29 +53,29 @@ internal class TabBorderStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(TabBorderStyle.OneNote, KryptonLanguageManager.TabBorderStyles.OneNote), - new(TabBorderStyle.SquareEqualSmall, KryptonLanguageManager.TabBorderStyles.SquareEqualSmall), - new(TabBorderStyle.SquareEqualMedium, KryptonLanguageManager.TabBorderStyles.SquareEqualMedium), - new(TabBorderStyle.SquareEqualLarge, KryptonLanguageManager.TabBorderStyles.SquareEqualLarge), - new(TabBorderStyle.SquareOutsizeSmall, KryptonLanguageManager.TabBorderStyles.SquareOutsizeSmall), - new(TabBorderStyle.SquareOutsizeMedium, KryptonLanguageManager.TabBorderStyles.SquareOutsizeMedium), - new(TabBorderStyle.SquareOutsizeLarge, KryptonLanguageManager.TabBorderStyles.SquareOutsizeLarge), - new(TabBorderStyle.RoundedEqualSmall, KryptonLanguageManager.TabBorderStyles.RoundedEqualSmall), - new(TabBorderStyle.RoundedEqualMedium, KryptonLanguageManager.TabBorderStyles.RoundedEqualMedium), - new(TabBorderStyle.RoundedEqualLarge, KryptonLanguageManager.TabBorderStyles.RoundedEqualLarge), - new(TabBorderStyle.RoundedOutsizeSmall, KryptonLanguageManager.TabBorderStyles.RoundedOutsizeSmall), - new(TabBorderStyle.RoundedOutsizeMedium, KryptonLanguageManager.TabBorderStyles.RoundedOutsizeMedium), - new(TabBorderStyle.RoundedOutsizeLarge, KryptonLanguageManager.TabBorderStyles.RoundedOutsizeLarge), - new(TabBorderStyle.SlantEqualNear, KryptonLanguageManager.TabBorderStyles.SlantEqualNear), - new(TabBorderStyle.SlantEqualFar, KryptonLanguageManager.TabBorderStyles.SlantEqualFar), - new(TabBorderStyle.SlantEqualBoth, KryptonLanguageManager.TabBorderStyles.SlantEqualBoth), - new(TabBorderStyle.SlantOutsizeNear, KryptonLanguageManager.TabBorderStyles.SlantOutsizeNear), - new(TabBorderStyle.SlantOutsizeFar, KryptonLanguageManager.TabBorderStyles.SlantOutsizeFar), - new(TabBorderStyle.SlantOutsizeBoth, KryptonLanguageManager.TabBorderStyles.SlantOutsizeBoth), - new(TabBorderStyle.SmoothEqual, KryptonLanguageManager.TabBorderStyles.SmoothEqual), - new(TabBorderStyle.SmoothOutsize, KryptonLanguageManager.TabBorderStyles.SmoothOutsize), - new(TabBorderStyle.DockEqual, KryptonLanguageManager.TabBorderStyles.DockEqual), - new(TabBorderStyle.DockOutsize, KryptonLanguageManager.TabBorderStyles.DockOutsize) + new Pair(TabBorderStyle.OneNote, KryptonLanguageManager.TabBorderStyles.OneNote), + new Pair(TabBorderStyle.SquareEqualSmall, KryptonLanguageManager.TabBorderStyles.SquareEqualSmall), + new Pair(TabBorderStyle.SquareEqualMedium, KryptonLanguageManager.TabBorderStyles.SquareEqualMedium), + new Pair(TabBorderStyle.SquareEqualLarge, KryptonLanguageManager.TabBorderStyles.SquareEqualLarge), + new Pair(TabBorderStyle.SquareOutsizeSmall, KryptonLanguageManager.TabBorderStyles.SquareOutsizeSmall), + new Pair(TabBorderStyle.SquareOutsizeMedium, KryptonLanguageManager.TabBorderStyles.SquareOutsizeMedium), + new Pair(TabBorderStyle.SquareOutsizeLarge, KryptonLanguageManager.TabBorderStyles.SquareOutsizeLarge), + new Pair(TabBorderStyle.RoundedEqualSmall, KryptonLanguageManager.TabBorderStyles.RoundedEqualSmall), + new Pair(TabBorderStyle.RoundedEqualMedium, KryptonLanguageManager.TabBorderStyles.RoundedEqualMedium), + new Pair(TabBorderStyle.RoundedEqualLarge, KryptonLanguageManager.TabBorderStyles.RoundedEqualLarge), + new Pair(TabBorderStyle.RoundedOutsizeSmall, KryptonLanguageManager.TabBorderStyles.RoundedOutsizeSmall), + new Pair(TabBorderStyle.RoundedOutsizeMedium, KryptonLanguageManager.TabBorderStyles.RoundedOutsizeMedium), + new Pair(TabBorderStyle.RoundedOutsizeLarge, KryptonLanguageManager.TabBorderStyles.RoundedOutsizeLarge), + new Pair(TabBorderStyle.SlantEqualNear, KryptonLanguageManager.TabBorderStyles.SlantEqualNear), + new Pair(TabBorderStyle.SlantEqualFar, KryptonLanguageManager.TabBorderStyles.SlantEqualFar), + new Pair(TabBorderStyle.SlantEqualBoth, KryptonLanguageManager.TabBorderStyles.SlantEqualBoth), + new Pair(TabBorderStyle.SlantOutsizeNear, KryptonLanguageManager.TabBorderStyles.SlantOutsizeNear), + new Pair(TabBorderStyle.SlantOutsizeFar, KryptonLanguageManager.TabBorderStyles.SlantOutsizeFar), + new Pair(TabBorderStyle.SlantOutsizeBoth, KryptonLanguageManager.TabBorderStyles.SlantOutsizeBoth), + new Pair(TabBorderStyle.SmoothEqual, KryptonLanguageManager.TabBorderStyles.SmoothEqual), + new Pair(TabBorderStyle.SmoothOutsize, KryptonLanguageManager.TabBorderStyles.SmoothOutsize), + new Pair(TabBorderStyle.DockEqual, KryptonLanguageManager.TabBorderStyles.DockEqual), + new Pair(TabBorderStyle.DockOutsize, KryptonLanguageManager.TabBorderStyles.DockOutsize) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Converters/TabStyleConverter.cs b/Source/Krypton Components/Krypton.Toolkit/Converters/TabStyleConverter.cs index 81263fbe2..7cfa0ebeb 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Converters/TabStyleConverter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Converters/TabStyleConverter.cs @@ -39,15 +39,15 @@ internal class TabStyleConverter : StringLookupConverter [Localizable(true)] private readonly Pair[] _pairs = { - new(TabStyle.HighProfile, KryptonLanguageManager.TabStyles.HighProfile), - new(TabStyle.StandardProfile, KryptonLanguageManager.TabStyles.StandardProfile), - new(TabStyle.LowProfile, KryptonLanguageManager.TabStyles.LowProfile), - new(TabStyle.OneNote, KryptonLanguageManager.TabStyles.OneNote), - new(TabStyle.Dock, KryptonLanguageManager.TabStyles.Dock), - new(TabStyle.DockAutoHidden, KryptonLanguageManager.TabStyles.DockAutoHidden), - new(TabStyle.Custom1, KryptonLanguageManager.TabStyles.Custom1), - new(TabStyle.Custom2, KryptonLanguageManager.TabStyles.Custom2), - new(TabStyle.Custom3, KryptonLanguageManager.TabStyles.Custom3) + new Pair(TabStyle.HighProfile, KryptonLanguageManager.TabStyles.HighProfile), + new Pair(TabStyle.StandardProfile, KryptonLanguageManager.TabStyles.StandardProfile), + new Pair(TabStyle.LowProfile, KryptonLanguageManager.TabStyles.LowProfile), + new Pair(TabStyle.OneNote, KryptonLanguageManager.TabStyles.OneNote), + new Pair(TabStyle.Dock, KryptonLanguageManager.TabStyles.Dock), + new Pair(TabStyle.DockAutoHidden, KryptonLanguageManager.TabStyles.DockAutoHidden), + new Pair(TabStyle.Custom1, KryptonLanguageManager.TabStyles.Custom1), + new Pair(TabStyle.Custom2, KryptonLanguageManager.TabStyles.Custom2), + new Pair(TabStyle.Custom3, KryptonLanguageManager.TabStyles.Custom3) }; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonBorderEdgeActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonBorderEdgeActionList.cs index 354283ff3..3e0aba6a0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonBorderEdgeActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonBorderEdgeActionList.cs @@ -127,7 +127,7 @@ public PaletteMode PaletteMode public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_borderEdge != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonBreadCrumbActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonBreadCrumbActionList.cs index 70a0b46f6..4889abf2f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonBreadCrumbActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonBreadCrumbActionList.cs @@ -113,7 +113,7 @@ public PaletteMode PaletteMode public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_breadCrumb != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonButtonActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonButtonActionList.cs index e7e7bbb52..64d6a054c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonButtonActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonButtonActionList.cs @@ -251,7 +251,7 @@ public bool UseAsUACElevatedButton public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_button != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckBoxActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckBoxActionList.cs index fc950302c..a3850423e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckBoxActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckBoxActionList.cs @@ -300,7 +300,7 @@ public PaletteTextTrim ShortTextTrim public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_checkBox != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckButtonActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckButtonActionList.cs index cd77ac8fa..218b4684a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckButtonActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckButtonActionList.cs @@ -77,7 +77,7 @@ public bool Checked public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_checkButton != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckSetActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckSetActionList.cs index 98f3404ff..f8e73ae02 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckSetActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckSetActionList.cs @@ -76,7 +76,7 @@ public Font StateCommonLongTextFont public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_set != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckedListBoxActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckedListBoxActionList.cs index 19d9071a4..bf236344b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckedListBoxActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCheckedListBoxActionList.cs @@ -233,7 +233,7 @@ public float StateCommonCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_checkedListBox != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonColorButtonActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonColorButtonActionList.cs index 3aa027eb0..0ba0e9ac7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonColorButtonActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonColorButtonActionList.cs @@ -297,7 +297,7 @@ public Rectangle SelectedRect public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_colorButton != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonComboBoxActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonComboBoxActionList.cs index 8e7177a81..bcf7dbce3 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonComboBoxActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonComboBoxActionList.cs @@ -148,7 +148,7 @@ public float StateCommonCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_comboBox != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCommandActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCommandActionList.cs index b284b4b85..a1cd83aa0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCommandActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonCommandActionList.cs @@ -105,7 +105,7 @@ public Color ImageTransparentColor public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a component instance at design time if (_command != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonContextMenuActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonContextMenuActionList.cs index dbc2571b9..87a4b29d1 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonContextMenuActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonContextMenuActionList.cs @@ -43,7 +43,7 @@ public KryptonContextMenuActionList(KryptonContextMenuDesigner owner) public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a component instance at design time if (_contextMenu != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDateTimePickerActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDateTimePickerActionList.cs index 24f3fa872..e5b4a7010 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDateTimePickerActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDateTimePickerActionList.cs @@ -180,7 +180,7 @@ public float StateCommonCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_dateTimePicker != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDomainUpDownActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDomainUpDownActionList.cs index 001fb49cb..3c9d5b378 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDomainUpDownActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDomainUpDownActionList.cs @@ -129,7 +129,7 @@ public float StateCommonCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_domainUpDown != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDropButtonActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDropButtonActionList.cs index e3f30aae8..a7c7f42b0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDropButtonActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonDropButtonActionList.cs @@ -267,7 +267,7 @@ public float StateCommonCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_dropButton != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonGroupActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonGroupActionList.cs index 3f0b8b9f7..d95c5d1ba 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonGroupActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonGroupActionList.cs @@ -96,7 +96,7 @@ public PaletteMode PaletteMode public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_group != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonGroupBoxActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonGroupBoxActionList.cs index 1239da642..87fe27b8e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonGroupBoxActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonGroupBoxActionList.cs @@ -232,7 +232,7 @@ public Font StateCommonShortTextFont public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_groupBox != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonHeaderActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonHeaderActionList.cs index f4f33da8d..e6a565030 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonHeaderActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonHeaderActionList.cs @@ -147,7 +147,7 @@ public PaletteMode PaletteMode public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_header != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonHeaderGroupActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonHeaderGroupActionList.cs index c223b218a..c5ed0fbf3 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonHeaderGroupActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonHeaderGroupActionList.cs @@ -168,7 +168,7 @@ public PaletteMode PaletteMode public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_headerGroup != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLabelActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLabelActionList.cs index 56a7d8224..e480510f4 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLabelActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLabelActionList.cs @@ -181,7 +181,7 @@ public Font StateCommonLongTextFont public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_label != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLanguageManagerActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLanguageManagerActionList.cs index 07049757c..956c5b50e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLanguageManagerActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLanguageManagerActionList.cs @@ -37,7 +37,7 @@ public KryptonLanguageManagerActionList(KryptonLanguageManagerDesigner manager) public override DesignerActionItemCollection GetSortedActionItems() { - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); if (_languageManager != null) { diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLinkLabelActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLinkLabelActionList.cs index 35a656d01..d793c7479 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLinkLabelActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLinkLabelActionList.cs @@ -223,7 +223,7 @@ public Font StateCommonLongTextFont public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_linkLabel != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLinkWrapLabelActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLinkWrapLabelActionList.cs index b35031370..5842772a7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLinkWrapLabelActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonLinkWrapLabelActionList.cs @@ -93,7 +93,7 @@ public Font Font public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_linkWrapLabel != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonListBoxActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonListBoxActionList.cs index 89ece6cae..a2484fad8 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonListBoxActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonListBoxActionList.cs @@ -234,7 +234,7 @@ public float StateCommonItemCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_listBox != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonListViewActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonListViewActionList.cs index 615dd3499..b85ae51c2 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonListViewActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonListViewActionList.cs @@ -169,7 +169,7 @@ public float StateCommonItemCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_listView != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonManagerActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonManagerActionList.cs index d6442ab77..82e0d7f0d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonManagerActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonManagerActionList.cs @@ -78,9 +78,9 @@ private void OnAddLanguageManager(object sender, EventArgs e) { if (_manager.LanguageManager == null) { - _manager.LanguageManager = new(); + _manager.LanguageManager = new KryptonLanguageManager(); - KryptonLanguageManager languageManager = new(); + KryptonLanguageManager languageManager = new KryptonLanguageManager(); _service.OnComponentChanged(_manager, null, null, languageManager); } @@ -89,14 +89,11 @@ private void OnAddLanguageManager(object sender, EventArgs e) private void OnRemoveLanguageManager(object sender, EventArgs e) { - if (_manager != null) + if (_manager?.LanguageManager != null) { - if (_manager.LanguageManager != null) - { - _manager.LanguageManager = null; + _manager.LanguageManager = null; - _service.OnComponentChanged(_manager, null, _manager.LanguageManager, null); - } + _service.OnComponentChanged(_manager, null, _manager.LanguageManager, null); } } @@ -110,7 +107,7 @@ private void OnRemoveLanguageManager(object sender, EventArgs e) public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a component instance at design time if (_manager != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonMaskedTextBoxActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonMaskedTextBoxActionList.cs index 8b8029de3..401cbfdfd 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonMaskedTextBoxActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonMaskedTextBoxActionList.cs @@ -148,7 +148,7 @@ public float StateCommonCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_maskedTextBox != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonMonthCalendarActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonMonthCalendarActionList.cs index e4a486bc5..d578fc4cc 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonMonthCalendarActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonMonthCalendarActionList.cs @@ -199,7 +199,7 @@ public float StateCommonCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_monthCalendar != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonNumericUpDownActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonNumericUpDownActionList.cs index bea25ef2e..ef014d9b8 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonNumericUpDownActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonNumericUpDownActionList.cs @@ -182,7 +182,7 @@ public float StateCommonCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_numericUpDown != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPaletteActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPaletteActionList.cs index e7ed161fe..443ff1365 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPaletteActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPaletteActionList.cs @@ -43,7 +43,7 @@ public KryptonPaletteActionList(KryptonPaletteDesigner owner) public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a component instance at design time if (_palette != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPanelActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPanelActionList.cs index 6aaed403c..244eab35b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPanelActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPanelActionList.cs @@ -79,7 +79,7 @@ public PaletteMode PaletteMode public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_panel != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPropertyGridActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPropertyGridActionList.cs index cebd9e03c..f66d032a0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPropertyGridActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonPropertyGridActionList.cs @@ -85,7 +85,7 @@ public PropertySort PropertySort public override DesignerActionItemCollection GetSortedActionItems() { - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); if (_propertyGrid != null) { diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonRadioButtonActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonRadioButtonActionList.cs index b0eba1f16..d8b4cf78e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonRadioButtonActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonRadioButtonActionList.cs @@ -215,7 +215,7 @@ public Font StateCommonLongTextFont public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_radioButton != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonRichTextBoxActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonRichTextBoxActionList.cs index 05232677d..bdceca725 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonRichTextBoxActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonRichTextBoxActionList.cs @@ -165,7 +165,7 @@ public float StateCommonCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_richTextBox != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonScrollBarActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonScrollBarActionList.cs index e935ceef5..adbe868f0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonScrollBarActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonScrollBarActionList.cs @@ -104,7 +104,7 @@ public ScrollBarOrientation Orientation /// A DesignerActionItem array that contains the items in this list. public override DesignerActionItemCollection GetSortedActionItems() { - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); if (_scrollBar != null) { diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonSeparatorActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonSeparatorActionList.cs index 3e0a5bcc1..3132806da 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonSeparatorActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonSeparatorActionList.cs @@ -96,7 +96,7 @@ public PaletteMode PaletteMode public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_separator != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonSplitContainerActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonSplitContainerActionList.cs index 8852a87c6..725ff4f63 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonSplitContainerActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonSplitContainerActionList.cs @@ -112,7 +112,7 @@ public PaletteMode PaletteMode public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_splitContainer != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTextBoxActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTextBoxActionList.cs index 30048b6b3..bb3a2f308 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTextBoxActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTextBoxActionList.cs @@ -138,24 +138,6 @@ public bool UseSystemPasswordChar } } - /// Gets or sets the hint. - /// The hint. - [Obsolete("Deprecated - Use CueHint.CueHintText")] - public string CueHintText - { - get => _textBox.CueHint.CueHintText; - - set - { - if (_textBox.CueHint.CueHintText != value) - { - _service.OnComponentChanged(_textBox, null, _textBox.CueHint.CueHintText, value); - - _textBox.CueHint.CueHintText = value; - } - } - } - // Gets or sets the text box font. /// The text box font. public Font? Font @@ -200,7 +182,7 @@ public float StateCommonCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_textBox != null) @@ -215,7 +197,6 @@ public override DesignerActionItemCollection GetSortedActionItems() actions.Add(new DesignerActionPropertyItem(nameof(Multiline), nameof(Multiline), nameof(TextBox), @"Should text span multiple lines.")); actions.Add(new DesignerActionPropertyItem(nameof(WordWrap), nameof(WordWrap), nameof(TextBox), @"Should words be wrapped over multiple lines.")); actions.Add(new DesignerActionPropertyItem(nameof(UseSystemPasswordChar), nameof(UseSystemPasswordChar), nameof(TextBox), @"Should characters be Displayed in password characters.")); - actions.Add(new DesignerActionPropertyItem(nameof(CueHintText), nameof(CueHintText), nameof(TextBox), @"Sets the hint string for the textbox.")); actions.Add(new DesignerActionHeaderItem(@"Visuals")); actions.Add(new DesignerActionPropertyItem(nameof(PaletteMode), @"Palette", @"Visuals", @"Palette applied to drawing")); } diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTrackBarActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTrackBarActionList.cs index 0920014b4..a8a3972d4 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTrackBarActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTrackBarActionList.cs @@ -180,7 +180,7 @@ public int LargeChange public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_trackBar != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTreeViewActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTreeViewActionList.cs index 43d48a99c..51b457a6d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTreeViewActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonTreeViewActionList.cs @@ -217,7 +217,7 @@ public float NodeStateCommonCornerRoundingRadius public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_treeView != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonWrapLabelActionList.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonWrapLabelActionList.cs index c2db23cd2..77e7c16f8 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonWrapLabelActionList.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Action Lists/KryptonWrapLabelActionList.cs @@ -96,7 +96,7 @@ public Font Font public override DesignerActionItemCollection GetSortedActionItems() { // Create a new collection for holding the single item we want to create - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_wrapLabel != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBorderEdgeDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBorderEdgeDesigner.cs index 0ada39ec7..48abae00e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBorderEdgeDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBorderEdgeDesigner.cs @@ -35,7 +35,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the button specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBreadCrumbDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBreadCrumbDesigner.cs index 46c20b4fa..e325f5a7b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBreadCrumbDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBreadCrumbDesigner.cs @@ -65,7 +65,7 @@ public override ICollection AssociatedComponents { get { - ArrayList compound = new(base.AssociatedComponents); + ArrayList compound = new ArrayList(base.AssociatedComponents); if (_breadCrumb != null) { @@ -85,7 +85,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the bread crumb specific list @@ -172,7 +172,7 @@ private void OnBreadCrumbMouseUp(object sender, MouseEventArgs e) _breadCrumb.PerformLayout(); // Select the component - ArrayList selectionList = new() + ArrayList selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBreadCrumbItemDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBreadCrumbItemDesigner.cs index 834609eba..023a32f82 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBreadCrumbItemDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonBreadCrumbItemDesigner.cs @@ -48,7 +48,7 @@ public override ICollection AssociatedComponents { get { - ArrayList compound = new(base.AssociatedComponents); + ArrayList compound = new ArrayList(base.AssociatedComponents); if (_crumbItem != null) { diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonButtonDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonButtonDesigner.cs index 90455e5a1..9c10d2b2f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonButtonDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonButtonDesigner.cs @@ -35,7 +35,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the button specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckBoxDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckBoxDesigner.cs index 48a328939..84c8e168f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckBoxDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckBoxDesigner.cs @@ -35,7 +35,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the checkbox specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckButtonDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckButtonDesigner.cs index 76c906eaf..2bce328e9 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckButtonDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckButtonDesigner.cs @@ -23,7 +23,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the check button specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckSetDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckSetDesigner.cs index 5cec4768e..14ed3100f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckSetDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckSetDesigner.cs @@ -23,7 +23,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the panel specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckedListBoxDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckedListBoxDesigner.cs index 8377cdbec..fdf6ada37 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckedListBoxDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCheckedListBoxDesigner.cs @@ -38,7 +38,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonColorButtonDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonColorButtonDesigner.cs index 06b9ba9b1..c93fd67a6 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonColorButtonDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonColorButtonDesigner.cs @@ -35,7 +35,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the color button specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonComboBoxDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonComboBoxDesigner.cs index a5db931bf..f6487cb6d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonComboBoxDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonComboBoxDesigner.cs @@ -86,7 +86,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list @@ -152,7 +152,7 @@ private void OnComboBoxMouseUp(object sender, MouseEventArgs e) _comboBox.PerformLayout(); // Select the component - ArrayList selectionList = new() + ArrayList selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCommandDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCommandDesigner.cs index 7d1334007..b1a3ad981 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCommandDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonCommandDesigner.cs @@ -23,7 +23,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the palette specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuDesigner.cs index b17344c4c..4065fb870 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuDesigner.cs @@ -48,7 +48,7 @@ public override ICollection AssociatedComponents { get { - ArrayList compound = new(base.AssociatedComponents); + ArrayList compound = new ArrayList(base.AssociatedComponents); if (_contextMenu != null) { @@ -67,7 +67,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the palette specific list new KryptonContextMenuActionList(this) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuItemDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuItemDesigner.cs index f4e0bc2f5..d36a31094 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuItemDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuItemDesigner.cs @@ -48,7 +48,7 @@ public override ICollection AssociatedComponents { get { - ArrayList compound = new(base.AssociatedComponents); + ArrayList compound = new ArrayList(base.AssociatedComponents); if (_contextMenuItem != null) { diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuItemsDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuItemsDesigner.cs index 21b5d0bec..c4024b9ba 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuItemsDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonContextMenuItemsDesigner.cs @@ -48,7 +48,7 @@ public override ICollection AssociatedComponents { get { - ArrayList compound = new(base.AssociatedComponents); + ArrayList compound = new ArrayList(base.AssociatedComponents); if (_contextMenuItems != null) { diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDateTimePickerDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDateTimePickerDesigner.cs index 3aab8da2b..762fea294 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDateTimePickerDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDateTimePickerDesigner.cs @@ -72,7 +72,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the bread crumb specific list @@ -171,7 +171,7 @@ private void OnDateTimePickerMouseUp(object sender, MouseEventArgs e) _dateTimePicker.PerformLayout(); // Select the component - ArrayList selectionList = new() + ArrayList selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDomainUpDownDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDomainUpDownDesigner.cs index cbd9be381..147f880ae 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDomainUpDownDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDomainUpDownDesigner.cs @@ -89,7 +89,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list @@ -155,7 +155,7 @@ private void OnDomainUpDownMouseUp(object sender, MouseEventArgs e) _domainUpDown.PerformLayout(); // Select the component - ArrayList selectionList = new() + ArrayList selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDropButtonDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDropButtonDesigner.cs index d1e1b8f47..772cfbbf1 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDropButtonDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonDropButtonDesigner.cs @@ -35,7 +35,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the drop down button specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupBoxDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupBoxDesigner.cs index d18f33d1c..26a0279c5 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupBoxDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupBoxDesigner.cs @@ -83,7 +83,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the group box specific list new KryptonGroupBoxActionList(this) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupDesigner.cs index 5405504d4..28f4fe72b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupDesigner.cs @@ -81,7 +81,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the group specific list new KryptonGroupActionList(this) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupPanelDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupPanelDesigner.cs index 965910e31..35487fa99 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupPanelDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonGroupPanelDesigner.cs @@ -89,7 +89,7 @@ public override IList SnapLines /// /// Gets the design-time action lists supported by the component associated with the designer. /// - public override DesignerActionListCollection ActionLists => new(); + public override DesignerActionListCollection ActionLists => new DesignerActionListCollection(); /// /// Should painting be performed for the selection glyph. diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonHeaderDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonHeaderDesigner.cs index 7cf826d9a..461f9a6f4 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonHeaderDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonHeaderDesigner.cs @@ -97,7 +97,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the header specific list @@ -165,7 +165,7 @@ private void OnHeaderMouseUp(object sender, MouseEventArgs e) _header.PerformLayout(); // Select the component - ArrayList selectionList = new() + ArrayList selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonHeaderGroupDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonHeaderGroupDesigner.cs index f60d0311f..c1ad6f0d2 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonHeaderGroupDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonHeaderGroupDesigner.cs @@ -103,7 +103,7 @@ public override ICollection AssociatedComponents else { // Create a new collection for both values - ArrayList compound = new(baseComponents); + ArrayList compound = new ArrayList(baseComponents); // Add all the button specs to the end compound.AddRange(_headerGroup.ButtonSpecs); @@ -145,7 +145,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the header group specific list @@ -213,7 +213,7 @@ private void OnHeaderGroupMouseUp(object sender, MouseEventArgs e) _headerGroup.PerformLayout(); // Select the component - ArrayList selectionList = new() + ArrayList selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLabelDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLabelDesigner.cs index dbca08ec0..4e2bacc97 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLabelDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLabelDesigner.cs @@ -35,7 +35,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLanguageManagerDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLanguageManagerDesigner.cs index 99c098aca..f812483ee 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLanguageManagerDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLanguageManagerDesigner.cs @@ -17,7 +17,7 @@ public override DesignerActionListCollection ActionLists { get { - DesignerActionListCollection actionList = new() + DesignerActionListCollection actionList = new DesignerActionListCollection { new KryptonLanguageManagerActionList(this) }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLinkLabelDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLinkLabelDesigner.cs index 77e9930c3..0981d1fad 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLinkLabelDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLinkLabelDesigner.cs @@ -35,7 +35,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLinkWrapLabelDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLinkWrapLabelDesigner.cs index 25b37afe8..e6107de5e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLinkWrapLabelDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonLinkWrapLabelDesigner.cs @@ -31,7 +31,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the wrap label specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonListBoxDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonListBoxDesigner.cs index 06b4721ce..46426fa5c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonListBoxDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonListBoxDesigner.cs @@ -40,7 +40,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonListViewDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonListViewDesigner.cs index e0891c895..92be89c80 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonListViewDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonListViewDesigner.cs @@ -40,7 +40,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonManagerDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonManagerDesigner.cs index 597034438..c1c29e507 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonManagerDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonManagerDesigner.cs @@ -23,7 +23,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the manager specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonMaskedTextBoxDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonMaskedTextBoxDesigner.cs index bc9546adc..b34433900 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonMaskedTextBoxDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonMaskedTextBoxDesigner.cs @@ -95,7 +95,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list @@ -161,7 +161,7 @@ private void OnMaskedTextBoxMouseUp(object sender, MouseEventArgs e) _maskedTextBox.PerformLayout(); // Select the component - ArrayList selectionList = new() + ArrayList selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonMonthCalendarDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonMonthCalendarDesigner.cs index e2c8bbd4f..7305e4615 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonMonthCalendarDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonMonthCalendarDesigner.cs @@ -77,7 +77,7 @@ public override ICollection AssociatedComponents else { // Create a new collection for both values - ArrayList compound = new(baseComponents); + ArrayList compound = new ArrayList(baseComponents); // Add all the button specs to the end compound.AddRange(_monthCalendar.ButtonSpecs); @@ -95,7 +95,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the bread crumb specific list @@ -194,7 +194,7 @@ private void OnCalendarMouseUp(object sender, MouseEventArgs e) _monthCalendar.PerformLayout(); // Select the component - ArrayList selectionList = new() + ArrayList selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonNumericUpDownDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonNumericUpDownDesigner.cs index 5bc61965f..0b0d14be9 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonNumericUpDownDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonNumericUpDownDesigner.cs @@ -89,7 +89,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list @@ -155,7 +155,7 @@ private void OnNumericUpDownMouseUp(object sender, MouseEventArgs e) _numericUpDown.PerformLayout(); // Select the component - ArrayList selectionList = new() + ArrayList selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPaletteDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPaletteDesigner.cs index 8d99c2df9..1c4e1b45c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPaletteDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPaletteDesigner.cs @@ -23,7 +23,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the palette specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPanelDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPanelDesigner.cs index 8d3cc767a..6d82b645a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPanelDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPanelDesigner.cs @@ -35,7 +35,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the panel specific list @@ -66,7 +66,7 @@ protected override void OnPaintAdornments(PaintEventArgs pe) private void DrawBorder(Graphics graphics) { // Create a pen for drawing - using Pen borderPen = new(SystemColors.ControlDarkDark); + using Pen borderPen = new Pen(SystemColors.ControlDarkDark); // Always draw the border dashed borderPen.DashStyle = DashStyle.Dash; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPropertyGridDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPropertyGridDesigner.cs index 830381e8f..9d4571631 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPropertyGridDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonPropertyGridDesigner.cs @@ -26,7 +26,7 @@ public override DesignerActionListCollection ActionLists { get { - DesignerActionListCollection actionList = new() + DesignerActionListCollection actionList = new DesignerActionListCollection { new KryptonPropertyGridActionList(this) }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonRadioButtonDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonRadioButtonDesigner.cs index 693145698..efe80aca3 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonRadioButtonDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonRadioButtonDesigner.cs @@ -35,7 +35,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the checkbox specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonRichTextBoxDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonRichTextBoxDesigner.cs index 43d90f079..cd1172a3a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonRichTextBoxDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonRichTextBoxDesigner.cs @@ -95,7 +95,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list @@ -161,7 +161,7 @@ private void OnTextBoxMouseUp(object sender, MouseEventArgs e) _richTextBox.PerformLayout(); // Select the component - ArrayList selectionList = new() + ArrayList selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonScrollBarDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonScrollBarDesigner.cs index 1d2b06341..493443e9e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonScrollBarDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonScrollBarDesigner.cs @@ -30,7 +30,7 @@ public override DesignerActionListCollection ActionLists { get { - DesignerActionListCollection actionList = new() + DesignerActionListCollection actionList = new DesignerActionListCollection { new KryptonScrollBarActionList(this) }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSeparatorDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSeparatorDesigner.cs index 6d697865d..1a85fe42c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSeparatorDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSeparatorDesigner.cs @@ -35,7 +35,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSplitContainerDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSplitContainerDesigner.cs index b547ccc2d..936d42646 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSplitContainerDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSplitContainerDesigner.cs @@ -126,7 +126,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the orientation list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSplitterPanelDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSplitterPanelDesigner.cs index 59c68584a..dfdfb9723 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSplitterPanelDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonSplitterPanelDesigner.cs @@ -218,7 +218,7 @@ private void DrawWaterMark(Graphics g) var drawText = Control.Name; // Use a fixed font for the drawing - using Font f = new("Arial", 8f); + using Font f = new Font("Arial", 8f); try { // Measure the size of the text diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTextBoxDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTextBoxDesigner.cs index 4313448f1..7b943cf1a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTextBoxDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTextBoxDesigner.cs @@ -95,7 +95,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list @@ -161,7 +161,7 @@ private void OnTextBoxMouseUp(object sender, MouseEventArgs e) _textBox.PerformLayout(); // Select the component - ArrayList selectionList = new() + ArrayList selectionList = new ArrayList { component }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTrackBarDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTrackBarDesigner.cs index f942d8565..4a5ca04d7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTrackBarDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTrackBarDesigner.cs @@ -66,7 +66,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the button specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTreeViewDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTreeViewDesigner.cs index 93f265141..bb38ed366 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTreeViewDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonTreeViewDesigner.cs @@ -40,7 +40,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the label specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonWrapLabelDesigner.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonWrapLabelDesigner.cs index 68a16a89e..277b9c40d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonWrapLabelDesigner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Designers/KryptonWrapLabelDesigner.cs @@ -35,7 +35,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the wrap label specific list diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/KryptonBreadCrumbItemsEditor.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/KryptonBreadCrumbItemsEditor.cs index 2dad3eafd..23f2b299b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/KryptonBreadCrumbItemsEditor.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/KryptonBreadCrumbItemsEditor.cs @@ -800,7 +800,7 @@ private void UpdatePropertyGrid() private DictItemBase CreateItemsDictionary(object[] items) { - DictItemBase dictItems = new(); + DictItemBase dictItems = new DictItemBase(); foreach (KryptonBreadCrumbItem item in items) { @@ -825,7 +825,7 @@ private void AddItemsToDictionary(DictItemBase dictItems, KryptonBreadCrumbItem private void AddMenuTreeNode(KryptonBreadCrumbItem item, MenuTreeNode parent) { // Create a node to match the item - MenuTreeNode node = new(item); + MenuTreeNode node = new MenuTreeNode(item); // Add to either root or parent node if (parent != null) diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/KryptonCheckButtonCollectionEditor.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/KryptonCheckButtonCollectionEditor.cs index f11683a65..a89704426 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/KryptonCheckButtonCollectionEditor.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/KryptonCheckButtonCollectionEditor.cs @@ -42,7 +42,7 @@ public override object EditValue(ITypeDescriptorContext? context, IServiceProvid KryptonCheckSet checkSet = (KryptonCheckSet)context.Instance; // Create the dialog used to edit the set of KryptonCheckButtons - KryptonCheckButtonCollectionForm dialog = new(checkSet); + KryptonCheckButtonCollectionForm dialog = new KryptonCheckButtonCollectionForm(checkSet); if (editorService.ShowDialog(dialog) == DialogResult.OK) { diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/PaletteDrawBordersEditor.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/PaletteDrawBordersEditor.cs index 757bed0bd..2341c554a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/PaletteDrawBordersEditor.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Editors/PaletteDrawBordersEditor.cs @@ -45,7 +45,7 @@ public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext contex if (service != null) { // Create the custom control used to edit value - PaletteDrawBordersSelector selector = new() + PaletteDrawBordersSelector selector = new PaletteDrawBordersSelector { // Populate selector with starting value diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Other/KryptonSplitContainerGlyph.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Other/KryptonSplitContainerGlyph.cs index 061298403..97d280c29 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Other/KryptonSplitContainerGlyph.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Other/KryptonSplitContainerGlyph.cs @@ -69,7 +69,7 @@ public KryptonSplitContainerGlyph([DisallowNull] ISelectionService selectionServ if (bounds.Contains(pt)) { // Convert from adorner coordinates to the control client coordinates - Point splitPt = new(pt.X - bounds.X, pt.Y - bounds.Y); + Point splitPt = new Point(pt.X - bounds.X, pt.Y - bounds.Y); // Ask the split container for the correct cursor to use return _splitContainer.DesignGetHitTest(splitPt); diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/Other/OverrideComboBoxStyleDropDownStyle.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/Other/OverrideComboBoxStyleDropDownStyle.cs index e30292ec8..536e2e3ef 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/Other/OverrideComboBoxStyleDropDownStyle.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/Other/OverrideComboBoxStyleDropDownStyle.cs @@ -32,8 +32,8 @@ public override object EditValue(ITypeDescriptorContext context, IServiceProvide IWindowsFormsEditorService svc = (IWindowsFormsEditorService)provider?.GetService(typeof(IWindowsFormsEditorService)); if (svc != null) { - UserControl ctrl = new(); - ListBox clb = new() { Dock = DockStyle.Fill }; + UserControl ctrl = new UserControl(); + ListBox clb = new ListBox { Dock = DockStyle.Fill }; clb.Items.Add(ComboBoxStyle.DropDown); clb.Items.Add(ComboBoxStyle.DropDownList); clb.SelectedIndexChanged += delegate diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/UX/KryptonCheckButtonCollectionForm.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/UX/KryptonCheckButtonCollectionForm.cs index 6f7b9fdd6..076d2790d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/UX/KryptonCheckButtonCollectionForm.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/UX/KryptonCheckButtonCollectionForm.cs @@ -32,7 +32,7 @@ public ListEntry([DisallowNull] KryptonCheckButton checkButton) /// Gets a string representation of the encapsulated check button. /// /// String instance. - public override string ToString() => CheckButton.Site.Name + " (Text: " + CheckButton.Text + ")"; + public override string ToString() => $"{CheckButton.Site.Name} (Text: {CheckButton.Text})"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Designers/UX/KryptonContextMenuCollectionForm.cs b/Source/Krypton Components/Krypton.Toolkit/Designers/UX/KryptonContextMenuCollectionForm.cs index 8bfc66ee2..91188eef3 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Designers/UX/KryptonContextMenuCollectionForm.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Designers/UX/KryptonContextMenuCollectionForm.cs @@ -856,7 +856,7 @@ private void UpdatePropertyGrid() private void AddMenuTreeNode(KryptonContextMenuItemBase item, MenuTreeNode parent) { // Create a node to match the item - MenuTreeNode node = new(item); + MenuTreeNode node = new MenuTreeNode(item); // Add to either root or parent node if (parent != null) @@ -1018,11 +1018,11 @@ private bool AllowAddItem(KryptonContextMenuItemBase item, if (ItemInsideCollection(item, parent)) { - KryptonContextMenuCollection temp = new(); + KryptonContextMenuCollection temp = new KryptonContextMenuCollection(); return temp.RestrictTypes.Any(t => t.Equals(addType)); } - KryptonContextMenuItemCollection temp1 = new(); + KryptonContextMenuItemCollection temp1 = new KryptonContextMenuItemCollection(); if (temp1.RestrictTypes.Any(t => t.Equals(addType))) { return true; @@ -1030,7 +1030,7 @@ private bool AllowAddItem(KryptonContextMenuItemBase item, if (item is KryptonContextMenuItem) { - KryptonContextMenuCollection temp2 = new(); + KryptonContextMenuCollection temp2 = new KryptonContextMenuCollection(); return temp2.RestrictTypes.Any(t => t.Equals(addType)); } @@ -1040,14 +1040,14 @@ private bool AllowAddItem(KryptonContextMenuItemBase item, private bool ValidInCollection(KryptonContextMenuItemBase item) { Type addType = item.GetType(); - KryptonContextMenuCollection temp = new(); + KryptonContextMenuCollection temp = new KryptonContextMenuCollection(); return temp.RestrictTypes.Any(t => t.Equals(addType)); } private bool ValidInItemCollection(KryptonContextMenuItemBase item) { Type addType = item.GetType(); - KryptonContextMenuItemCollection temp = new(); + KryptonContextMenuItemCollection temp = new KryptonContextMenuItemCollection(); return temp.RestrictTypes.Any(t => t.Equals(addType)); } @@ -1059,7 +1059,7 @@ private bool ItemInsideCollection(KryptonContextMenuItemBase item, private DictItemBase CreateItemsDictionary(object[] items) { - DictItemBase dictItems = new(); + DictItemBase dictItems = new DictItemBase(); foreach (KryptonContextMenuItemBase item in items) { diff --git a/Source/Krypton Components/Krypton.Toolkit/General/BlurManager.cs b/Source/Krypton Components/Krypton.Toolkit/General/BlurManager.cs index 65db99a97..c61e566dd 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/BlurManager.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/BlurManager.cs @@ -108,14 +108,14 @@ public bool IsOverlapped() visited.Add(_visualBlur.Handle); - PI.RECT thisRect = new(); + PI.RECT thisRect = new PI.RECT(); PI.GetWindowRect(hWnd, ref thisRect); while ((hWnd = PI.GetWindow(hWnd, PI.GetWindowType.GW_HWNDPREV)) != IntPtr.Zero && !visited.Contains(hWnd)) { visited.Add(hWnd); - PI.RECT testRect = new(); + PI.RECT testRect = new PI.RECT(); if (PI.IsWindowVisible(hWnd) && PI.GetWindowRect(hWnd, ref testRect) && PI.IntersectRect(out _, ref thisRect, ref testRect) @@ -222,7 +222,7 @@ internal void TakeSnapshot() private static Bitmap TakeSnapshot(Rectangle targetRectangle) { - Bitmap bmp = new(targetRectangle.Width, targetRectangle.Height); + Bitmap bmp = new Bitmap(targetRectangle.Width, targetRectangle.Height); Graphics g = Graphics.FromImage(bmp); g.CopyFromScreen(targetRectangle.Left, targetRectangle.Top, 0, 0, bmp.Size); return bmp; diff --git a/Source/Krypton Components/Krypton.Toolkit/General/CommonHelper.cs b/Source/Krypton Components/Krypton.Toolkit/General/CommonHelper.cs index c3c27cb51..cf7aa22f9 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/CommonHelper.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/CommonHelper.cs @@ -50,11 +50,11 @@ public static class CommonHelper private static PropertyInfo? _cachedDesignModePI; private static MethodInfo? _cachedShortcutMI; private static NullContentValues? _nullContentValues; - private static readonly DoubleConverter _dc = new(); - private static readonly SizeConverter _sc = new(); - private static readonly PointConverter _pc = new(); - private static readonly BooleanConverter _bc = new(); - private static readonly ColorConverter _cc = new(); + private static readonly DoubleConverter _dc = new DoubleConverter(); + private static readonly SizeConverter _sc = new SizeConverter(); + private static readonly PointConverter _pc = new PointConverter(); + private static readonly BooleanConverter _bc = new BooleanConverter(); + private static readonly ColorConverter _cc = new ColorConverter(); #endregion @@ -65,7 +65,7 @@ public static Point NullPoint { [DebuggerStepThrough] get; - } = new(int.MaxValue, int.MaxValue); + } = new Point(int.MaxValue, int.MaxValue); /// /// Gets access to the global null rectangle value. @@ -74,7 +74,7 @@ public static Rectangle NullRectangle { [DebuggerStepThrough] get; - } = new(int.MaxValue, int.MaxValue, 0, 0); + } = new Rectangle(int.MaxValue, int.MaxValue, 0, 0); /// /// Color matrix used to adjust colors to look disabled. @@ -83,15 +83,11 @@ public static ColorMatrix MatrixDisabled { [DebuggerStepThrough] get; - } = new(new[] - { - new[]{0.3f,0.3f,0.3f,0,0}, - new[]{0.59f,0.59f,0.59f,0,0}, - new[]{0.11f,0.11f,0.11f,0,0}, - new[]{0,0,0,0.5f,0}, - new float[]{0,0,0,0,1} - } - ); + } = new ColorMatrix(new[] + { + new[] { 0.3f, 0.3f, 0.3f, 0, 0 }, new[] { 0.59f, 0.59f, 0.59f, 0, 0 }, + new[] { 0.11f, 0.11f, 0.11f, 0, 0 }, new[] { 0, 0, 0, 0.5f, 0 }, new float[] { 0, 0, 0, 0, 1 } + }); /// /// Gets the next global identifier in sequence. @@ -123,7 +119,7 @@ public static Padding InheritPadding { [DebuggerStepThrough] get; - } = new(-1); + } = new Padding(-1); /// /// Check a short cut menu for a matching short and invoke that item if found. @@ -420,12 +416,12 @@ public static bool ValidKryptonContextMenu(KryptonContextMenu? kcm) => public static object? PerformOperation(Operation op, object parameter) { // Create a modal window for showing feedback - using ModalWaitDialog wait = new(); + using ModalWaitDialog wait = new ModalWaitDialog(); // Create the object that runs the operation in a separate thread - OperationThread opThread = new(op, parameter); + OperationThread opThread = new OperationThread(op, parameter); // Create the actual thread and provide thread entry point - Thread thread = new(opThread.Run); + Thread thread = new Thread(opThread.Run); // Kick off the thread action thread.Start(); @@ -829,7 +825,7 @@ public static PaletteButtonStyle ButtonStyleToPalette(ButtonStyle style) /// GraphicsPath instance. public static GraphicsPath RoundedRectanglePath(Rectangle rect, int rounding) { - GraphicsPath roundedPath = new(); + GraphicsPath roundedPath = new GraphicsPath(); // Only use a rounding that will fit inside the rect rounding = Math.Min(rounding, Math.Min(rect.Width / 2, rect.Height / 2) - rounding); @@ -843,7 +839,7 @@ public static GraphicsPath RoundedRectanglePath(Rectangle rect, int rounding) else { // We create the path using a floating point rectangle - RectangleF rectF = new(rect.X, rect.Y, rect.Width, rect.Height); + RectangleF rectF = new RectangleF(rect.X, rect.Y, rect.Width, rect.Height); // The border is made of up a quarter of a circle arc, in each corner var arcLength = rounding * 2; @@ -1128,14 +1124,14 @@ public static void AddControlToParent([DisallowNull] Control parent, [DisallowNu Debug.Assert(c != null); // If the control is already inside a control collection, then remove it - if (c!.Parent != null) + if (c.Parent != null) { RemoveControlFromParent(c); } // Then must use the internal method for adding a new instance // If the control collection is one of our internal collections... - if (parent!.Controls is KryptonControlCollection cc) + if (parent.Controls is KryptonControlCollection cc) { cc.AddInternal(c); } @@ -1155,7 +1151,7 @@ public static void RemoveControlFromParent([DisallowNull] Control c) Debug.Assert(c != null); // If the control is inside a parent collection - if (c!.Parent != null) + if (c.Parent != null) { // Then must use the internal method for adding a new instance // If the control collection is one of our internal collections... @@ -1178,7 +1174,7 @@ public static void RemoveControlFromParent([DisallowNull] Control c) /// Border sizing. public static Padding GetWindowBorders(CreateParams cp) { - PI.RECT rect = new() + PI.RECT rect = new PI.RECT { // Start with a zero sized rectangle left = 0, @@ -1231,7 +1227,7 @@ public static Rectangle RealClientRectangle(IntPtr handle) { // Grab the actual current size of the window, this is more accurate than using // the 'this.Size' which is out of date when performing a resize of the window. - PI.RECT windowRect = new(); + PI.RECT windowRect = new PI.RECT(); PI.GetWindowRect(handle, ref windowRect); // Create rectangle that encloses the entire window @@ -1357,7 +1353,7 @@ public static string MakeCustomDateFormat(string format) if (format.IndexOfAny(_singleDateFormat) == 0) { // Insert the percentage sign so it is a custom format and not a predefined one - format = "%" + format; + format = $"%{format}"; } } @@ -1425,9 +1421,9 @@ public static void DestroyInstance(object instance, IDesignerHost? host) public static void LogOutput(string str) { // TODO: Make this thread aware ! - FileInfo fi = new(Application.ExecutablePath); - using var writer = new StreamWriter(fi.DirectoryName + @"LogOutput.txt", true, Encoding.ASCII); - writer.Write(DateTime.Now.ToLongTimeString() + @" : "); + FileInfo fi = new FileInfo(Application.ExecutablePath); + using var writer = new StreamWriter($@"{fi.DirectoryName}LogOutput.txt", true, Encoding.ASCII); + writer.Write($@"{DateTime.Now.ToLongTimeString()} : "); writer.WriteLine(str); writer.Flush(); } @@ -1529,7 +1525,7 @@ public static bool DesignMode(Component? c) public static Point ClientMouseMessageToScreenPt(Message m) { // Extract the x and y mouse position from message - PI.POINTC clientPt = new() + PI.POINTC clientPt = new PI.POINTC { x = PI.LOWORD((int)m.LParam), y = PI.HIWORD((int)m.LParam) @@ -1548,7 +1544,7 @@ public static Point ClientMouseMessageToScreenPt(Message m) } // Convert a 0,0 point from client to screen to find offsetting - PI.POINTC zeroPIPt = new() + PI.POINTC zeroPIPt = new PI.POINTC { x = 0, y = 0 diff --git a/Source/Krypton Components/Krypton.Toolkit/General/ContextMenuProvider.cs b/Source/Krypton Components/Krypton.Toolkit/General/ContextMenuProvider.cs index a5a3746d3..f7c4bfdcf 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/ContextMenuProvider.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/ContextMenuProvider.cs @@ -28,17 +28,17 @@ public class ContextMenuProvider : IContextMenuProvider /// /// Raises the Dispose event. /// - public event EventHandler Dispose; + public event EventHandler? Dispose; /// /// Raises the Closing event. /// - public event CancelEventHandler Closing; + public event CancelEventHandler? Closing; /// /// Raises the Close event. /// - public event EventHandler Close; + public event EventHandler? Close; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/General/Definitions.cs b/Source/Krypton Components/Krypton.Toolkit/General/Definitions.cs index 5259deef9..b648fc385 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/Definitions.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/Definitions.cs @@ -59,7 +59,7 @@ public interface IButtonSpecValues /// /// Occurs when a button spec property has changed. /// - event PropertyChangedEventHandler ButtonSpecPropertyChanged; + event PropertyChangedEventHandler? ButtonSpecPropertyChanged; /// /// Gets the button image. @@ -175,17 +175,17 @@ public interface IContextMenuProvider /// /// Raises the Dispose event. /// - event EventHandler Dispose; + event EventHandler? Dispose; /// /// Raises the Closing event. /// - event CancelEventHandler Closing; + event CancelEventHandler? Closing; /// /// Raises the Close event. /// - event EventHandler Close; + event EventHandler? Close; /// /// Fires the Closing event. @@ -419,12 +419,12 @@ public interface IKryptonCommand /// /// Occurs when the command needs executing. /// - event EventHandler Execute; + event EventHandler? Execute; /// /// Occurs when a property has changed value. /// - event PropertyChangedEventHandler PropertyChanged; + event PropertyChangedEventHandler? PropertyChanged; /// /// Gets and sets the enabled state of the command. diff --git a/Source/Krypton Components/Krypton.Toolkit/General/GlobalStaticValues.cs b/Source/Krypton Components/Krypton.Toolkit/General/GlobalStaticValues.cs index 12c1807b6..aaaf03119 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/GlobalStaticValues.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/GlobalStaticValues.cs @@ -37,6 +37,6 @@ public class GlobalStaticValues public static UACShieldIconSize DEFAULT_UAC_SHIELD_ICON_SIZE = UACShieldIconSize.ExtraSmall; - public static Size DEFAULT_UAC_SHIELD_ICON_CUSTOM_SIZE = new(16, 16); + public static Size DEFAULT_UAC_SHIELD_ICON_CUSTOM_SIZE = new Size(16, 16); } } \ No newline at end of file diff --git a/Source/Krypton Components/Krypton.Toolkit/General/PlatformInvoke.cs b/Source/Krypton Components/Krypton.Toolkit/General/PlatformInvoke.cs index 6aa035797..2c1892803 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/PlatformInvoke.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/PlatformInvoke.cs @@ -21,13 +21,13 @@ using Microsoft.Win32.SafeHandles; -using static Krypton.Toolkit.FileDialogWrapper; // ReSharper disable CommentTypo // ReSharper disable UnusedType.Local // ReSharper disable MemberHidesStaticFromOuterClass // ReSharper disable EnumUnderlyingTypeIsInt // ReSharper disable UnusedParameter.Local // ReSharper disable UnusedVariable +#pragma warning disable IDE0090 #pragma warning disable 649 @@ -78,29 +78,29 @@ internal partial class PI { #region statics - internal static readonly IntPtr InvalidIntPtr = new(-1); - internal static readonly IntPtr LPSTR_TEXTCALLBACK = new(-1); - internal static readonly HandleRef NullHandleRef = new(null, IntPtr.Zero); + internal static readonly IntPtr InvalidIntPtr = new IntPtr(-1); + internal static readonly IntPtr LPSTR_TEXTCALLBACK = new IntPtr(-1); + internal static readonly HandleRef NullHandleRef = new HandleRef(null, IntPtr.Zero); /// /// Places the window above all non-topmost windows. The window maintains its topmost position even when it is deactivated. /// - internal static readonly IntPtr HWND_TOPMOST = new(-1); + internal static readonly IntPtr HWND_TOPMOST = new IntPtr(-1); /// /// Places the window above all non-topmost windows (that is, behind all topmost windows). This flag has no effect if the window is already a non-topmost window. /// - internal static readonly IntPtr HWND_NOTOPMOST = new(-2); + internal static readonly IntPtr HWND_NOTOPMOST = new IntPtr(-2); /// /// Places the window at the top of the Z order. /// - internal static readonly IntPtr HWND_TOP = new(0); + internal static readonly IntPtr HWND_TOP = new IntPtr(0); /// /// Places the window at the bottom of the Z order. If the hWnd parameter identifies a topmost window, the window loses its topmost status and is placed at the bottom of all other windows. /// - internal static readonly IntPtr HWND_BOTTOM = new(1); + internal static readonly IntPtr HWND_BOTTOM = new IntPtr(1); internal const int BM_CLICK = 0x00F5; #endregion @@ -2800,9 +2800,11 @@ internal static int HIWORD(IntPtr value) internal static int MAKEHIWORD(int value) => (value & 0xFFFF) << 0x10; - internal static IntPtr MakeLParam(int LoWord, int HiWord) => new((long)((HiWord << 16) | (LoWord & 0xffff))); + internal static IntPtr MakeLParam(int LoWord, int HiWord) => + new IntPtr((long)((HiWord << 16) | (LoWord & 0xffff))); - internal static IntPtr MakeWParam(int LoWord, int HiWord) => new((long)((HiWord << 16) | (LoWord & 0xffff))); + internal static IntPtr MakeWParam(int LoWord, int HiWord) => + new IntPtr((long)((HiWord << 16) | (LoWord & 0xffff))); /// /// Is the specified key currently pressed down. @@ -3293,7 +3295,7 @@ internal static extern bool UpdateLayeredWindow(IntPtr hwnd, IntPtr hdcDst, [SuppressMessage("Microsoft.Performance", @"CA1811:AvoidUncalledPrivateCode")] internal static MONITORINFO GetMonitorInfo(IntPtr hMonitor) { - MONITORINFO mi = new(); + MONITORINFO mi = new MONITORINFO(); if (!_GetMonitorInfo(hMonitor, mi)) { throw new Win32Exception(); @@ -3894,7 +3896,7 @@ internal struct BlurParams /// IntPtr internal static IntPtr GetNativeImage(Bitmap bitmap) => IntPtr.Zero; - internal static Guid BlurEffectGuid = new("{633C80A4-1843-482B-9EF2-BE2834C5FDD4}"); + internal static Guid BlurEffectGuid = new Guid("{633C80A4-1843-482B-9EF2-BE2834C5FDD4}"); [DllImport(Libraries.Gdiplus, SetLastError = true, ExactSpelling = true, CharSet = CharSet.Unicode)] [DefaultDllImportSearchPaths(DllImportSearchPath.System32)] @@ -4202,9 +4204,9 @@ public POINT(int x, int y) X = x; Y = y; } - public static implicit operator Point(POINT p) => new(p.X, p.Y); + public static implicit operator Point(POINT p) => new Point(p.X, p.Y); - public static implicit operator POINT(Point p) => new(p.X, p.Y); + public static implicit operator POINT(Point p) => new POINT(p.X, p.Y); } [StructLayout(LayoutKind.Sequential)] @@ -4412,11 +4414,11 @@ internal class MONITORINFO /// /// - public RECT rcMonitor = new(); + public RECT rcMonitor = new RECT(); /// /// - public RECT rcWork = new(); + public RECT rcWork = new RECT(); /// /// diff --git a/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/HScrollSkin.cs b/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/HScrollSkin.cs index 0ea856973..11581a18b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/HScrollSkin.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/HScrollSkin.cs @@ -115,7 +115,7 @@ public HScrollSkin(Control win) _win.Top = 0; _win.Left = 0; _win.SendToBack(); - Name = "skin" + _win.Name; + Name = $"skin{_win.Name}"; } #endregion @@ -437,7 +437,7 @@ protected override void WndProc(ref Message m) { ListView listView1 = (ListView)_win; - WIN32ScrollBars.ScrollInfo si = new(); + WIN32ScrollBars.ScrollInfo si = new WIN32ScrollBars.ScrollInfo(); si.cbSize = Marshal.SizeOf(si); si.fMask = (int)PI.SIF_.ALL; if (PI.GetScrollInfo(listView1.Handle, (int)PI.SB_.HORZ, ref si)) diff --git a/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/ScrollBarExtendedRenderer.cs b/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/ScrollBarExtendedRenderer.cs index e76abab91..864c66c19 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/ScrollBarExtendedRenderer.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/ScrollBarExtendedRenderer.cs @@ -326,7 +326,7 @@ public static void DrawThumbGrip( Rectangle r = AdjustThumbGrip(rect, orientation, gripImage); // adjust alpha channel of grip image - using ImageAttributes attr = new(); + using ImageAttributes attr = new ImageAttributes(); attr.SetColorMatrix( new ColorMatrix(new[] { @@ -349,7 +349,7 @@ public static void DrawThumbGrip( /// public static Bitmap GetGripNomalBitmap() { - Bitmap btm = new(8, 8); + Bitmap btm = new Bitmap(8, 8); btm.SetResolution(72, 72); Graphics g = Graphics.FromImage(btm); @@ -370,7 +370,7 @@ public static Bitmap GetGripNomalBitmap() /// public static Image GetScrollBarArrowDownBitmap() { - Bitmap img = new(9, 5, PixelFormat.Format32bppArgb); + Bitmap img = new Bitmap(9, 5, PixelFormat.Format32bppArgb); img.SetResolution(72, 72); Graphics g = Graphics.FromImage(img); @@ -431,43 +431,29 @@ public static void DrawArrowButton(Graphics g, Rectangle rect, ScrollBarArrowBut /// The rectangle in which to paint. private static void DrawBackgroundVertical(Graphics g, Rectangle rect) { - using (Pen p = new(backgroundColours[0])) + using (Pen p = new Pen(backgroundColours[0])) { g.DrawLine(p, rect.Left + 1, rect.Top + 1, rect.Left + 1, rect.Bottom - 1); g.DrawLine(p, rect.Right - 2, rect.Top + 1, rect.Right - 2, rect.Bottom - 1); } - using (Pen p = new(backgroundColours[1])) + using (Pen p = new Pen(backgroundColours[1])) { g.DrawLine(p, rect.Left + 2, rect.Top + 1, rect.Left + 2, rect.Bottom - 1); } - Rectangle firstRect = new( - rect.Left + 3, - rect.Top, - 8, - rect.Height); - - Rectangle secondRect = new( - firstRect.Right - 1, - firstRect.Top, - 7, - firstRect.Height); - - using (LinearGradientBrush brush = new( - firstRect, - backgroundColours[2], - backgroundColours[3], - LinearGradientMode.Horizontal)) + Rectangle firstRect = new Rectangle(rect.Left + 3, rect.Top, 8, rect.Height); + + Rectangle secondRect = new Rectangle(firstRect.Right - 1, firstRect.Top, 7, firstRect.Height); + + using (LinearGradientBrush brush = new LinearGradientBrush(firstRect, backgroundColours[2], + backgroundColours[3], LinearGradientMode.Horizontal)) { g.FillRectangle(brush, firstRect); } - using (LinearGradientBrush brush = new( - secondRect, - backgroundColours[3], - backgroundColours[4], - LinearGradientMode.Horizontal)) + using (LinearGradientBrush brush = new LinearGradientBrush(secondRect, backgroundColours[3], + backgroundColours[4], LinearGradientMode.Horizontal)) { g.FillRectangle(brush, secondRect); } @@ -480,43 +466,29 @@ private static void DrawBackgroundVertical(Graphics g, Rectangle rect) /// The rectangle in which to paint. private static void DrawBackgroundHorizontal(Graphics g, Rectangle rect) { - using (Pen p = new(backgroundColours[0])) + using (Pen p = new Pen(backgroundColours[0])) { g.DrawLine(p, rect.Left + 1, rect.Top + 1, rect.Right - 1, rect.Top + 1); g.DrawLine(p, rect.Left + 1, rect.Bottom - 2, rect.Right - 1, rect.Bottom - 2); } - using (Pen p = new(backgroundColours[1])) + using (Pen p = new Pen(backgroundColours[1])) { g.DrawLine(p, rect.Left + 1, rect.Top + 2, rect.Right - 1, rect.Top + 2); } - Rectangle firstRect = new( - rect.Left, - rect.Top + 3, - rect.Width, - 8); - - Rectangle secondRect = new( - firstRect.Left, - firstRect.Bottom - 1, - firstRect.Width, - 7); - - using (LinearGradientBrush brush = new( - firstRect, - backgroundColours[2], - backgroundColours[3], - LinearGradientMode.Vertical)) + Rectangle firstRect = new Rectangle(rect.Left, rect.Top + 3, rect.Width, 8); + + Rectangle secondRect = new Rectangle(firstRect.Left, firstRect.Bottom - 1, firstRect.Width, 7); + + using (LinearGradientBrush brush = new LinearGradientBrush(firstRect, backgroundColours[2], + backgroundColours[3], LinearGradientMode.Vertical)) { g.FillRectangle(brush, firstRect); } - using (LinearGradientBrush brush = new( - secondRect, - backgroundColours[3], - backgroundColours[4], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(secondRect, backgroundColours[3], + backgroundColours[4], LinearGradientMode.Vertical)) { g.FillRectangle(brush, secondRect); } @@ -529,12 +501,9 @@ private static void DrawBackgroundHorizontal(Graphics g, Rectangle rect) /// The rectangle in which to paint. private static void DrawTrackVertical(Graphics g, Rectangle rect) { - Rectangle innerRect = new(rect.Left + 1, rect.Top, 15, rect.Height); + Rectangle innerRect = new Rectangle(rect.Left + 1, rect.Top, 15, rect.Height); - using LinearGradientBrush brush = new( - innerRect, - trackColours[0], - trackColours[1], + using LinearGradientBrush brush = new LinearGradientBrush(innerRect, trackColours[0], trackColours[1], LinearGradientMode.Horizontal); g.FillRectangle(brush, innerRect); } @@ -546,12 +515,9 @@ private static void DrawTrackVertical(Graphics g, Rectangle rect) /// The rectangle in which to paint. private static void DrawTrackHorizontal(Graphics g, Rectangle rect) { - Rectangle innerRect = new(rect.Left, rect.Top + 1, rect.Width, 15); + Rectangle innerRect = new Rectangle(rect.Left, rect.Top + 1, rect.Width, 15); - using LinearGradientBrush brush = new( - innerRect, - trackColours[0], - trackColours[1], + using LinearGradientBrush brush = new LinearGradientBrush(innerRect, trackColours[0], trackColours[1], LinearGradientMode.Vertical); g.FillRectangle(brush, innerRect); } @@ -612,11 +578,8 @@ private static void DrawThumbVertical(Graphics g, Rectangle rect, ScrollBarState r.Height++; // draw left gradient - using (LinearGradientBrush brush = new( - r, - thumbColours[index, 1], - thumbColours[index, 2], - LinearGradientMode.Horizontal)) + using (LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 1], + thumbColours[index, 2], LinearGradientMode.Horizontal)) { g.FillRectangle(brush, r); } @@ -626,11 +589,8 @@ private static void DrawThumbVertical(Graphics g, Rectangle rect, ScrollBarState // draw right gradient if (index == 0) { - using LinearGradientBrush brush = new( - r, - thumbColours[index, 4], - thumbColours[index, 5], - LinearGradientMode.Horizontal); + using LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 4], + thumbColours[index, 5], LinearGradientMode.Horizontal); brush.InterpolationColors = new ColorBlend(3) { Colors = new[] @@ -646,24 +606,21 @@ private static void DrawThumbVertical(Graphics g, Rectangle rect, ScrollBarState } else { - using (LinearGradientBrush brush = new( - r, - thumbColours[index, 4], - thumbColours[index, 5], - LinearGradientMode.Horizontal)) + using (LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 4], + thumbColours[index, 5], LinearGradientMode.Horizontal)) { g.FillRectangle(brush, r); } // draw left line - using (Pen p = new(thumbColours[index, 7])) + using (Pen p = new Pen(thumbColours[index, 7])) { g.DrawLine(p, innerRect.X, innerRect.Y, innerRect.X, innerRect.Bottom); } } // draw right line - using (Pen p = new(thumbColours[index, 3])) + using (Pen p = new Pen(thumbColours[index, 3])) { g.DrawLine(p, innerRect.Right, innerRect.Y, innerRect.Right, innerRect.Bottom); } @@ -671,7 +628,7 @@ private static void DrawThumbVertical(Graphics g, Rectangle rect, ScrollBarState g.SmoothingMode = SmoothingMode.AntiAlias; // draw border - using (Pen p = new(thumbColours[index, 0])) + using (Pen p = new Pen(thumbColours[index, 0])) { using (GraphicsPath path = CreateRoundPath(rect, 2f, 2f)) { @@ -708,10 +665,8 @@ private static void DrawThumbHorizontal( r.Width++; // draw left gradient - using (LinearGradientBrush brush = new( - r, thumbColours[index, 1], - thumbColours[index, 2], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 1], + thumbColours[index, 2], LinearGradientMode.Vertical)) { g.FillRectangle(brush, r); } @@ -721,11 +676,8 @@ private static void DrawThumbHorizontal( // draw right gradient if (index == 0) { - using LinearGradientBrush brush = new( - r, - thumbColours[index, 4], - thumbColours[index, 5], - LinearGradientMode.Vertical); + using LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 4], + thumbColours[index, 5], LinearGradientMode.Vertical); brush.InterpolationColors = new ColorBlend(3) { Colors = new[] @@ -741,23 +693,21 @@ private static void DrawThumbHorizontal( } else { - using (LinearGradientBrush brush = new( - r, thumbColours[index, 4], - thumbColours[index, 5], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 4], + thumbColours[index, 5], LinearGradientMode.Vertical)) { g.FillRectangle(brush, r); } // draw left line - using (Pen p = new(thumbColours[index, 7])) + using (Pen p = new Pen(thumbColours[index, 7])) { g.DrawLine(p, innerRect.X, innerRect.Y, innerRect.Right, innerRect.Y); } } // draw right line - using (Pen p = new(thumbColours[index, 3])) + using (Pen p = new Pen(thumbColours[index, 3])) { g.DrawLine(p, innerRect.X, innerRect.Bottom, innerRect.Right, innerRect.Bottom); } @@ -765,7 +715,7 @@ private static void DrawThumbHorizontal( g.SmoothingMode = SmoothingMode.AntiAlias; // draw border - using (Pen p = new(thumbColours[index, 0])) + using (Pen p = new Pen(thumbColours[index, 0])) { using (GraphicsPath path = CreateRoundPath(rect, 2f, 2f)) { @@ -824,8 +774,8 @@ private static void DrawArrowButtonHorizontal(Graphics g, Rectangle rect, Scroll /// The arrow down button as . private static Image GetArrowDownButtonImage(ScrollBarArrowButtonState state) { - Rectangle rect = new(0, 0, 15, 17); - Bitmap bitmap = new(15, 17, PixelFormat.Format32bppArgb); + Rectangle rect = new Rectangle(0, 0, 15, 17); + Bitmap bitmap = new Bitmap(15, 17, PixelFormat.Format32bppArgb); bitmap.SetResolution(72f, 72f); using Graphics g = Graphics.FromImage(bitmap); @@ -863,8 +813,8 @@ private static Image GetArrowDownButtonImage(ScrollBarArrowButtonState state) if (index != -1) { - using (Pen p1 = new(arrowBorderColours[0]), - p2 = new(arrowBorderColours[1])) + using (Pen p1 = new Pen(arrowBorderColours[0]), + p2 = new Pen(arrowBorderColours[1])) { g.DrawLine(p1, rect.X, rect.Y, rect.Right - 1, rect.Y); g.DrawLine(p2, rect.X, rect.Bottom - 1, rect.Right - 1, rect.Bottom - 1); @@ -872,13 +822,10 @@ private static Image GetArrowDownButtonImage(ScrollBarArrowButtonState state) rect.Inflate(0, -1); - using (LinearGradientBrush brush = new( - rect, - arrowBorderColours[2], - arrowBorderColours[1], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(rect, arrowBorderColours[2], + arrowBorderColours[1], LinearGradientMode.Vertical)) { - ColorBlend blend = new(3) + ColorBlend blend = new ColorBlend(3) { Positions = new[] { 0f, .5f, 1f }, Colors = new[] { @@ -889,7 +836,7 @@ private static Image GetArrowDownButtonImage(ScrollBarArrowButtonState state) brush.InterpolationColors = blend; - using (Pen p = new(brush)) + using (Pen p = new Pen(brush)) { g.DrawLine(p, rect.X, rect.Y, rect.X, rect.Bottom - 1); g.DrawLine(p, rect.Right - 1, rect.Y, rect.Right - 1, rect.Bottom - 1); @@ -903,11 +850,8 @@ private static Image GetArrowDownButtonImage(ScrollBarArrowButtonState state) upper.Y++; upper.Height = 7; - using (LinearGradientBrush brush = new( - upper, - arrowColours[index, 2], - arrowColours[index, 3], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(upper, arrowColours[index, 2], + arrowColours[index, 3], LinearGradientMode.Vertical)) { g.FillRectangle(brush, upper); } @@ -915,11 +859,8 @@ private static Image GetArrowDownButtonImage(ScrollBarArrowButtonState state) upper.Inflate(-1, 0); upper.Height = 6; - using (LinearGradientBrush brush = new( - upper, - arrowColours[index, 0], - arrowColours[index, 1], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(upper, arrowColours[index, 0], + arrowColours[index, 1], LinearGradientMode.Vertical)) { g.FillRectangle(brush, upper); } @@ -929,22 +870,16 @@ private static Image GetArrowDownButtonImage(ScrollBarArrowButtonState state) lower.Y = 8; lower.Height = 8; - using (LinearGradientBrush brush = new( - lower, - arrowColours[index, 6], - arrowColours[index, 7], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(lower, arrowColours[index, 6], + arrowColours[index, 7], LinearGradientMode.Vertical)) { g.FillRectangle(brush, lower); } lower.Inflate(-1, 0); - using (LinearGradientBrush brush = new( - lower, - arrowColours[index, 4], - arrowColours[index, 5], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(lower, arrowColours[index, 4], + arrowColours[index, 5], LinearGradientMode.Vertical)) { g.FillRectangle(brush, lower); } @@ -978,10 +913,10 @@ private static Image GetArrowDownButtonImage(ScrollBarArrowButtonState state) private static GraphicsPath CreateRoundPath(Rectangle r, float radiusX, float radiusY) { // create new graphics path object - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); // calculate radius of edges - PointF d = new(Math.Min(radiusX * 2, r.Width), Math.Min(radiusY * 2, r.Height)); + PointF d = new PointF(Math.Min(radiusX * 2, r.Width), Math.Min(radiusY * 2, r.Height)); // make sure radius is valid d.X = Math.Max(1, d.X); diff --git a/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/ScrollBarKryptonRenderer.cs b/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/ScrollBarKryptonRenderer.cs index 150148329..b36629f08 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/ScrollBarKryptonRenderer.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/ScrollBarKryptonRenderer.cs @@ -326,7 +326,7 @@ public static void DrawThumbGrip( Rectangle r = AdjustThumbGrip(rect, orientation, gripImage); // adjust alpha channel of grip image - using ImageAttributes attr = new(); + using ImageAttributes attr = new ImageAttributes(); attr.SetColorMatrix( new ColorMatrix(new[] { @@ -349,10 +349,10 @@ public static void DrawThumbGrip( /// public static Bitmap GetGripNomalBitmap() { - Bitmap btm = new(8, 8); + Bitmap btm = new Bitmap(8, 8); btm.SetResolution(72, 72); Graphics g = Graphics.FromImage(btm); - Rectangle rect = new(0, 0, 8, 8); + Rectangle rect = new Rectangle(0, 0, 8, 8); g.DrawLine(new Pen(gripColours[1]), new Point(0, 0), new Point(8, 0));//dark g.DrawLine(new Pen(gripColours[0]), new Point(1, 1), new Point(7, 1));//light @@ -371,7 +371,7 @@ public static Bitmap GetGripNomalBitmap() /// public static Image GetScrollBarArrowDownBitmap() { - Bitmap img = new(9, 5, PixelFormat.Format32bppArgb); + Bitmap img = new Bitmap(9, 5, PixelFormat.Format32bppArgb); img.SetResolution(72, 72); Graphics g = Graphics.FromImage(img); @@ -437,43 +437,29 @@ public static void DrawArrowButton( /// The rectangle in which to paint. private static void DrawBackgroundVertical(Graphics g, Rectangle rect) { - using (Pen p = new(backgroundColours[0])) + using (Pen p = new Pen(backgroundColours[0])) { g.DrawLine(p, rect.Left + 1, rect.Top + 1, rect.Left + 1, rect.Bottom - 1); g.DrawLine(p, rect.Right - 2, rect.Top + 1, rect.Right - 2, rect.Bottom - 1); } - using (Pen p = new(backgroundColours[1])) + using (Pen p = new Pen(backgroundColours[1])) { g.DrawLine(p, rect.Left + 2, rect.Top + 1, rect.Left + 2, rect.Bottom - 1); } - Rectangle firstRect = new( - rect.Left + 3, - rect.Top, - 8, - rect.Height); - - Rectangle secondRect = new( - firstRect.Right - 1, - firstRect.Top, - 7, - firstRect.Height); - - using (LinearGradientBrush brush = new( - firstRect, - backgroundColours[2], - backgroundColours[3], - LinearGradientMode.Horizontal)) + Rectangle firstRect = new Rectangle(rect.Left + 3, rect.Top, 8, rect.Height); + + Rectangle secondRect = new Rectangle(firstRect.Right - 1, firstRect.Top, 7, firstRect.Height); + + using (LinearGradientBrush brush = new LinearGradientBrush(firstRect, backgroundColours[2], + backgroundColours[3], LinearGradientMode.Horizontal)) { g.FillRectangle(brush, firstRect); } - using (LinearGradientBrush brush = new( - secondRect, - backgroundColours[3], - backgroundColours[4], - LinearGradientMode.Horizontal)) + using (LinearGradientBrush brush = new LinearGradientBrush(secondRect, backgroundColours[3], + backgroundColours[4], LinearGradientMode.Horizontal)) { g.FillRectangle(brush, secondRect); } @@ -486,43 +472,29 @@ private static void DrawBackgroundVertical(Graphics g, Rectangle rect) /// The rectangle in which to paint. private static void DrawBackgroundHorizontal(Graphics g, Rectangle rect) { - using (Pen p = new(backgroundColours[0])) + using (Pen p = new Pen(backgroundColours[0])) { g.DrawLine(p, rect.Left + 1, rect.Top + 1, rect.Right - 1, rect.Top + 1); g.DrawLine(p, rect.Left + 1, rect.Bottom - 2, rect.Right - 1, rect.Bottom - 2); } - using (Pen p = new(backgroundColours[1])) + using (Pen p = new Pen(backgroundColours[1])) { g.DrawLine(p, rect.Left + 1, rect.Top + 2, rect.Right - 1, rect.Top + 2); } - Rectangle firstRect = new( - rect.Left, - rect.Top + 3, - rect.Width, - 8); - - Rectangle secondRect = new( - firstRect.Left, - firstRect.Bottom - 1, - firstRect.Width, - 7); - - using (LinearGradientBrush brush = new( - firstRect, - backgroundColours[2], - backgroundColours[3], - LinearGradientMode.Vertical)) + Rectangle firstRect = new Rectangle(rect.Left, rect.Top + 3, rect.Width, 8); + + Rectangle secondRect = new Rectangle(firstRect.Left, firstRect.Bottom - 1, firstRect.Width, 7); + + using (LinearGradientBrush brush = new LinearGradientBrush(firstRect, backgroundColours[2], + backgroundColours[3], LinearGradientMode.Vertical)) { g.FillRectangle(brush, firstRect); } - using (LinearGradientBrush brush = new( - secondRect, - backgroundColours[3], - backgroundColours[4], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(secondRect, backgroundColours[3], + backgroundColours[4], LinearGradientMode.Vertical)) { g.FillRectangle(brush, secondRect); } @@ -535,12 +507,9 @@ private static void DrawBackgroundHorizontal(Graphics g, Rectangle rect) /// The rectangle in which to paint. private static void DrawTrackVertical(Graphics g, Rectangle rect) { - Rectangle innerRect = new(rect.Left + 1, rect.Top, 15, rect.Height); + Rectangle innerRect = new Rectangle(rect.Left + 1, rect.Top, 15, rect.Height); - using LinearGradientBrush brush = new( - innerRect, - trackColours[0], - trackColours[1], + using LinearGradientBrush brush = new LinearGradientBrush(innerRect, trackColours[0], trackColours[1], LinearGradientMode.Horizontal); g.FillRectangle(brush, innerRect); } @@ -552,12 +521,9 @@ private static void DrawTrackVertical(Graphics g, Rectangle rect) /// The rectangle in which to paint. private static void DrawTrackHorizontal(Graphics g, Rectangle rect) { - Rectangle innerRect = new(rect.Left, rect.Top + 1, rect.Width, 15); + Rectangle innerRect = new Rectangle(rect.Left, rect.Top + 1, rect.Width, 15); - using LinearGradientBrush brush = new( - innerRect, - trackColours[0], - trackColours[1], + using LinearGradientBrush brush = new LinearGradientBrush(innerRect, trackColours[0], trackColours[1], LinearGradientMode.Vertical); g.FillRectangle(brush, innerRect); } @@ -624,11 +590,8 @@ private static void DrawThumbVertical( r.Height++; // draw left gradient - using (LinearGradientBrush brush = new( - r, - thumbColours[index, 1], - thumbColours[index, 2], - LinearGradientMode.Horizontal)) + using (LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 1], + thumbColours[index, 2], LinearGradientMode.Horizontal)) { g.FillRectangle(brush, r); } @@ -638,11 +601,8 @@ private static void DrawThumbVertical( // draw right gradient if (index == 0) { - using LinearGradientBrush brush = new( - r, - thumbColours[index, 4], - thumbColours[index, 5], - LinearGradientMode.Horizontal); + using LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 4], + thumbColours[index, 5], LinearGradientMode.Horizontal); brush.InterpolationColors = new ColorBlend(3) { Colors = new[] @@ -658,24 +618,21 @@ private static void DrawThumbVertical( } else { - using (LinearGradientBrush brush = new( - r, - thumbColours[index, 4], - thumbColours[index, 5], - LinearGradientMode.Horizontal)) + using (LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 4], + thumbColours[index, 5], LinearGradientMode.Horizontal)) { g.FillRectangle(brush, r); } // draw left line - using (Pen p = new(thumbColours[index, 7])) + using (Pen p = new Pen(thumbColours[index, 7])) { g.DrawLine(p, innerRect.X, innerRect.Y, innerRect.X, innerRect.Bottom); } } // draw right line - using (Pen p = new(thumbColours[index, 3])) + using (Pen p = new Pen(thumbColours[index, 3])) { g.DrawLine(p, innerRect.Right, innerRect.Y, innerRect.Right, innerRect.Bottom); } @@ -683,7 +640,7 @@ private static void DrawThumbVertical( g.SmoothingMode = SmoothingMode.AntiAlias; // draw border - using (Pen p = new(thumbColours[index, 0])) + using (Pen p = new Pen(thumbColours[index, 0])) { using (GraphicsPath path = CreateRoundPath(rect, 2f, 2f)) { @@ -720,10 +677,8 @@ private static void DrawThumbHorizontal( r.Width++; // draw left gradient - using (LinearGradientBrush brush = new( - r, thumbColours[index, 1], - thumbColours[index, 2], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 1], + thumbColours[index, 2], LinearGradientMode.Vertical)) { g.FillRectangle(brush, r); } @@ -733,11 +688,8 @@ private static void DrawThumbHorizontal( // draw right gradient if (index == 0) { - using LinearGradientBrush brush = new( - r, - thumbColours[index, 4], - thumbColours[index, 5], - LinearGradientMode.Vertical); + using LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 4], + thumbColours[index, 5], LinearGradientMode.Vertical); brush.InterpolationColors = new ColorBlend(3) { Colors = new[] @@ -753,23 +705,21 @@ private static void DrawThumbHorizontal( } else { - using (LinearGradientBrush brush = new( - r, thumbColours[index, 4], - thumbColours[index, 5], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(r, thumbColours[index, 4], + thumbColours[index, 5], LinearGradientMode.Vertical)) { g.FillRectangle(brush, r); } // draw left line - using (Pen p = new(thumbColours[index, 7])) + using (Pen p = new Pen(thumbColours[index, 7])) { g.DrawLine(p, innerRect.X, innerRect.Y, innerRect.Right, innerRect.Y); } } // draw right line - using (Pen p = new(thumbColours[index, 3])) + using (Pen p = new Pen(thumbColours[index, 3])) { g.DrawLine(p, innerRect.X, innerRect.Bottom, innerRect.Right, innerRect.Bottom); } @@ -777,7 +727,7 @@ private static void DrawThumbHorizontal( g.SmoothingMode = SmoothingMode.AntiAlias; // draw border - using (Pen p = new(thumbColours[index, 0])) + using (Pen p = new Pen(thumbColours[index, 0])) { using (GraphicsPath path = CreateRoundPath(rect, 2f, 2f)) { @@ -844,8 +794,8 @@ private static void DrawArrowButtonHorizontal( private static Image GetArrowDownButtonImage( ScrollBarArrowButtonState state) { - Rectangle rect = new(0, 0, 15, 17); - Bitmap bitmap = new(15, 17, PixelFormat.Format32bppArgb); + Rectangle rect = new Rectangle(0, 0, 15, 17); + Bitmap bitmap = new Bitmap(15, 17, PixelFormat.Format32bppArgb); bitmap.SetResolution(72f, 72f); using Graphics g = Graphics.FromImage(bitmap); @@ -883,8 +833,8 @@ private static Image GetArrowDownButtonImage( if (index != -1) { - using (Pen p1 = new(arrowBorderColours[0]), - p2 = new(arrowBorderColours[1])) + using (Pen p1 = new Pen(arrowBorderColours[0]), + p2 = new Pen(arrowBorderColours[1])) { g.DrawLine(p1, rect.X, rect.Y, rect.Right - 1, rect.Y); g.DrawLine(p2, rect.X, rect.Bottom - 1, rect.Right - 1, rect.Bottom - 1); @@ -892,13 +842,10 @@ private static Image GetArrowDownButtonImage( rect.Inflate(0, -1); - using (LinearGradientBrush brush = new( - rect, - arrowBorderColours[2], - arrowBorderColours[1], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(rect, arrowBorderColours[2], + arrowBorderColours[1], LinearGradientMode.Vertical)) { - ColorBlend blend = new(3) + ColorBlend blend = new ColorBlend(3) { Positions = new[] { 0f, .5f, 1f }, Colors = new[] { @@ -909,7 +856,7 @@ private static Image GetArrowDownButtonImage( brush.InterpolationColors = blend; - using (Pen p = new(brush)) + using (Pen p = new Pen(brush)) { g.DrawLine(p, rect.X, rect.Y, rect.X, rect.Bottom - 1); g.DrawLine(p, rect.Right - 1, rect.Y, rect.Right - 1, rect.Bottom - 1); @@ -923,11 +870,8 @@ private static Image GetArrowDownButtonImage( upper.Y++; upper.Height = 7; - using (LinearGradientBrush brush = new( - upper, - arrowColours[index, 2], - arrowColours[index, 3], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(upper, arrowColours[index, 2], + arrowColours[index, 3], LinearGradientMode.Vertical)) { g.FillRectangle(brush, upper); } @@ -935,11 +879,8 @@ private static Image GetArrowDownButtonImage( upper.Inflate(-1, 0); upper.Height = 6; - using (LinearGradientBrush brush = new( - upper, - arrowColours[index, 0], - arrowColours[index, 1], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(upper, arrowColours[index, 0], + arrowColours[index, 1], LinearGradientMode.Vertical)) { g.FillRectangle(brush, upper); } @@ -949,22 +890,16 @@ private static Image GetArrowDownButtonImage( lower.Y = 8; lower.Height = 8; - using (LinearGradientBrush brush = new( - lower, - arrowColours[index, 6], - arrowColours[index, 7], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(lower, arrowColours[index, 6], + arrowColours[index, 7], LinearGradientMode.Vertical)) { g.FillRectangle(brush, lower); } lower.Inflate(-1, 0); - using (LinearGradientBrush brush = new( - lower, - arrowColours[index, 4], - arrowColours[index, 5], - LinearGradientMode.Vertical)) + using (LinearGradientBrush brush = new LinearGradientBrush(lower, arrowColours[index, 4], + arrowColours[index, 5], LinearGradientMode.Vertical)) { g.FillRectangle(brush, lower); } @@ -1001,10 +936,10 @@ private static GraphicsPath CreateRoundPath( float radiusY) { // create new graphics path object - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); // calculate radius of edges - PointF d = new(Math.Min(radiusX * 2, r.Width), Math.Min(radiusY * 2, r.Height)); + PointF d = new PointF(Math.Min(radiusX * 2, r.Width), Math.Min(radiusY * 2, r.Height)); // make sure radius is valid d.X = Math.Max(1, d.X); diff --git a/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/VScrollSkin.cs b/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/VScrollSkin.cs index 10e99c155..b7ce2c7dd 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/VScrollSkin.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/Scroll Bars/VScrollSkin.cs @@ -115,7 +115,7 @@ public VScrollSkin(Control win) _win.Top = 0; _win.Left = 0; _win.SendToBack(); - Name = "skin" + _win.Name; + Name = $"skin{_win.Name}"; } #endregion @@ -590,7 +590,7 @@ protected override void WndProc(ref Message m) { ListView listView1 = (ListView)_win; - WIN32ScrollBars.ScrollInfo si = new(); + WIN32ScrollBars.ScrollInfo si = new WIN32ScrollBars.ScrollInfo(); si.cbSize = Marshal.SizeOf(si); si.fMask = (int)PI.SIF_.ALL; if (PI.GetScrollInfo(listView1.Handle, PI.SB_.VERT, ref si)) diff --git a/Source/Krypton Components/Krypton.Toolkit/General/ShadowManager.cs b/Source/Krypton Components/Krypton.Toolkit/General/ShadowManager.cs index 6de45c3de..ce271fced 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/ShadowManager.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/ShadowManager.cs @@ -183,7 +183,7 @@ private Bitmap DrawShadowBitmap(Rectangle clientRectangle) var solidW = clientRectangle.Width + blur * 2; var solidH = clientRectangle.Height + blur * 2; var blurOffset = _shadowValues.ExtraWidth - blur; - Bitmap bitmap = new(w, h); + Bitmap bitmap = new Bitmap(w, h); bitmap.MakeTransparent(); using Graphics g = Graphics.FromImage(bitmap); // fill background @@ -195,8 +195,8 @@ private Bitmap DrawShadowBitmap(Rectangle clientRectangle) // four dir gradient if (blurOffset > 0) { - using (LinearGradientBrush brush = new(new PointF(0, 0), new PointF(blurOffset, 0), - Color.Transparent, _shadowValues.Colour)) + using (LinearGradientBrush brush = new LinearGradientBrush(new PointF(0, 0), new PointF(blurOffset, 0), + Color.Transparent, _shadowValues.Colour)) { // Left g.FillRectangle(brush, 0, blurOffset, blurOffset, solidH); @@ -219,11 +219,11 @@ private Bitmap DrawShadowBitmap(Rectangle clientRectangle) // four corner - using (GraphicsPath gp = new()) - using (Matrix matrix = new()) + using (GraphicsPath gp = new GraphicsPath()) + using (Matrix matrix = new Matrix()) { gp.AddEllipse(0, 0, blurOffset * 2, blurOffset * 2); - using (PathGradientBrush pgb = new(gp) + using (PathGradientBrush pgb = new PathGradientBrush(gp) { CenterColor = _shadowValues.Colour, SurroundColors = new[] { Color.Transparent }, @@ -325,7 +325,7 @@ void Mi() /// internal static class FlashWindowExListener { - private static readonly Dictionary _forms = new(); + private static readonly Dictionary _forms = new Dictionary(); private static readonly IntPtr _hHook; // Keep the HookProc delegate alive manually, such as using a class member as shown below, // otherwise the garbage collector will clean up the hook delegate eventually, diff --git a/Source/Krypton Components/Krypton.Toolkit/General/TooltipManager.cs b/Source/Krypton Components/Krypton.Toolkit/General/TooltipManager.cs index 9fca3a802..abc942e4c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/TooltipManager.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/TooltipManager.cs @@ -35,7 +35,7 @@ public class ToolTipManager /// /// Occurs when the showing tooltip is no longer required. /// - public event EventHandler CancelToolTip; + public event EventHandler? CancelToolTip; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/General/TypedCollection.cs b/Source/Krypton Components/Krypton.Toolkit/General/TypedCollection.cs index 55f779271..84965e5a8 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/TypedCollection.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/TypedCollection.cs @@ -28,37 +28,37 @@ public class TypedCollection : IList, /// /// Occurs when an item is about to be added/inserted to the collection. /// - public event TypedHandler Inserting; + public event TypedHandler? Inserting; /// /// Occurs when an item has been added/inserted to the collection. /// - public event TypedHandler Inserted; + public event TypedHandler? Inserted; /// /// Occurs when an item is about to be removed from the collection. /// - public event TypedHandler Removing; + public event TypedHandler? Removing; /// /// Occurs when an item is removed from the collection. /// - public event TypedHandler Removed; + public event TypedHandler? Removed; /// /// Occurs when an items are about to be removed from the collection. /// - public event EventHandler Clearing; + public event EventHandler? Clearing; /// /// Occurs when an items have been removed from the collection. /// - public event EventHandler Cleared; + public event EventHandler? Cleared; /// /// Occurs when items have been reordered inside the collection. /// - public event EventHandler Reordered; + public event EventHandler? Reordered; #endregion #region Identity @@ -73,7 +73,7 @@ public TypedCollection() => /// Obtains the String representation of this instance. /// /// User readable name of the instance. - public override string ToString() => Count + " TypedCollection"; + public override string ToString() => $"{Count} TypedCollection"; #endregion @@ -169,7 +169,7 @@ object IList.this[int index] public int IndexOf([DisallowNull] T item) { Debug.Assert(item != null); - return _list.IndexOf(item!); + return _list.IndexOf(item); } /// @@ -365,7 +365,7 @@ public virtual bool Remove([DisallowNull] T item) OnRemoving(new TypedCollectionEventArgs(item, index)); // Remove from the internal list - var ret = _list.Remove(item!); + var ret = _list.Remove(item); // Generate after event OnRemoved(new TypedCollectionEventArgs(item, index)); diff --git a/Source/Krypton Components/Krypton.Toolkit/General/WindowStylesHelper.cs b/Source/Krypton Components/Krypton.Toolkit/General/WindowStylesHelper.cs index 6963aeafb..bef166558 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/WindowStylesHelper.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/WindowStylesHelper.cs @@ -28,7 +28,7 @@ public WindowStylesHelper(IntPtr style, IntPtr exStyle) public override string ToString() { - StringBuilder str1 = new(); + StringBuilder str1 = new StringBuilder(); if (Caption) { str1.Append("Caption+"); diff --git a/Source/Krypton Components/Krypton.Toolkit/General/XmlHelper.cs b/Source/Krypton Components/Krypton.Toolkit/General/XmlHelper.cs index 374fb458a..5537ed2a8 100644 --- a/Source/Krypton Components/Krypton.Toolkit/General/XmlHelper.cs +++ b/Source/Krypton Components/Krypton.Toolkit/General/XmlHelper.cs @@ -99,7 +99,7 @@ public static Bitmap XmlCDataToImage(XmlReader xmlReader) // Do the old image way // SYSLIB0011: BinaryFormatter serialization is obsolete #pragma warning disable SYSLIB0011 - BinaryFormatter formatter = new(); + BinaryFormatter formatter = new BinaryFormatter(); var img = (Image)formatter.Deserialize(memory); #pragma warning restore SYSLIB0011 return new Bitmap(img); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteBack/PaletteBack.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteBack/PaletteBack.cs index b1671b4d5..e42088178 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteBack/PaletteBack.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteBack/PaletteBack.cs @@ -76,7 +76,7 @@ public InternalStorage() /// [Browsable(false)] // SKC: Probably a special case for not exposing this event in the designer.... [EditorBrowsable(EditorBrowsableState.Never)] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteBorder/PaletteBorder.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteBorder/PaletteBorder.cs index 8bdd66487..fb9094fe1 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteBorder/PaletteBorder.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteBorder/PaletteBorder.cs @@ -85,7 +85,7 @@ public InternalStorage() /// [Browsable(false)] // SKC: Probably a special case for not exposing this event in the designer.... [EditorBrowsable(EditorBrowsableState.Never)] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContent.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContent.cs index 1e77362e6..4e6d7a733 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContent.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContent.cs @@ -62,7 +62,7 @@ public InternalStorage() /// [Browsable(false)] // SKC: Probably a special case for not exposing this event in the designer.... [EditorBrowsable(EditorBrowsableState.Never)] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContentImage.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContentImage.cs index dbca68362..eacf56118 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContentImage.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContentImage.cs @@ -60,7 +60,7 @@ public InternalStorage() /// [Browsable(false)] // SKC: Probably a special case for not exposing this event in the designer.... [EditorBrowsable(EditorBrowsableState.Never)] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContentText.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContentText.cs index 4733a9143..70d863ca7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContentText.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteContent/PaletteContentText.cs @@ -91,7 +91,7 @@ public InternalStorage() /// [Browsable(false)] // SKC: Probably a special case for not exposing this event in the designer.... [EditorBrowsable(EditorBrowsableState.Never)] - public event PropertyChangedEventHandler PropertyChanged; + public event PropertyChangedEventHandler? PropertyChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteDouble/PaletteDoubleRedirect.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteDouble/PaletteDoubleRedirect.cs index e720bcce8..0da2398ee 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteDouble/PaletteDoubleRedirect.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteDouble/PaletteDoubleRedirect.cs @@ -52,12 +52,12 @@ public PaletteDoubleRedirect(PaletteRedirect? redirect, NeedPaintHandler needPaint) { // Store the inherit instances - PaletteBackInheritRedirect backInherit = new(redirect, backStyle); - PaletteBorderInheritRedirect borderInherit = new(redirect, borderStyle); + PaletteBackInheritRedirect backInherit = new PaletteBackInheritRedirect(redirect, backStyle); + PaletteBorderInheritRedirect borderInherit = new PaletteBorderInheritRedirect(redirect, borderStyle); // Create storage that maps onto the inherit instances - PaletteBack back = new(backInherit, needPaint); - PaletteBorder border = new(borderInherit, needPaint); + PaletteBack back = new PaletteBack(backInherit, needPaint); + PaletteBorder border = new PaletteBorder(borderInherit, needPaint); Construct(redirect, back, backInherit, border, borderInherit, needPaint); } diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteTools/PaletteTools.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteTools/PaletteTools.cs index 83d8af5b7..ac0f32978 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteTools/PaletteTools.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Base/PaletteTools/PaletteTools.cs @@ -27,7 +27,7 @@ public class PaletteTools /// public PaletteMode LinkPaletteType1(string themeName) { - PaletteMode paletteMode = new(); + PaletteMode paletteMode = new PaletteMode(); switch (themeName) { @@ -107,7 +107,7 @@ public static void ApplyTheme(KryptonManager manager, PaletteMode paletteMode = if (!string.IsNullOrWhiteSpace(customThemePath)) { - KryptonCustomPaletteBase palette = new(); + KryptonCustomPaletteBase palette = new KryptonCustomPaletteBase(); palette.Import(customThemePath); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Base/PaletteBase.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Base/PaletteBase.cs index 3a42e6044..d77ecfd87 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Base/PaletteBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Base/PaletteBase.cs @@ -1284,7 +1284,7 @@ public static Color MergeColors(Color color1, float percent1, public static Color FadedColor(Color baseColor) { // Convert to HSL space - ColorHSL hsl = new(baseColor) + ColorHSL hsl = new ColorHSL(baseColor) { // Remove saturation and fix luminance @@ -1307,7 +1307,7 @@ protected virtual Padding InputControlPadding if (!_inputControlPadding.HasValue) { // Find size of a input control with and without a border - TextBox tb = new() + TextBox tb = new TextBox { BorderStyle = BorderStyle.None }; @@ -1316,7 +1316,7 @@ protected virtual Padding InputControlPadding Size ss = tb.GetPreferredSize(new Size(int.MaxValue, int.MaxValue)); // Always subtract one from top and bottom edges to account for border placed there later by Krypton - Padding inputControlPadding = new(0); + Padding inputControlPadding = new Padding(0); var xDiff = Math.Max(0, ss.Width - sn.Width); var yDiff = Math.Max(0, ss.Height - sn.Height - 2); @@ -1381,10 +1381,7 @@ protected virtual void OnUserPreferenceChanged(object sender, UserPreferenceChan protected virtual void OnPalettePaint(object sender, PaletteLayoutEventArgs e) { // https://github.com/Krypton-Suite/Standard-Toolkit/issues/1023#issuecomment-1588810368 - if (PalettePaint != null) - { - PalettePaint(this, e); - } + PalettePaint?.Invoke(this, e); } #endregion @@ -1398,10 +1395,7 @@ protected virtual void OnPalettePaint(object sender, PaletteLayoutEventArgs e) /// An EventArgs containing event data. protected virtual void OnAllowFormChromeChanged(object sender, EventArgs e) { - if (AllowFormChromeChanged != null) - { - AllowFormChromeChanged(this, e); - } + AllowFormChromeChanged?.Invoke(this, e); } #endregion @@ -1415,10 +1409,7 @@ protected virtual void OnAllowFormChromeChanged(object sender, EventArgs e) /// An EventArgs containing event data. protected virtual void OnBasePaletteChanged(object sender, EventArgs e) { - if (BasePaletteChanged != null) - { - BasePaletteChanged(this, e); - } + BasePaletteChanged?.Invoke(this, e); } #endregion @@ -1431,10 +1422,7 @@ protected virtual void OnBasePaletteChanged(object sender, EventArgs e) /// An EventArgs containing event data. protected virtual void OnBaseRendererChanged(object sender, EventArgs e) { - if (BaseRendererChanged != null) - { - BaseRendererChanged(this, e); - } + BaseRendererChanged?.Invoke(this, e); } #endregion @@ -1447,10 +1435,7 @@ protected virtual void OnBaseRendererChanged(object sender, EventArgs e) /// An EventArgs containing event data. protected virtual void OnButtonSpecChanged(object sender, EventArgs e) { - if (ButtonSpecChanged != null) - { - ButtonSpecChanged(this, e); - } + ButtonSpecChanged?.Invoke(this, e); } #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Bases/PaletteMicrosoft365Base.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Bases/PaletteMicrosoft365Base.cs index abb8ce368..1c55441cd 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Bases/PaletteMicrosoft365Base.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Bases/PaletteMicrosoft365Base.cs @@ -19,41 +19,41 @@ namespace Krypton.Toolkit public abstract class PaletteMicrosoft365Base : PaletteBase { #region Static Fields - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); private static readonly Image? _treeExpandWhite = TreeItemImageResources.TreeExpandWhite; private static readonly Image? _treeCollapseBlack = TreeItemImageResources.TreeCollapseBlack; diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlackDarkMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlackDarkMode.cs index ca872703a..dfd3ea824 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlackDarkMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlackDarkMode.cs @@ -564,41 +564,41 @@ public abstract class PaletteMicrosoft365BlackDarkModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlueDarkMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlueDarkMode.cs index 88c971722..902b2dffd 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlueDarkMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlueDarkMode.cs @@ -557,41 +557,41 @@ public abstract class PaletteMicrosoft365BlueDarkModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlueLightMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlueLightMode.cs index 0ceb0ed2f..eba668c19 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlueLightMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365BlueLightMode.cs @@ -564,41 +564,41 @@ public abstract class PaletteMicrosoft365BlueLightModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365SilverDarkMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365SilverDarkMode.cs index 7c7bda381..b22239436 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365SilverDarkMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365SilverDarkMode.cs @@ -559,41 +559,41 @@ public abstract class PaletteMicrosoft365SilverDarkModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365SilverLightMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365SilverLightMode.cs index 2d6f15a78..3069987c0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365SilverLightMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Extra Themes/PaletteMicrosoft365SilverLightMode.cs @@ -565,41 +565,41 @@ public abstract class PaletteMicrosoft365SilverLightModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Official Themes/PaletteMicrosoft365Black.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Official Themes/PaletteMicrosoft365Black.cs index 3faab31fb..2534a9690 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Official Themes/PaletteMicrosoft365Black.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Microsoft 365/Official Themes/PaletteMicrosoft365Black.cs @@ -592,41 +592,41 @@ public PaletteMicrosoft365Black() : base(_schemeOfficeColors, _checkBoxList, _ga public abstract class PaletteMicrosoft365BlackThemeBase : PaletteBase { #region Static Fields - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); private static readonly Image? _treeExpandWhite = TreeItemImageResources.TreeExpandWhite; private static readonly Image? _treeCollapseBlack = TreeItemImageResources.TreeCollapseBlack; diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Bases/PaletteOffice2007Base.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Bases/PaletteOffice2007Base.cs index d0a79e67d..9b9c7206f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Bases/PaletteOffice2007Base.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Bases/PaletteOffice2007Base.cs @@ -21,42 +21,42 @@ public abstract class PaletteOffice2007Base : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonCalendar = new(-1); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonCalendar = new Padding(-1); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlackDarkMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlackDarkMode.cs index 9266aa043..6f7dd1853 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlackDarkMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlackDarkMode.cs @@ -598,42 +598,42 @@ public abstract class PaletteOffice2007BlackDarkModeBase : PaletteBase #region Static Fields #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonCalendar = new(-1); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonCalendar = new Padding(-1); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion #region Images diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlueDarkMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlueDarkMode.cs index 7c994dea1..3260c0641 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlueDarkMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlueDarkMode.cs @@ -445,42 +445,42 @@ public abstract class PaletteOffice2007BlueDarkModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonCalendar = new(-1); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonCalendar = new Padding(-1); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlueLightMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlueLightMode.cs index 2b81b6b80..c77c3d2c8 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlueLightMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007BlueLightMode.cs @@ -446,42 +446,42 @@ public abstract class PaletteOffice2007BlueLightModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonCalendar = new(-1); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonCalendar = new Padding(-1); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007SilverDarkMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007SilverDarkMode.cs index 086963ac2..44769d4c6 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007SilverDarkMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007SilverDarkMode.cs @@ -426,42 +426,42 @@ public abstract class PaletteOffice2007SilverDarkModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonCalendar = new(-1); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonCalendar = new Padding(-1); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007SilverLightMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007SilverLightMode.cs index 2a7564b10..995c5134b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007SilverLightMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2007/Extra Themes/PaletteOffice2007SilverLightMode.cs @@ -431,42 +431,42 @@ public abstract class PaletteOffice2007SilverLightModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonCalendar = new(-1); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonCalendar = new Padding(-1); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Bases/PaletteOffice2010Base.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Bases/PaletteOffice2010Base.cs index 1fe459405..2ee479b9e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Bases/PaletteOffice2010Base.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Bases/PaletteOffice2010Base.cs @@ -18,41 +18,41 @@ namespace Krypton.Toolkit public abstract class PaletteOffice2010Base : PaletteBase { #region Static Fields - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); private static readonly Image? _treeExpandWhite = TreeItemImageResources.TreeExpandWhite; private static readonly Image? _treeCollapseBlack = TreeItemImageResources.TreeCollapseBlack; diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlackDarkMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlackDarkMode.cs index 834a37014..89ab03e09 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlackDarkMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlackDarkMode.cs @@ -762,41 +762,41 @@ public abstract class PaletteOffice2010BlackDarkModeBase : PaletteBase #region Static Fields #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion #region Images diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlueDarkMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlueDarkMode.cs index 956527032..7044717ce 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlueDarkMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlueDarkMode.cs @@ -415,41 +415,41 @@ public abstract class PaletteOffice2010BlueDarkModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlueLightMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlueLightMode.cs index 4bd0fcbeb..4a1030e1e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlueLightMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010BlueLightMode.cs @@ -421,41 +421,41 @@ public abstract class PaletteOffice2010BlueLightModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010SilverDarkMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010SilverDarkMode.cs index c4190e05a..392a249a0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010SilverDarkMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010SilverDarkMode.cs @@ -414,41 +414,41 @@ public abstract class PaletteOffice2010SilverDarkModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010SilverLightMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010SilverLightMode.cs index 08610ef77..c6d731748 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010SilverLightMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2010/Extra Themes/PaletteOffice2010SilverLightMode.cs @@ -426,41 +426,41 @@ public abstract class PaletteOffice2010SilverLightModeBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2013/Bases/PaletteOffice2013Base.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2013/Bases/PaletteOffice2013Base.cs index e2fb64227..cb75d9a7c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2013/Bases/PaletteOffice2013Base.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2013/Bases/PaletteOffice2013Base.cs @@ -18,41 +18,41 @@ namespace Krypton.Toolkit public abstract class PaletteOffice2013Base : PaletteBase { #region Static Fields - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); private static readonly Image? _treeExpandWhite = TreeItemImageResources.TreeExpandWhite; private static readonly Image? _treeCollapseBlack = TreeItemImageResources.TreeCollapseBlack; diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2013/Official Themes/PaletteOffice2013White.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2013/Official Themes/PaletteOffice2013White.cs index 753b45c50..8d278ba64 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2013/Official Themes/PaletteOffice2013White.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Office 2013/Official Themes/PaletteOffice2013White.cs @@ -431,41 +431,41 @@ public abstract class PaletteOffice2013WhiteBase : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/PaletteVisualStudioBase.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/PaletteVisualStudioBase.cs index 936176a32..02d29c283 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/PaletteVisualStudioBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/PaletteVisualStudioBase.cs @@ -19,41 +19,41 @@ namespace Krypton.Toolkit public abstract class PaletteVisualStudioBase : PaletteBase { #region Static Fields - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader2 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingDock = new(2, 2, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader2 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingDock = new Padding(2, 2, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 0); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); private static readonly Image _treeExpandWhite = TreeItemImageResources.TreeExpandWhite; private static readonly Image _treeCollapseBlack = TreeItemImageResources.TreeCollapseBlack; diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Professional/PaletteProfessionalOffice2003.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Professional/PaletteProfessionalOffice2003.cs index c6e699de2..86db4455e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Professional/PaletteProfessionalOffice2003.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Professional/PaletteProfessionalOffice2003.cs @@ -276,43 +276,43 @@ public class PaletteOffice2003Base : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingHeader2 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingHeader3 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 1); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonCalendar = new(0); - private static readonly Padding _contentPaddingButtonInputControl = new(1); - private static readonly Padding _contentPaddingButton12 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingButton3 = new(1, 1, 1, 1); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 3, 1); - private static readonly Padding _contentPaddingButtonForm = new(5, 5, 5, 5); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingToolTip = new(2, 2, 2, 2); - private static readonly Padding _contentPaddingSuperTip = new(4, 4, 4, 4); - private static readonly Padding _contentPaddingKeyTip = new(1, -1, 0, -2); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(1); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingBarInside = new(3, 3, 3, 3); - private static readonly Padding _metricPaddingBarTabs = new(0, 0, 0, 0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); - private static readonly Padding _metricPaddingContextMenuItemHighlight = new(1, 0, 1, 0); - private static readonly Padding _metricPaddingContextMenuItemsCollection = new(0, 1, 0, 1); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingHeader2 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingHeader3 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 1); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonCalendar = new Padding(0); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(1); + private static readonly Padding _contentPaddingButton12 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 1, 1, 1); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 3, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(5, 5, 5, 5); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingToolTip = new Padding(2, 2, 2, 2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4, 4, 4, 4); + private static readonly Padding _contentPaddingKeyTip = new Padding(1, -1, 0, -2); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(1); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingBarInside = new Padding(3, 3, 3, 3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0, 0, 0, 0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); + private static readonly Padding _metricPaddingContextMenuItemHighlight = new Padding(1, 0, 1, 0); + private static readonly Padding _metricPaddingContextMenuItemsCollection = new Padding(0, 1, 0, 1); #endregion @@ -4585,7 +4585,7 @@ public override Color GetElementColor5(PaletteElement element, PaletteState stat internal virtual KryptonProfessionalKCT GenerateColorTable(bool useSystemColors) { // Create the color table to use as the base for getting krypton colors - KryptonColorTable kct = new(this) + KryptonColorTable kct = new KryptonColorTable(this) { // Always turn off the use of any theme specific colors @@ -4951,14 +4951,14 @@ private Image CreateDropDownImage(Color color) // Use a graphics instance for drawing the image using Graphics g = Graphics.FromImage(image); // Draw a solid arrow - using (SolidBrush fill = new(color)) + using (SolidBrush fill = new SolidBrush(color)) { - g.FillPolygon(fill, new Point[] { new(2, 3), new(4, 6), new(7, 3) }); + g.FillPolygon(fill, new Point[] { new Point(2, 3), new Point(4, 6), new Point(7, 3) }); } // Draw semi-transparent outline around the arrow - using Pen outline = new(Color.FromArgb(128, color)); - g.DrawLines(outline, new Point[] { new(1, 3), new(4, 6), new(7, 3) }); + using Pen outline = new Pen(Color.FromArgb(128, color)); + g.DrawLines(outline, new Point[] { new Point(1, 3), new Point(4, 6), new Point(7, 3) }); return image; } @@ -4971,8 +4971,8 @@ private Image CreateGalleryUpImage(Color color) // Use a graphics instance for drawing the image using Graphics g = Graphics.FromImage(image); // Draw a solid arrow - using SolidBrush fill = new(color); - g.FillPolygon(fill, new Point[] { new(3, 6), new(6, 2), new(9, 6) }); + using SolidBrush fill = new SolidBrush(color); + g.FillPolygon(fill, new Point[] { new Point(3, 6), new Point(6, 2), new Point(9, 6) }); return image; } @@ -4985,8 +4985,8 @@ private Image CreateGalleryDownImage(Color color) // Use a graphics instance for drawing the image using Graphics g = Graphics.FromImage(image); // Draw a solid arrow - using SolidBrush fill = new(color); - g.FillPolygon(fill, new Point[] { new(4, 3), new(6, 6), new(9, 3) }); + using SolidBrush fill = new SolidBrush(color); + g.FillPolygon(fill, new Point[] { new Point(4, 3), new Point(6, 6), new Point(9, 3) }); return image; } @@ -4999,13 +4999,13 @@ private Image CreateGalleryDropDownImage(Color color) // Use a graphics instance for drawing the image using Graphics g = Graphics.FromImage(image); // Draw a solid arrow - using (SolidBrush fill = new(color)) + using (SolidBrush fill = new SolidBrush(color)) { - g.FillPolygon(fill, new Point[] { new(4, 3), new(6, 6), new(9, 3) }); + g.FillPolygon(fill, new Point[] { new Point(4, 3), new Point(6, 6), new Point(9, 3) }); } // Draw the line above the arrow - using Pen pen = new(color); + using Pen pen = new Pen(color); g.DrawLine(pen, 4, 1, 8, 1); return image; diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Professional/PaletteProfessionalSystem.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Professional/PaletteProfessionalSystem.cs index c82ba4314..be5fa4e48 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Professional/PaletteProfessionalSystem.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Professional/PaletteProfessionalSystem.cs @@ -21,43 +21,43 @@ public class PaletteProfessionalSystem : PaletteBase #region Padding - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingHeader2 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingHeader3 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, 6, 3, 1); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonCalendar = new(0); - private static readonly Padding _contentPaddingButtonInputControl = new(1); - private static readonly Padding _contentPaddingButton12 = new(3, 2, 3, 2); - private static readonly Padding _contentPaddingButton3 = new(1, 1, 1, 1); - private static readonly Padding _contentPaddingButton4 = new(4, 3, 4, 3); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 2); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 3, 1); - private static readonly Padding _contentPaddingButtonForm = new(5, 5, 5, 5); - private static readonly Padding _contentPaddingButtonGallery = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingToolTip = new(2, 2, 2, 2); - private static readonly Padding _contentPaddingSuperTip = new(4, 4, 4, 4); - private static readonly Padding _contentPaddingKeyTip = new(1, -1, 0, -2); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(1); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingBarInside = new(3, 3, 3, 3); - private static readonly Padding _metricPaddingBarTabs = new(0, 0, 0, 0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); - private static readonly Padding _metricPaddingContextMenuItemHighlight = new(1, 0, 1, 0); - private static readonly Padding _metricPaddingContextMenuItemsCollection = new(0, 1, 0, 1); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingHeader2 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingHeader3 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, 6, 3, 1); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonCalendar = new Padding(0); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(1); + private static readonly Padding _contentPaddingButton12 = new Padding(3, 2, 3, 2); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 1, 1, 1); + private static readonly Padding _contentPaddingButton4 = new Padding(4, 3, 4, 3); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 2); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 3, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(5, 5, 5, 5); + private static readonly Padding _contentPaddingButtonGallery = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingToolTip = new Padding(2, 2, 2, 2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4, 4, 4, 4); + private static readonly Padding _contentPaddingKeyTip = new Padding(1, -1, 0, -2); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(1); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingBarInside = new Padding(3, 3, 3, 3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0, 0, 0, 0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); + private static readonly Padding _metricPaddingContextMenuItemHighlight = new Padding(1, 0, 1, 0); + private static readonly Padding _metricPaddingContextMenuItemsCollection = new Padding(0, 1, 0, 1); #endregion @@ -4324,7 +4324,7 @@ public override Color GetElementColor5(PaletteElement element, PaletteState stat internal virtual KryptonProfessionalKCT GenerateColorTable(bool useSystemColors) { // Create the color table to use as the base for getting krypton colors - KryptonColorTable kct = new(this) + KryptonColorTable kct = new KryptonColorTable(this) { // Always turn off the use of any theme specific colors @@ -4690,14 +4690,14 @@ private Image CreateDropDownImage(Color color) // Use a graphics instance for drawing the image using Graphics g = Graphics.FromImage(image); // Draw a solid arrow - using (SolidBrush fill = new(color)) + using (SolidBrush fill = new SolidBrush(color)) { - g.FillPolygon(fill, new Point[] { new(2, 3), new(4, 6), new(7, 3) }); + g.FillPolygon(fill, new Point[] { new Point(2, 3), new Point(4, 6), new Point(7, 3) }); } // Draw semi-transparent outline around the arrow - using Pen outline = new(Color.FromArgb(128, color)); - g.DrawLines(outline, new Point[] { new(1, 3), new(4, 6), new(7, 3) }); + using Pen outline = new Pen(Color.FromArgb(128, color)); + g.DrawLines(outline, new Point[] { new Point(1, 3), new Point(4, 6), new Point(7, 3) }); return image; } @@ -4710,8 +4710,8 @@ private Image CreateGalleryUpImage(Color color) // Use a graphics instance for drawing the image using Graphics g = Graphics.FromImage(image); // Draw a solid arrow - using SolidBrush fill = new(color); - g.FillPolygon(fill, new Point[] { new(3, 6), new(6, 2), new(9, 6) }); + using SolidBrush fill = new SolidBrush(color); + g.FillPolygon(fill, new Point[] { new Point(3, 6), new Point(6, 2), new Point(9, 6) }); return image; } @@ -4724,8 +4724,8 @@ private Image CreateGalleryDownImage(Color color) // Use a graphics instance for drawing the image using Graphics g = Graphics.FromImage(image); // Draw a solid arrow - using SolidBrush fill = new(color); - g.FillPolygon(fill, new Point[] { new(4, 3), new(6, 6), new(9, 3) }); + using SolidBrush fill = new SolidBrush(color); + g.FillPolygon(fill, new Point[] { new Point(4, 3), new Point(6, 6), new Point(9, 3) }); return image; } @@ -4738,13 +4738,13 @@ private Image CreateGalleryDropDownImage(Color color) // Use a graphics instance for drawing the image using Graphics g = Graphics.FromImage(image); // Draw a solid arrow - using (SolidBrush fill = new(color)) + using (SolidBrush fill = new SolidBrush(color)) { - g.FillPolygon(fill, new Point[] { new(4, 3), new(6, 6), new(9, 3) }); + g.FillPolygon(fill, new Point[] { new Point(4, 3), new Point(6, 6), new Point(9, 3) }); } // Draw the line above the arrow - using Pen pen = new(color); + using Pen pen = new Pen(color); g.DrawLine(pen, 4, 1, 8, 1); return image; diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Sparkle/Base/PaletteSparkleBase.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Sparkle/Base/PaletteSparkleBase.cs index b3ffb5d59..9529a1321 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Sparkle/Base/PaletteSparkleBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Sparkle/Base/PaletteSparkleBase.cs @@ -18,43 +18,43 @@ namespace Krypton.Toolkit public class PaletteSparkleBase : PaletteBase { #region Static Fields - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(3, 2, 2, 2); - private static readonly Padding _contentPaddingHeader2 = new(3, 2, 2, 2); - private static readonly Padding _contentPaddingHeader3 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, -3, 3, -3); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(3, 2, 3, 1); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 1); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(3, 0, 3, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingMenuOuter = new(1); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); - private static readonly Padding _metricPaddingContextMenuItemHighlight = new(1, 0, 1, 0); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(3, 2, 2, 2); + private static readonly Padding _contentPaddingHeader2 = new Padding(3, 2, 2, 2); + private static readonly Padding _contentPaddingHeader3 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, -3, 3, -3); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(3, 2, 3, 1); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 1); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(3, 0, 3, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingMenuOuter = new Padding(1); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); + private static readonly Padding _metricPaddingContextMenuItemHighlight = new Padding(1, 0, 1, 0); private static readonly Image _disabledDropDown = DropDownArrowImageResources.DisabledDropDownButton2; private static readonly Image _disabledDropUp = DropDownArrowImageResources.DisabledDropUpButton; @@ -197,18 +197,12 @@ public PaletteSparkleBase(Color[] ribbonColors, // Save colors for use in the color table if (ribbonColors != null) { - if (ribbonColors != null) - { - _ribbonColors = ribbonColors; - } + _ribbonColors = ribbonColors; } if (sparkleColors != null) { - if (sparkleColors != null) - { - _sparkleColors = sparkleColors; - } + _sparkleColors = sparkleColors; } if (appButtonNormal != null) { diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Sparkle/Extra Themes/PaletteSparkleBlueDarkMode.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Sparkle/Extra Themes/PaletteSparkleBlueDarkMode.cs index f1e288b82..808332232 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Sparkle/Extra Themes/PaletteSparkleBlueDarkMode.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Builtin/Sparkle/Extra Themes/PaletteSparkleBlueDarkMode.cs @@ -345,43 +345,43 @@ public PaletteSparkleBlueDarkMode() public abstract class PaletteSparkleBlueDarkModeBase : PaletteBase { #region Static Fields - private static readonly Padding _contentPaddingGrid = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingHeader1 = new(3, 2, 2, 2); - private static readonly Padding _contentPaddingHeader2 = new(3, 2, 2, 2); - private static readonly Padding _contentPaddingHeader3 = new(2, 1, 2, 1); - private static readonly Padding _contentPaddingCalendar = new(2); - private static readonly Padding _contentPaddingHeaderForm = new(10, -3, 3, -3); // 10 is from the RealWindowFrameSize +1 - private static readonly Padding _contentPaddingLabel = new(3, 1, 3, 1); - private static readonly Padding _contentPaddingLabel2 = new(8, 2, 8, 2); - private static readonly Padding _contentPaddingButtonInputControl = new(0); - private static readonly Padding _contentPaddingButton12 = new(1); - private static readonly Padding _contentPaddingButton3 = new(1, 0, 1, 0); - private static readonly Padding _contentPaddingButton4 = new(3, 2, 3, 1); - private static readonly Padding _contentPaddingButton5 = new(3, 3, 3, 1); - private static readonly Padding _contentPaddingButton6 = new(3); - private static readonly Padding _contentPaddingButton7 = new(1, 1, 0, 1); - private static readonly Padding _contentPaddingButtonForm = new(0); - private static readonly Padding _contentPaddingButtonGallery = new(3, 0, 3, 0); - private static readonly Padding _contentPaddingButtonListItem = new(0, -1, 0, -1); - private static readonly Padding _contentPaddingToolTip = new(2); - private static readonly Padding _contentPaddingSuperTip = new(4); - private static readonly Padding _contentPaddingKeyTip = new(0, -1, 0, -3); - private static readonly Padding _contentPaddingContextMenuHeading = new(8, 2, 8, 0); - private static readonly Padding _contentPaddingContextMenuImage = new(0); - private static readonly Padding _contentPaddingContextMenuItemText = new(9, 1, 7, 0); - private static readonly Padding _contentPaddingContextMenuItemTextAlt = new(7, 1, 6, 0); - private static readonly Padding _contentPaddingContextMenuItemShortcutText = new(3, 1, 4, 0); - private static readonly Padding _metricPaddingMenuOuter = new(1); - private static readonly Padding _metricPaddingRibbon = new(0, 1, 1, 1); - private static readonly Padding _metricPaddingRibbonAppButton = new(3, 0, 3, 0); - private static readonly Padding _metricPaddingHeader = new(0, 3, 1, 3); - private static readonly Padding _metricPaddingHeaderForm = new(0, 3, 0, -3); // Move the Maximised Form buttons down a bit - private static readonly Padding _metricPaddingInputControl = new(0, 1, 0, 1); - private static readonly Padding _metricPaddingBarInside = new(3); - private static readonly Padding _metricPaddingBarTabs = new(0); - private static readonly Padding _metricPaddingBarOutside = new(0, 0, 0, 3); - private static readonly Padding _metricPaddingPageButtons = new(1, 3, 1, 3); - private static readonly Padding _metricPaddingContextMenuItemHighlight = new(1, 0, 1, 0); + private static readonly Padding _contentPaddingGrid = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingHeader1 = new Padding(3, 2, 2, 2); + private static readonly Padding _contentPaddingHeader2 = new Padding(3, 2, 2, 2); + private static readonly Padding _contentPaddingHeader3 = new Padding(2, 1, 2, 1); + private static readonly Padding _contentPaddingCalendar = new Padding(2); + private static readonly Padding _contentPaddingHeaderForm = new Padding(10, -3, 3, -3); // 10 is from the RealWindowFrameSize +1 + private static readonly Padding _contentPaddingLabel = new Padding(3, 1, 3, 1); + private static readonly Padding _contentPaddingLabel2 = new Padding(8, 2, 8, 2); + private static readonly Padding _contentPaddingButtonInputControl = new Padding(0); + private static readonly Padding _contentPaddingButton12 = new Padding(1); + private static readonly Padding _contentPaddingButton3 = new Padding(1, 0, 1, 0); + private static readonly Padding _contentPaddingButton4 = new Padding(3, 2, 3, 1); + private static readonly Padding _contentPaddingButton5 = new Padding(3, 3, 3, 1); + private static readonly Padding _contentPaddingButton6 = new Padding(3); + private static readonly Padding _contentPaddingButton7 = new Padding(1, 1, 0, 1); + private static readonly Padding _contentPaddingButtonForm = new Padding(0); + private static readonly Padding _contentPaddingButtonGallery = new Padding(3, 0, 3, 0); + private static readonly Padding _contentPaddingButtonListItem = new Padding(0, -1, 0, -1); + private static readonly Padding _contentPaddingToolTip = new Padding(2); + private static readonly Padding _contentPaddingSuperTip = new Padding(4); + private static readonly Padding _contentPaddingKeyTip = new Padding(0, -1, 0, -3); + private static readonly Padding _contentPaddingContextMenuHeading = new Padding(8, 2, 8, 0); + private static readonly Padding _contentPaddingContextMenuImage = new Padding(0); + private static readonly Padding _contentPaddingContextMenuItemText = new Padding(9, 1, 7, 0); + private static readonly Padding _contentPaddingContextMenuItemTextAlt = new Padding(7, 1, 6, 0); + private static readonly Padding _contentPaddingContextMenuItemShortcutText = new Padding(3, 1, 4, 0); + private static readonly Padding _metricPaddingMenuOuter = new Padding(1); + private static readonly Padding _metricPaddingRibbon = new Padding(0, 1, 1, 1); + private static readonly Padding _metricPaddingRibbonAppButton = new Padding(3, 0, 3, 0); + private static readonly Padding _metricPaddingHeader = new Padding(0, 3, 1, 3); + private static readonly Padding _metricPaddingHeaderForm = new Padding(0, 3, 0, -3); // Move the Maximised Form buttons down a bit + private static readonly Padding _metricPaddingInputControl = new Padding(0, 1, 0, 1); + private static readonly Padding _metricPaddingBarInside = new Padding(3); + private static readonly Padding _metricPaddingBarTabs = new Padding(0); + private static readonly Padding _metricPaddingBarOutside = new Padding(0, 0, 0, 3); + private static readonly Padding _metricPaddingPageButtons = new Padding(1, 3, 1, 3); + private static readonly Padding _metricPaddingContextMenuItemHighlight = new Padding(1, 0, 1, 0); private static readonly Image _disabledDropDown = DropDownArrowImageResources.DisabledDropDownButton2; private static readonly Image _disabledDropUp = DropDownArrowImageResources.DisabledDropUpButton; diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteButtonSpecBase.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteButtonSpecBase.cs index 1b3cde7e9..0db9ff939 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteButtonSpecBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteButtonSpecBase.cs @@ -29,7 +29,7 @@ public class KryptonPaletteButtonSpecBase : Storage, /// /// Occurs when a button spec change occurs. /// - public event EventHandler ButtonSpecChanged; + public event EventHandler? ButtonSpecChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteButtonSpecs.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteButtonSpecs.cs index 388c0a239..028fd77b0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteButtonSpecs.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteButtonSpecs.cs @@ -21,7 +21,7 @@ public class KryptonPaletteButtonSpecs : Storage /// /// Occurs when a button spec change occurs. /// - public event EventHandler ButtonSpecChanged; + public event EventHandler? ButtonSpecChanged; #endregion #region Identity @@ -61,7 +61,7 @@ public KryptonPaletteButtonSpecs([DisallowNull] PaletteRedirect redirector) RibbonExpand = new KryptonPaletteButtonSpecTyped(redirector); // Create redirector for inheriting from style specific to style common - PaletteRedirectButtonSpec? redirectCommon = new(redirector, Common); + PaletteRedirectButtonSpec redirectCommon = new PaletteRedirectButtonSpec(redirector, Common); // Inform the button spec to use the new redirector Generic.SetRedirector(redirectCommon); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteCheckButtons.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteCheckButtons.cs index 2ebcefb73..4b47782d5 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteCheckButtons.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteCheckButtons.cs @@ -51,12 +51,10 @@ public KryptonPaletteCheckButtons([DisallowNull] PaletteRedirect redirector, ButtonCustom3 = new KryptonPaletteCheckButton(redirector, PaletteBackStyle.ButtonCustom3, PaletteBorderStyle.ButtonCustom3, PaletteContentStyle.ButtonCustom3, needPaint); // Create redirectors for inheriting from style specific to style common - PaletteRedirectTriple? redirectCommon = new(redirector, - ButtonCommon.StateDisabled, ButtonCommon.StateNormal, - ButtonCommon.StatePressed, ButtonCommon.StateTracking, - ButtonCommon.StateCheckedNormal, ButtonCommon.StateCheckedPressed, - ButtonCommon.StateCheckedTracking,ButtonCommon.OverrideFocus, - ButtonCommon.OverrideDefault); + PaletteRedirectTriple redirectCommon = new PaletteRedirectTriple(redirector, ButtonCommon.StateDisabled, + ButtonCommon.StateNormal, ButtonCommon.StatePressed, ButtonCommon.StateTracking, + ButtonCommon.StateCheckedNormal, ButtonCommon.StateCheckedPressed, ButtonCommon.StateCheckedTracking, + ButtonCommon.OverrideFocus, ButtonCommon.OverrideDefault); // Inform the button style to use the new redirector ButtonStandalone.SetRedirector(redirectCommon); ButtonAlternate.SetRedirector(redirectCommon); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteControls.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteControls.cs index 14af6003c..15451a432 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteControls.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteControls.cs @@ -41,7 +41,8 @@ public KryptonPaletteControls([DisallowNull] PaletteRedirect redirector, ControlCustom3 = new KryptonPaletteControl(redirector, PaletteBackStyle.ControlCustom3, PaletteBorderStyle.ControlCustom3, needPaint); // Create redirectors for inheriting from style specific to style common - PaletteRedirectDouble? redirectCommon = new(redirector, ControlCommon.StateDisabled, ControlCommon.StateNormal); + PaletteRedirectDouble redirectCommon = + new PaletteRedirectDouble(redirector, ControlCommon.StateDisabled, ControlCommon.StateNormal); // Inform the button style to use the new redirector ControlClient.SetRedirector(redirectCommon); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteForms.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteForms.cs index d08ddd0ae..ad25ccc52 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteForms.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteForms.cs @@ -36,7 +36,8 @@ public KryptonPaletteForms([DisallowNull] PaletteRedirect redirector, FormCustom3 = new KryptonPaletteForm(redirector, PaletteBackStyle.FormCustom3, PaletteBorderStyle.FormCustom3, needPaint); // Create redirectors for inheriting from style specific to style common - PaletteRedirectDouble? redirectCommon = new(redirector, FormCommon.StateInactive, FormCommon.StateActive); + PaletteRedirectDouble redirectCommon = + new PaletteRedirectDouble(redirector, FormCommon.StateInactive, FormCommon.StateActive); // Inform the form style to use the new redirector FormMain.SetRedirector(redirectCommon); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteGrids.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteGrids.cs index 1af2adf45..60ff964a0 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteGrids.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteGrids.cs @@ -36,7 +36,7 @@ public KryptonPaletteGrids([DisallowNull] PaletteRedirect redirector, GridCustom3 = new KryptonPaletteGrid(redirector, GridStyle.Custom3, needPaint); // Create redirectors for inheriting from style specific to style common - PaletteRedirectGrids? redirectCommon = new(redirector, GridCommon); + PaletteRedirectGrids redirectCommon = new PaletteRedirectGrids(redirector, GridCommon); // Ensure the specific styles inherit to the common grid style GridList.SetRedirector(redirectCommon); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteHeaders.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteHeaders.cs index 19d6cac55..36592988e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteHeaders.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteHeaders.cs @@ -40,9 +40,9 @@ public KryptonPaletteHeaders([DisallowNull] PaletteRedirect redirector, HeaderCustom3 = new KryptonPaletteHeader(redirector, PaletteBackStyle.HeaderCustom3, PaletteBorderStyle.HeaderCustom3, PaletteContentStyle.HeaderCustom3, needPaint); // Create redirectors for inheriting from style specific to style common - PaletteRedirectTripleMetric? redirectCommon = new(redirector, - HeaderCommon.StateDisabled, HeaderCommon.StateDisabled, - HeaderCommon.StateNormal, HeaderCommon.StateNormal); + PaletteRedirectTripleMetric redirectCommon = new PaletteRedirectTripleMetric(redirector, + HeaderCommon.StateDisabled, HeaderCommon.StateDisabled, HeaderCommon.StateNormal, + HeaderCommon.StateNormal); // Inform the button style to use the new redirector HeaderPrimary.SetRedirector(redirectCommon); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteInputControls.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteInputControls.cs index 36bc1629d..31911b67d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteInputControls.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteInputControls.cs @@ -37,7 +37,8 @@ public KryptonPaletteInputControls([DisallowNull] PaletteRedirect redirector, InputControlCustom3 = new KryptonPaletteInputControl(redirector, PaletteBackStyle.InputControlCustom3, PaletteBorderStyle.InputControlCustom3, PaletteContentStyle.InputControlCustom3, needPaint); // Create redirectors for inheriting from style specific to style common - PaletteRedirectTriple? redirectCommon = new(redirector, InputControlCommon.StateDisabled, InputControlCommon.StateNormal, InputControlCommon.StateActive); + PaletteRedirectTriple redirectCommon = new PaletteRedirectTriple(redirector, + InputControlCommon.StateDisabled, InputControlCommon.StateNormal, InputControlCommon.StateActive); // Inform the input control style to use the new redirector InputControlStandalone.SetRedirector(redirectCommon); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteLabels.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteLabels.cs index 4d653e3e8..486e333eb 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteLabels.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteLabels.cs @@ -47,7 +47,8 @@ public KryptonPaletteLabels([DisallowNull] PaletteRedirect redirector, LabelCustom3 = new KryptonPaletteLabel(redirector, PaletteContentStyle.LabelCustom3, needPaint); // Create redirectors for inheriting from style specific to style common - PaletteRedirectContent? redirectCommon = new(redirector, LabelCommon.StateDisabled, LabelCommon.StateNormal); + PaletteRedirectContent redirectCommon = + new PaletteRedirectContent(redirector, LabelCommon.StateDisabled, LabelCommon.StateNormal); // Inform the button style to use the new redirector LabelNormalControl.SetRedirector(redirectCommon); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPalettePanels.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPalettePanels.cs index d95fd1bb8..bd78998b1 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPalettePanels.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPalettePanels.cs @@ -38,7 +38,8 @@ public KryptonPalettePanels([DisallowNull] PaletteRedirect redirector, PanelCustom3 = new KryptonPalettePanel(redirector, PaletteBackStyle.PanelCustom3, needPaint); // Create redirectors for inheriting from style specific to style common - PaletteRedirectBack? redirectCommon = new(redirector, PanelCommon.StateDisabled, PanelCommon.StateNormal); + PaletteRedirectBack redirectCommon = + new PaletteRedirectBack(redirector, PanelCommon.StateDisabled, PanelCommon.StateNormal); // Inform the button style to use the new redirector PanelClient.SetRedirector(redirectCommon); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteSeparators.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteSeparators.cs index 3a3135248..1d307d9ba 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteSeparators.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteSeparators.cs @@ -38,9 +38,8 @@ public KryptonPaletteSeparators([DisallowNull] PaletteRedirect redirector, SeparatorCustom3 = new KryptonPaletteSeparator(redirector, PaletteBackStyle.SeparatorCustom3, PaletteBorderStyle.SeparatorCustom3, needPaint); // Create redirectors for inheriting from style specific to style common - PaletteRedirectDouble? redirectCommon = new(redirector, - SeparatorCommon.StateDisabled, SeparatorCommon.StateNormal, - SeparatorCommon.StatePressed, SeparatorCommon.StateTracking); + PaletteRedirectDouble redirectCommon = new PaletteRedirectDouble(redirector, SeparatorCommon.StateDisabled, + SeparatorCommon.StateNormal, SeparatorCommon.StatePressed, SeparatorCommon.StateTracking); // Inform the button style to use the new redirector SeparatorLowProfile.SetRedirector(redirectCommon); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteTabButtons.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteTabButtons.cs index 4b27ffe10..05eb4f6c2 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteTabButtons.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Component/KryptonPaletteTabButtons.cs @@ -41,10 +41,9 @@ public KryptonPaletteTabButtons([DisallowNull] PaletteRedirect redirector, TabCustom3 = new KryptonPaletteTabButton(redirector, PaletteBackStyle.TabCustom3, PaletteBorderStyle.TabCustom3, PaletteContentStyle.TabCustom3, needPaint); // Create redirectors for inheriting from style specific to style common - PaletteRedirectTriple? redirectCommon = new(redirector, - TabCommon.StateDisabled, TabCommon.StateNormal, - TabCommon.StatePressed, TabCommon.StateTracking, - TabCommon.StateSelected,TabCommon.OverrideFocus); + PaletteRedirectTriple redirectCommon = new PaletteRedirectTriple(redirector, TabCommon.StateDisabled, + TabCommon.StateNormal, TabCommon.StatePressed, TabCommon.StateTracking, TabCommon.StateSelected, + TabCommon.OverrideFocus); // Inform the button style to use the new redirector TabHighProfile.SetRedirector(redirectCommon); TabStandardProfile.SetRedirector(redirectCommon); diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Controls/KryptonColorTable.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Controls/KryptonColorTable.cs index ac8a5fafb..a2f095418 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Controls/KryptonColorTable.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Controls/KryptonColorTable.cs @@ -17,11 +17,6 @@ namespace Krypton.Toolkit /// public class KryptonColorTable : ProfessionalColorTable { - #region Instance Fields - - private PaletteBase _palette; - #endregion - #region Identity /// /// Creates a new instance of the KryptonColorTable class. diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteCueHintText.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteCueHintText.cs index e0a612b8c..e8dc73f28 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteCueHintText.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteCueHintText.cs @@ -165,7 +165,7 @@ internal void PerformPaint(VisualControlBase textBox, Graphics? g, PI.RECT rect, using Font font = GetContentShortTextNewFont(PaletteState.Normal); - using SolidBrush foreBrush = new(GetContentShortTextColor1(PaletteState.Normal)); + using SolidBrush foreBrush = new SolidBrush(GetContentShortTextColor1(PaletteState.Normal)); var drawText = string.IsNullOrEmpty(CueHintText) ? textBox.Text : CueHintText; g.DrawString(drawText, font, foreBrush, layoutRectangle, stringFormat); } diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteDataGridViewContentStates.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteDataGridViewContentStates.cs index edc1febdc..0b8c6fe1e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteDataGridViewContentStates.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteDataGridViewContentStates.cs @@ -74,7 +74,7 @@ public PaletteDataGridViewContentStates([DisallowNull] IPaletteContent inherit, /// [Browsable(false)] // SKC: Probably a special case for not exposing this event in the designer.... [EditorBrowsable(EditorBrowsableState.Never)] - public event EventHandler SyncPropertyChanged; + public event EventHandler? SyncPropertyChanged; #endregion #region IsDefault diff --git a/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteRedirectDropDownButton.cs b/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteRedirectDropDownButton.cs index c19ace2bf..604489f3f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteRedirectDropDownButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Palette Controls/PaletteRedirectDropDownButton.cs @@ -43,7 +43,7 @@ public PaletteRedirectDropDownButton(PaletteBase? target, Debug.Assert(images != null); // Remember incoming target - _images = images!; + _images = images; } #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonMicrosoft365Renderer.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonMicrosoft365Renderer.cs index 37ac462b5..ca43e9e86 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonMicrosoft365Renderer.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonMicrosoft365Renderer.cs @@ -60,14 +60,14 @@ public virtual void DrawItem(Graphics? g, Rectangle rect) public virtual void DrawBorder(Graphics? g, Rectangle rect) { // Drawing with anti aliasing to create smoother appearance - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); Rectangle backRectI = rect; backRectI.Inflate(1, 1); // Finally draw the border around the menu item - using LinearGradientBrush borderBrush = new(backRectI, Border1, Border2, 90f); + using LinearGradientBrush borderBrush = new LinearGradientBrush(backRectI, Border1, Border2, 90f); // Convert the brush to a pen for DrawPath call - using Pen borderPen = new(borderBrush); + using Pen borderPen = new Pen(borderBrush); // Create border path around the entire item using GraphicsPath borderPath = CreateBorderPath(rect, _cutItemMenu); g?.DrawPath(borderPen, borderPath); @@ -125,34 +125,35 @@ public GradientItemColorsTracking(Color border, public override void DrawBack(Graphics? g, Rectangle rect) { - Rectangle inset = new(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); - Rectangle insetB = new(rect.X + 2, rect.Y + 2, rect.Width - 3, rect.Height - 3); - Rectangle insetC = new(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 4); + Rectangle inset = new Rectangle(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); + Rectangle insetB = new Rectangle(rect.X + 2, rect.Y + 2, rect.Width - 3, rect.Height - 3); + Rectangle insetC = new Rectangle(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 4); - using LinearGradientBrush insideBrush1 = new(rect, Back1B, Back1, 90f), - insideBrush2 = new(insetB, Back2B, Back2, 90f); + using LinearGradientBrush insideBrush1 = new LinearGradientBrush(rect, Back1B, Back1, 90f), + insideBrush2 = new LinearGradientBrush(insetB, Back2B, Back2, 90f); insideBrush1.SetSigmaBellShape(0.5f); insideBrush2.SetSigmaBellShape(0.5f); g.FillRectangle(insideBrush1, inset); using GraphicsPath borderPath = CreateBorderPath(insetC, _cutInnerItemMenu), clipPath = CreateBorderPath(insetB, _cutInnerItemMenu); - using (Pen insidePen = new(insideBrush2)) + using (Pen insidePen = new Pen(insideBrush2)) { g.DrawPath(insidePen, borderPath); } g.FillPath(insideBrush2, borderPath); - using (Clipping clipping = new(g, clipPath)) + using (Clipping clipping = new Clipping(g, clipPath)) { - using (GraphicsPath ellipsePath = new()) + using (GraphicsPath ellipsePath = new GraphicsPath()) { - RectangleF ellipseRect = new(-(rect.Width / 2), rect.Bottom - 9, rect.Width * 2, 18); - PointF ellipseCenter = new(ellipseRect.Left + (ellipseRect.Width / 2), ellipseRect.Top + (ellipseRect.Height / 2)); + RectangleF ellipseRect = new RectangleF(-(rect.Width / 2), rect.Bottom - 9, rect.Width * 2, 18); + PointF ellipseCenter = new PointF(ellipseRect.Left + (ellipseRect.Width / 2), + ellipseRect.Top + (ellipseRect.Height / 2)); ellipsePath.AddEllipse(ellipseRect); - using (PathGradientBrush insideLighten = new(ellipsePath)) + using (PathGradientBrush insideLighten = new PathGradientBrush(ellipsePath)) { insideLighten.CenterPoint = ellipseCenter; insideLighten.CenterColor = Color.White; @@ -207,16 +208,16 @@ public GradientItemColorsPressed(Color border, public override void DrawBack(Graphics? g, Rectangle rect) { - Rectangle rect2 = new(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 1); - Rectangle rect3 = new(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 3); + Rectangle rect2 = new Rectangle(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 1); + Rectangle rect3 = new Rectangle(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 3); - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); using GraphicsPath path1 = CreateBorderPath(rect, _cutItemMenu), path2 = CreateBorderPath(rect2, _cutItemMenu), path3 = CreateBorderPath(rect3, _cutItemMenu); - using SolidBrush brush1 = new(CommonHelper.MergeColors(Border1, 0.4f, Back1, 0.6f)), - brush2 = new(CommonHelper.MergeColors(Border1, 0.2f, Back1, 0.8f)), - brush3 = new(Back1); + using SolidBrush brush1 = new SolidBrush(CommonHelper.MergeColors(Border1, 0.4f, Back1, 0.6f)), + brush2 = new SolidBrush(CommonHelper.MergeColors(Border1, 0.2f, Back1, 0.8f)), + brush3 = new SolidBrush(Back1); g.FillPath(brush1, path1); g.FillPath(brush2, path2); g.FillPath(brush3, path3); @@ -244,19 +245,20 @@ public GradientItemColorsChecked(Color border, public override void DrawBack(Graphics? g, Rectangle rect) { - Rectangle inset = new(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); + Rectangle inset = new Rectangle(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); - using LinearGradientBrush insideBrush = new(rect, Back2, Back1, 90f); + using LinearGradientBrush insideBrush = new LinearGradientBrush(rect, Back2, Back1, 90f); insideBrush.SetSigmaBellShape(0.5f); g.FillRectangle(insideBrush, inset); using GraphicsPath borderPath = CreateBorderPath(inset, _cutInnerItemMenu); - using GraphicsPath ellipsePath = new(); - RectangleF ellipseRect = new(rect.Left, rect.Bottom - 8, rect.Width, 8); - PointF ellipseCenter = new(ellipseRect.Left + (ellipseRect.Width / 2), ellipseRect.Top + (ellipseRect.Height / 2)); + using GraphicsPath ellipsePath = new GraphicsPath(); + RectangleF ellipseRect = new RectangleF(rect.Left, rect.Bottom - 8, rect.Width, 8); + PointF ellipseCenter = new PointF(ellipseRect.Left + (ellipseRect.Width / 2), + ellipseRect.Top + (ellipseRect.Height / 2)); ellipsePath.AddEllipse(ellipseRect); - using PathGradientBrush insideLighten = new(ellipsePath); + using PathGradientBrush insideLighten = new PathGradientBrush(ellipsePath); insideLighten.CenterPoint = ellipseCenter; insideLighten.CenterColor = Color.FromArgb(96, Color.White); insideLighten.SurroundColors = new[] { Color.Transparent }; @@ -401,7 +403,7 @@ protected override void OnRenderArrow(ToolStripArrowRenderEventArgs e) }; // Draw the actual arrow using a gradient - using LinearGradientBrush arrowBrush = new(boundsF, color1, color2, angle); + using LinearGradientBrush arrowBrush = new LinearGradientBrush(boundsF, color1, color2, angle); e.Graphics.FillPath(arrowBrush, arrowPath); } } @@ -467,17 +469,17 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) } // Drawing with anti aliasing to create smoother appearance - using AntiAlias aa = new(e.Graphics); + using AntiAlias aa = new AntiAlias(e.Graphics); // Create border path for the check box using GraphicsPath borderPath = CreateBorderPath(checkBox, _cutItemMenu); // Fill the background in a solid color - using (SolidBrush fillBrush = new(KCT.CheckBackground)) + using (SolidBrush fillBrush = new SolidBrush(KCT.CheckBackground)) { e.Graphics.FillPath(fillBrush, borderPath); } // Draw the border around the check box - using (Pen borderPen = new(CommonHelper.WhitenColor(KCT.CheckBackground, 1.05f, 1.52f, 2.75f))) + using (Pen borderPen = new Pen(CommonHelper.WhitenColor(KCT.CheckBackground, 1.05f, 1.52f, 2.75f))) { e.Graphics.DrawPath(borderPen, borderPath); } @@ -501,7 +503,9 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) using (GraphicsPath tickPath = CreateTickPath(checkBox)) { // Draw the tick with a thickish brush - using Pen tickPen = new(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f), _contextCheckTickThickness); + using Pen tickPen = + new Pen(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f), + _contextCheckTickThickness); e.Graphics.DrawPath(tickPen, tickPath); } break; @@ -510,7 +514,8 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) using (GraphicsPath tickPath = CreateIndeterminatePath(checkBox)) { // Draw the tick with a thickish brush - using (SolidBrush tickBrush = new(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f))) + using (SolidBrush tickBrush = + new SolidBrush(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f))) { e.Graphics.FillPath(tickBrush, tickPath); } @@ -584,7 +589,8 @@ protected override void OnRenderItemText(ToolStripItemTextRenderEventArgs e) } else { - using GraphicsTextHint clearTypeGridFit = new(e.Graphics, TextRenderingHint.ClearTypeGridFit); + using GraphicsTextHint clearTypeGridFit = + new GraphicsTextHint(e.Graphics, TextRenderingHint.ClearTypeGridFit); base.OnRenderItemText(e); } } @@ -613,7 +619,7 @@ protected override void OnRenderItemImage(ToolStripItemImageRenderEventArgs e) } else { - using ImageAttributes attribs = new(); + using ImageAttributes attribs = new ImageAttributes(); attribs.SetColorMatrix(CommonHelper.MatrixDisabled); // Draw using the disabled matrix to make it look disabled @@ -752,8 +758,8 @@ protected override void OnRenderSplitButtonBackground(ToolStripItemRenderEventAr /// An ToolStripRenderEventArgs containing the event data. protected override void OnRenderStatusStripSizingGrip(ToolStripRenderEventArgs e) { - using SolidBrush darkBrush = new(KCT.SeparatorDark), - lightBrush = new(KCT.GripLight); + using SolidBrush darkBrush = new SolidBrush(KCT.SeparatorDark), + lightBrush = new SolidBrush(KCT.GripLight); // Do we need to invert the drawing edge? var rtl = e.ToolStrip.RightToLeft == RightToLeft.Yes; @@ -796,10 +802,8 @@ protected override void OnRenderToolStripContentPanelBackground(ToolStripContent // Cannot paint a zero sized area if (e.ToolStripContentPanel is { Width: > 0, Height: > 0 }) { - using LinearGradientBrush backBrush = new(e.ToolStripContentPanel.ClientRectangle, - KCT.ToolStripContentPanelGradientEnd, - KCT.ToolStripContentPanelGradientBegin, - 90f); + using LinearGradientBrush backBrush = new LinearGradientBrush(e.ToolStripContentPanel.ClientRectangle, + KCT.ToolStripContentPanelGradientEnd, KCT.ToolStripContentPanelGradientBegin, 90f); e.Graphics.FillRectangle(backBrush, e.ToolStripContentPanel.ClientRectangle); } } @@ -826,9 +830,9 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) using GraphicsPath borderPath = CreateBorderPath(e.AffectedBounds, _cutContextMenu), clipPath = CreateClipBorderPath(e.AffectedBounds, _cutContextMenu); // Clip all drawing to within the border path - using Clipping clipping = new(e.Graphics, clipPath); + using Clipping clipping = new Clipping(e.Graphics, clipPath); // Create the background brush - using SolidBrush backBrush = new(KCT.ToolStripDropDownBackground); + using SolidBrush backBrush = new SolidBrush(KCT.ToolStripDropDownBackground); e.Graphics.FillPath(backBrush, borderPath); break; } @@ -841,7 +845,7 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) } // We do not paint the top two pixel lines, as they are drawn by the status strip border render method - RectangleF backRect = new(0, 1.5f, e.ToolStrip.Width, e.ToolStrip.Height - 2); + RectangleF backRect = new RectangleF(0, 1.5f, e.ToolStrip.Width, e.ToolStrip.Height - 2); // Cannot paint a zero sized area if (backRect is { Width: > 0, Height: > 0 }) @@ -854,7 +858,7 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) // backBrush.Blend = _stripBlend; // e.Graphics.FillRectangle(backBrush, backRect); //} - using SolidBrush backBrush = new(KCT.StatusStripGradientEnd); + using SolidBrush backBrush = new SolidBrush(KCT.StatusStripGradientEnd); e.Graphics.FillRectangle(backBrush, backRect); } @@ -879,22 +883,20 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) } // Cannot paint a zero sized area - RectangleF backRect = new(0, 0, e.ToolStrip.Width, e.ToolStrip.Height); + RectangleF backRect = new RectangleF(0, 0, e.ToolStrip.Width, e.ToolStrip.Height); if (backRect is { Width: > 0, Height: > 0 }) { if (e.ToolStrip.Orientation == Orientation.Horizontal) { - using (LinearGradientBrush backBrush = new(backRect, - KCT.ToolStripGradientBegin, - KCT.ToolStripGradientEnd, - 90f)) + using (LinearGradientBrush backBrush = new LinearGradientBrush(backRect, + KCT.ToolStripGradientBegin, KCT.ToolStripGradientEnd, 90f)) { backBrush.Blend = _stripBlend; e.Graphics.FillRectangle(backBrush, backRect); } - using (Pen darkBorder = new(KCT.ToolStripBorder), - lightBorder = new(KCT.ToolStripGradientBegin)) + using (Pen darkBorder = new Pen(KCT.ToolStripBorder), + lightBorder = new Pen(KCT.ToolStripGradientBegin)) { e.Graphics.DrawLine(lightBorder, 0, 2, 0, e.ToolStrip.Height - 2); e.Graphics.DrawLine(lightBorder, e.ToolStrip.Width - 2, 0, e.ToolStrip.Width - 2, e.ToolStrip.Height - 2); @@ -903,17 +905,15 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) } else { - using (LinearGradientBrush backBrush = new(backRect, - KCT.ToolStripGradientBegin, - KCT.ToolStripGradientEnd, - 0f)) + using (LinearGradientBrush backBrush = new LinearGradientBrush(backRect, + KCT.ToolStripGradientBegin, KCT.ToolStripGradientEnd, 0f)) { backBrush.Blend = _stripBlend; e.Graphics.FillRectangle(backBrush, backRect); } - using (Pen darkBorder = new(KCT.ToolStripBorder), - lightBorder = new(KCT.ToolStripGradientBegin)) + using (Pen darkBorder = new Pen(KCT.ToolStripBorder), + lightBorder = new Pen(KCT.ToolStripGradientBegin)) { e.Graphics.DrawLine(lightBorder, 1, 0, e.ToolStrip.Width - 2, 0); e.Graphics.DrawLine(lightBorder, 1, e.ToolStrip.Height - 2, e.ToolStrip.Width - 2, e.ToolStrip.Height - 2); @@ -942,7 +942,7 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) // If there is a connected area to be drawn if (!e.ConnectedArea.IsEmpty) { - using SolidBrush excludeBrush = new(KCT.ToolStripDropDownBackground); + using SolidBrush excludeBrush = new SolidBrush(KCT.ToolStripDropDownBackground); e.Graphics.FillRectangle(excludeBrush, e.ConnectedArea); } @@ -951,12 +951,12 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) insidePath = CreateInsideBorderPath(e.AffectedBounds, e.ConnectedArea, _cutContextMenu), clipPath = CreateClipBorderPath(e.AffectedBounds, e.ConnectedArea, _cutContextMenu); // Create the different pen colors we need - using Pen borderPen = new(KCT.MenuBorder), - insidePen = new(KCT.ToolStripDropDownBackground); + using Pen borderPen = new Pen(KCT.MenuBorder), + insidePen = new Pen(KCT.ToolStripDropDownBackground); // Clip all drawing to within the border path - using Clipping clipping = new(e.Graphics, clipPath); + using Clipping clipping = new Clipping(e.Graphics, clipPath); // Drawing with anti aliasing to create smoother appearance - using (AntiAlias aa = new(e.Graphics)) + using (AntiAlias aa = new AntiAlias(e.Graphics)) { // Draw the inside area first e.Graphics.DrawPath(insidePen, insidePath); @@ -973,8 +973,8 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) case StatusStrip: { // Draw two lines at top of the status strip - using Pen darkBorder = new(KCT.ToolStripBorder), - lightBorder = new(KCT.SeparatorLight); + using Pen darkBorder = new Pen(KCT.ToolStripBorder), + lightBorder = new Pen(KCT.SeparatorLight); e.Graphics.DrawLine(darkBorder, 0, 0, e.ToolStrip.Width - 1, 0); e.Graphics.DrawLine(lightBorder, 0, 1, e.ToolStrip.Width - 1, 1); break; @@ -1014,7 +1014,7 @@ protected override void OnRenderImageMargin(ToolStripRenderEventArgs e) marginRect.X += _marginInset / 2; } - using Pen marginPen = new(Color.FromArgb(80, KCT.MenuBorder)); + using Pen marginPen = new Pen(Color.FromArgb(80, KCT.MenuBorder)); if (!rtl) { e.Graphics.DrawLine(marginPen, marginRect.Right, marginRect.Top, marginRect.Right, marginRect.Bottom); @@ -1154,7 +1154,7 @@ private void DrawGradientToolSplitItem(Graphics? g, GradientItemColors colorsSplit) { // Create entire area and just the drop button area rectangles - Rectangle backRect = new(Point.Empty, splitButton.Bounds.Size); + Rectangle backRect = new Rectangle(Point.Empty, splitButton.Bounds.Size); Rectangle backRectDrop = splitButton.DropDownButtonBounds; // Cannot paint zero sized areas @@ -1192,11 +1192,12 @@ private void DrawGradientToolSplitItem(Graphics? g, colorsDrop.DrawBack(g, backRectDrop); // Draw the split line between the areas - using (LinearGradientBrush splitBrush = new(new Rectangle(backRect.X + splitOffset, backRect.Top, 1, backRect.Height + 1), - colorsSplit.Border1, colorsSplit.Border2, 90f)) + using (LinearGradientBrush splitBrush = new LinearGradientBrush( + new Rectangle(backRect.X + splitOffset, backRect.Top, 1, backRect.Height + 1), + colorsSplit.Border1, colorsSplit.Border2, 90f)) { // Convert the brush to a pen for DrawPath call - using (Pen splitPen = new(splitBrush)) + using (Pen splitPen = new Pen(splitBrush)) { g.DrawLine(splitPen, backRect.X + splitOffset, backRect.Top + 1, backRect.X + splitOffset, backRect.Bottom - 1); } @@ -1210,22 +1211,22 @@ private void DrawGradientToolSplitItem(Graphics? g, private void DrawContextMenuHeader(Graphics? g, ToolStripItem item) { // Get the rectangle that is the items area - Rectangle itemRect = new(Point.Empty, item.Bounds.Size); + Rectangle itemRect = new Rectangle(Point.Empty, item.Bounds.Size); // Create border and clipping paths using GraphicsPath borderPath = CreateBorderPath(itemRect, _cutHeaderMenu), insidePath = CreateInsideBorderPath(itemRect, _cutHeaderMenu), clipPath = CreateClipBorderPath(itemRect, _cutHeaderMenu); // Clip all drawing to within the border path - using Clipping clipping = new(g, clipPath); + using Clipping clipping = new Clipping(g, clipPath); // Draw the entire background area first - using (SolidBrush backBrush = new(KCT.ToolStripDropDownBackground)) + using (SolidBrush backBrush = new SolidBrush(KCT.ToolStripDropDownBackground)) { g.FillPath(backBrush, borderPath); } // Draw the border - using (Pen borderPen = new(KCT.MenuBorder)) + using (Pen borderPen = new Pen(KCT.MenuBorder)) { g.DrawPath(borderPen, borderPath); } @@ -1282,7 +1283,7 @@ private void DrawGradientContextMenuItem(Graphics? g, GradientItemColors colors) { // Do we need to draw with separator on the opposite edge? - Rectangle backRect = new(2, 0, item.Bounds.Width - 3, item.Bounds.Height); + Rectangle backRect = new Rectangle(2, 0, item.Bounds.Width - 3, item.Bounds.Height); // Perform actual drawing into the background colors.DrawItem(g, backRect); @@ -1308,7 +1309,7 @@ private void DrawContextMenuSeparator(Graphics g, var t = rect.Y; var b = rect.Bottom; - using Pen marginPen = new(Color.FromArgb(80, KCT.MenuBorder)); + using Pen marginPen = new Pen(Color.FromArgb(80, KCT.MenuBorder)); marginPen.DashPattern = new float[] { 2, 2 }; g.DrawLine(marginPen, l, t, l, b); } @@ -1318,7 +1319,7 @@ private void DrawContextMenuSeparator(Graphics g, var l = rect.X + (rtl ? 0 : horizontalInset); var r = rect.Right - (rtl ? horizontalInset : 0); - using Pen marginPen = new(Color.FromArgb(80, KCT.MenuBorder)); + using Pen marginPen = new Pen(Color.FromArgb(80, KCT.MenuBorder)); marginPen.DashPattern = new float[] { 2, 2 }; g.DrawLine(marginPen, l, y, r, y); } @@ -1332,7 +1333,7 @@ private void DrawToolStripSeparator(Graphics g, int horizontalInset, bool rtl) { - RectangleF boundsF = new(rect.X, rect.Y, rect.Width, rect.Height); + RectangleF boundsF = new RectangleF(rect.X, rect.Y, rect.Width, rect.Height); if (vertical) { @@ -1340,8 +1341,9 @@ private void DrawToolStripSeparator(Graphics g, var t = rect.Y; // Draw vertical lines centered - using LinearGradientBrush lightBrush = new(boundsF, Color.Transparent, lightColor, 90), - darkBrush = new(boundsF, Color.Transparent, darkColor, 90); + using LinearGradientBrush lightBrush = + new LinearGradientBrush(boundsF, Color.Transparent, lightColor, 90), + darkBrush = new LinearGradientBrush(boundsF, Color.Transparent, darkColor, 90); lightBrush.Blend = _separatorLightBlend; darkBrush.Blend = _separatorDarkBlend; g.FillRectangle(lightBrush, l - 1, t, 3, rect.Height); @@ -1353,8 +1355,9 @@ private void DrawToolStripSeparator(Graphics g, var t = rect.Height / 2; // Draw horizontal lines centered - using LinearGradientBrush lightBrush = new(boundsF, Color.Transparent, lightColor, 0f), - darkBrush = new(boundsF, Color.Transparent, darkColor, 0f); + using LinearGradientBrush lightBrush = + new LinearGradientBrush(boundsF, Color.Transparent, lightColor, 0f), + darkBrush = new LinearGradientBrush(boundsF, Color.Transparent, darkColor, 0f); lightBrush.Blend = _separatorLightBlend; darkBrush.Blend = _separatorDarkBlend; g.FillRectangle(lightBrush, l, t - 1, rect.Width, 3); @@ -1435,7 +1438,7 @@ private static GraphicsPath CreateBorderPath(Rectangle rect, pts.Add(new PointF(l, y0)); // Create path using a simple set of lines that cut the corner - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); // Add a line between each set of points for (var i = 1; i < pts.Count; i++) @@ -1456,7 +1459,7 @@ private static GraphicsPath CreateBorderPath(Rectangle rect, float cut) rect.Height--; // Create path using a simple set of lines that cut the corner - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(rect.Left + cut, rect.Top, rect.Right - cut, rect.Top); path.AddLine(rect.Right - cut, rect.Top, rect.Right, rect.Top + cut); path.AddLine(rect.Right, rect.Top + cut, rect.Right, rect.Bottom - cut); @@ -1536,7 +1539,7 @@ private GraphicsPath CreateArrowPath(ToolStripItem item, } // Create triangle using a series of lines - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); switch (direction) { @@ -1571,7 +1574,7 @@ private GraphicsPath CreateTickPath(Rectangle rect) var x = rect.X + rect.Width / 2; var y = rect.Y + rect.Height / 2; - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(x - 4, y, x - 2, y + 4); path.AddLine(x - 2, y + 4, x + 3, y - 5); return path; @@ -1583,7 +1586,7 @@ private GraphicsPath CreateIndeterminatePath(Rectangle rect) var x = rect.X + rect.Width / 2; var y = rect.Y + rect.Height / 2; - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(x - 3, y, x, y - 3); path.AddLine(x, y - 3, x + 3, y); path.AddLine(x + 3, y, x, y + 3); diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2007Renderer.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2007Renderer.cs index 3b249a49a..b0b83a122 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2007Renderer.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2007Renderer.cs @@ -215,11 +215,10 @@ public GradientItemColorsCheckedTracking(Color border, private const float CUT_TOOL_ITEM_MENU = 1.0f; private static readonly Blend _statusStripBlend; private static readonly Color _disabled = Color.FromArgb(167, 167, 167); - private static readonly GradientItemColors _disabledItem = new(Color.FromArgb(250, 250, 250), Color.FromArgb(243, 243, 243), - Color.FromArgb(236, 236, 236), Color.FromArgb(230, 230, 230), - Color.FromArgb(243, 243, 243), Color.FromArgb(224, 224, 224), - Color.FromArgb(200, 200, 200), Color.FromArgb(210, 210, 210), - Color.FromArgb(212, 212, 212), Color.FromArgb(195, 195, 195)); + private static readonly GradientItemColors _disabledItem = new GradientItemColors(Color.FromArgb(250, 250, 250), + Color.FromArgb(243, 243, 243), Color.FromArgb(236, 236, 236), Color.FromArgb(230, 230, 230), + Color.FromArgb(243, 243, 243), Color.FromArgb(224, 224, 224), Color.FromArgb(200, 200, 200), + Color.FromArgb(210, 210, 210), Color.FromArgb(212, 212, 212), Color.FromArgb(195, 195, 195)); #endregion #region Instance Fields @@ -284,7 +283,7 @@ protected override void OnRenderArrow(ToolStripArrowRenderEventArgs e) }; // Draw the actual arrow using a gradient - using LinearGradientBrush arrowBrush = new(boundsF, color1, color2, angle); + using LinearGradientBrush arrowBrush = new LinearGradientBrush(boundsF, color1, color2, angle); e.Graphics.FillPath(arrowBrush, arrowPath); } } @@ -350,17 +349,17 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) //} // Drawing with anti aliasing to create smoother appearance - using AntiAlias aa = new(e.Graphics); + using AntiAlias aa = new AntiAlias(e.Graphics); // Create border path for the check box using GraphicsPath borderPath = CreateBorderPath(checkBox, 0 /*CUT_MENU_ITEM_BACK*/); // Fill the background in a solid color - using (SolidBrush fillBrush = new(KCT.CheckBackground)) + using (SolidBrush fillBrush = new SolidBrush(KCT.CheckBackground)) { e.Graphics.FillPath(fillBrush, borderPath); } // Draw the border around the check box - using (Pen borderPen = new(CommonHelper.WhitenColor(KCT.CheckBackground, 1.05f, 1.52f, 2.75f))) + using (Pen borderPen = new Pen(CommonHelper.WhitenColor(KCT.CheckBackground, 1.05f, 1.52f, 2.75f))) { e.Graphics.DrawPath(borderPen, borderPath); } @@ -384,7 +383,9 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) using (GraphicsPath tickPath = CreateTickPath(checkBox)) { // Draw the tick with a thickish brush - using (Pen tickPen = new(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f), CONTEXT_CHECK_TICK_THICKNESS)) + using (Pen tickPen = + new Pen(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f), + CONTEXT_CHECK_TICK_THICKNESS)) { e.Graphics.DrawPath(tickPen, tickPath); } @@ -395,7 +396,8 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) using (GraphicsPath tickPath = CreateIndeterminatePath(checkBox)) { // Draw the tick with a thickish brush - using (SolidBrush tickBrush = new(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f))) + using (SolidBrush tickBrush = + new SolidBrush(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f))) { e.Graphics.FillPath(tickBrush, tickPath); } @@ -439,7 +441,8 @@ protected override void OnRenderItemText(ToolStripItemTextRenderEventArgs e) } else { - using GraphicsTextHint clearTypeGridFit = new(e.Graphics, TextRenderingHint.ClearTypeGridFit); + using GraphicsTextHint clearTypeGridFit = + new GraphicsTextHint(e.Graphics, TextRenderingHint.ClearTypeGridFit); base.OnRenderItemText(e); } } @@ -468,7 +471,7 @@ protected override void OnRenderItemImage(ToolStripItemImageRenderEventArgs e) } else { - using ImageAttributes attribs = new(); + using ImageAttributes attribs = new ImageAttributes(); attribs.SetColorMatrix(CommonHelper.MatrixDisabled); // Draw using the disabled matrix to make it look disabled @@ -587,8 +590,8 @@ protected override void OnRenderSplitButtonBackground(ToolStripItemRenderEventAr /// An ToolStripRenderEventArgs containing the event data. protected override void OnRenderStatusStripSizingGrip(ToolStripRenderEventArgs e) { - using SolidBrush darkBrush = new(KCT.GripDark), - lightBrush = new(KCT.GripLight); + using SolidBrush darkBrush = new SolidBrush(KCT.GripDark), + lightBrush = new SolidBrush(KCT.GripLight); // Do we need to invert the drawing edge? var rtl = e.ToolStrip.RightToLeft == RightToLeft.Yes; @@ -631,10 +634,8 @@ protected override void OnRenderToolStripContentPanelBackground(ToolStripContent // Cannot paint a zero sized area if (e.ToolStripContentPanel is { Width: > 0, Height: > 0 }) { - using LinearGradientBrush backBrush = new(e.ToolStripContentPanel.ClientRectangle, - KCT.ToolStripContentPanelGradientEnd, - KCT.ToolStripContentPanelGradientBegin, - 90f); + using LinearGradientBrush backBrush = new LinearGradientBrush(e.ToolStripContentPanel.ClientRectangle, + KCT.ToolStripContentPanelGradientEnd, KCT.ToolStripContentPanelGradientBegin, 90f); e.Graphics.FillRectangle(backBrush, e.ToolStripContentPanel.ClientRectangle); } } @@ -652,8 +653,10 @@ protected override void OnRenderSeparator(ToolStripSeparatorRenderEventArgs e) case ContextMenuStrip _: case ToolStripDropDownMenu _: // Create the light and dark line pens - using (Pen lightPen = new(CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.02f, 1.02f, 1.02f)), - darkPen = new(CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.26f, 1.26f, 1.26f))) + using (Pen lightPen = + new Pen(CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.02f, 1.02f, 1.02f)), + darkPen = new Pen( + CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.26f, 1.26f, 1.26f))) { DrawSeparator(e.Graphics, e.Vertical, e.Item.Bounds, lightPen, darkPen, SEPARATOR_INSET, @@ -662,8 +665,8 @@ protected override void OnRenderSeparator(ToolStripSeparatorRenderEventArgs e) break; case StatusStrip _: // Create the light and dark line pens - using (Pen lightPen = new(KCT.SeparatorLight), - darkPen = new(KCT.SeparatorDark)) + using (Pen lightPen = new Pen(KCT.SeparatorLight), + darkPen = new Pen(KCT.SeparatorDark)) { DrawSeparator(e.Graphics, e.Vertical, e.Item.Bounds, lightPen, darkPen, 0, false); @@ -695,10 +698,10 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) clipPath = CreateClipBorderPath(e.AffectedBounds, CUT_CONTEXT_MENU)) { // Clip all drawing to within the border path - using (Clipping clipping = new(e.Graphics, clipPath)) + using (Clipping clipping = new Clipping(e.Graphics, clipPath)) { // Create the background brush - using (SolidBrush backBrush = new(KCT.ToolStripDropDownBackground)) + using (SolidBrush backBrush = new SolidBrush(KCT.ToolStripDropDownBackground)) { e.Graphics.FillPath(backBrush, borderPath); } @@ -710,7 +713,7 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) e.ToolStrip.Font = KCT.StatusStripFont; // We do not paint the top two pixel lines, so are drawn by the status strip border render method - RectangleF backRect = new(0, 1.5f, e.ToolStrip.Width, e.ToolStrip.Height - 2); + RectangleF backRect = new RectangleF(0, 1.5f, e.ToolStrip.Width, e.ToolStrip.Height - 2); Form owner = e.ToolStrip.FindForm(); @@ -736,10 +739,8 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) // Cannot paint a zero sized area if (backRect is { Width: > 0, Height: > 0 }) { - using LinearGradientBrush backBrush = new(backRect, - KCT.StatusStripGradientBegin, - KCT.StatusStripGradientEnd, - 90f); + using LinearGradientBrush backBrush = new LinearGradientBrush(backRect, + KCT.StatusStripGradientBegin, KCT.StatusStripGradientEnd, 90f); backBrush.Blend = _statusStripBlend; e.Graphics.FillRectangle(backBrush, backRect); } @@ -797,14 +798,16 @@ protected override void OnRenderImageMargin(ToolStripRenderEventArgs e) } // Draw the entire margin area in a solid color - using (SolidBrush backBrush = new(KCT.ImageMarginGradientBegin)) + using (SolidBrush backBrush = new SolidBrush(KCT.ImageMarginGradientBegin)) { e.Graphics.FillRectangle(backBrush, marginRect); } // Create the light and dark line pens - using (Pen lightPen = new(CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.02f, 1.02f, 1.02f)), - darkPen = new(CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.26f, 1.26f, 1.26f))) + using (Pen lightPen = + new Pen(CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.02f, 1.02f, 1.02f)), + darkPen = new Pen(CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.26f, 1.26f, + 1.26f))) { if (!rtl) { @@ -841,7 +844,7 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) // If there is a connected area to be drawn if (!e.ConnectedArea.IsEmpty) { - using SolidBrush excludeBrush = new(KCT.ToolStripDropDownBackground); + using SolidBrush excludeBrush = new SolidBrush(KCT.ToolStripDropDownBackground); e.Graphics.FillRectangle(excludeBrush, e.ConnectedArea); } @@ -851,14 +854,15 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) clipPath = CreateClipBorderPath(e.AffectedBounds, e.ConnectedArea, CUT_CONTEXT_MENU)) { // Create the different pen colors we need - using (Pen borderPen = new(KCT.MenuBorder), - insidePen = new(CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.02f, 1.02f, 1.02f))) + using (Pen borderPen = new Pen(KCT.MenuBorder), + insidePen = new Pen(CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.02f, 1.02f, + 1.02f))) { // Clip all drawing to within the border path - using (Clipping clipping = new(e.Graphics, clipPath)) + using (Clipping clipping = new Clipping(e.Graphics, clipPath)) { // Drawing with anti aliasing to create smoother appearance - using (AntiAlias aa = new(e.Graphics)) + using (AntiAlias aa = new AntiAlias(e.Graphics)) { // Draw the inside area first e.Graphics.DrawPath(insidePen, insidePath); @@ -876,8 +880,9 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) break; case StatusStrip _: // Draw two lines at top of the status strip - using (Pen darkBorder = new(CommonHelper.WhitenColor(KCT.StatusStripGradientEnd, 1.6f, 1.6f, 1.6f)), - lightBorder = new(ControlPaint.LightLight(KCT.StatusStripGradientBegin))) + using (Pen darkBorder = + new Pen(CommonHelper.WhitenColor(KCT.StatusStripGradientEnd, 1.6f, 1.6f, 1.6f)), + lightBorder = new Pen(ControlPaint.LightLight(KCT.StatusStripGradientBegin))) { e.Graphics.DrawLine(darkBorder, 0, 0, e.ToolStrip.Width, 0); e.Graphics.DrawLine(lightBorder, 0, 1, e.ToolStrip.Width, 1); @@ -1013,7 +1018,7 @@ private void DrawGradientToolSplitItem(Graphics? g, GradientItemColors colorsSplit) { // Create entire area and just the drop button area rectangles - Rectangle backRect = new(Point.Empty, splitButton.Bounds.Size); + Rectangle backRect = new Rectangle(Point.Empty, splitButton.Bounds.Size); Rectangle backRectDrop = splitButton.DropDownButtonBounds; // Cannot paint zero sized areas @@ -1051,14 +1056,15 @@ private void DrawGradientToolSplitItem(Graphics? g, DrawGradientBack(g, backRectDrop, colorsDrop); // Draw the split line between the areas - using (LinearGradientBrush splitBrush = new(new Rectangle(backRect.X + splitOffset, backRect.Top, 1, backRect.Height + 1), - colorsSplit.Border1, colorsSplit.Border2, 90f)) + using (LinearGradientBrush splitBrush = new LinearGradientBrush( + new Rectangle(backRect.X + splitOffset, backRect.Top, 1, backRect.Height + 1), + colorsSplit.Border1, colorsSplit.Border2, 90f)) { // Sigma curve, so go from color1 to color2 and back to color1 again splitBrush.SetSigmaBellShape(0.5f); // Convert the brush to a pen for DrawPath call - using (Pen splitPen = new(splitBrush)) + using (Pen splitPen = new Pen(splitBrush)) { g.DrawLine(splitPen, backRect.X + splitOffset, backRect.Top + 1, backRect.X + splitOffset, backRect.Bottom - 1); } @@ -1072,22 +1078,23 @@ private void DrawGradientToolSplitItem(Graphics? g, private void DrawContextMenuHeader(Graphics? g, ToolStripItem item) { // Get the rectangle that is the items area - Rectangle itemRect = new(Point.Empty, item.Bounds.Size); + Rectangle itemRect = new Rectangle(Point.Empty, item.Bounds.Size); // Create border and clipping paths using GraphicsPath borderPath = CreateBorderPath(itemRect, CUT_TOOL_ITEM_MENU), insidePath = CreateInsideBorderPath(itemRect, CUT_TOOL_ITEM_MENU), clipPath = CreateClipBorderPath(itemRect, CUT_TOOL_ITEM_MENU); // Clip all drawing to within the border path - using Clipping clipping = new(g, clipPath); + using Clipping clipping = new Clipping(g, clipPath); // Draw the entire background area first - using (SolidBrush backBrush = new(CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.02f, 1.02f, 1.02f))) + using (SolidBrush backBrush = + new SolidBrush(CommonHelper.WhitenColor(KCT.ToolStripDropDownBackground, 1.02f, 1.02f, 1.02f))) { g.FillPath(backBrush, borderPath); } // Draw the border - using (Pen borderPen = new(KCT.MenuBorder)) + using (Pen borderPen = new Pen(KCT.MenuBorder)) { g.DrawPath(borderPen, borderPath); } @@ -1144,7 +1151,7 @@ private void DrawGradientContextMenuItem(Graphics? g, GradientItemColors colors) { // Do we need to draw with separator on the opposite edge? - Rectangle backRect = new(2, 0, item.Bounds.Width - 3, item.Bounds.Height); + Rectangle backRect = new Rectangle(2, 0, item.Bounds.Width - 3, item.Bounds.Height); // Perform actual drawing into the background DrawGradientItem(g, backRect, colors); @@ -1173,15 +1180,17 @@ private static void DrawGradientBack(Graphics? g, backRect.Inflate(-1, -1); var y2 = backRect.Height / 2; - Rectangle backRect1 = new(backRect.X, backRect.Y, backRect.Width, y2); - Rectangle backRect2 = new(backRect.X, backRect.Y + y2, backRect.Width, backRect.Height - y2); + Rectangle backRect1 = new Rectangle(backRect.X, backRect.Y, backRect.Width, y2); + Rectangle backRect2 = new Rectangle(backRect.X, backRect.Y + y2, backRect.Width, backRect.Height - y2); Rectangle backRect1I = backRect1; Rectangle backRect2I = backRect2; backRect1I.Inflate(1, 1); backRect2I.Inflate(1, 1); - using (LinearGradientBrush insideBrush1 = new(backRect1I, colors.InsideTop1, colors.InsideTop2, 90f), - insideBrush2 = new(backRect2I, colors.InsideBottom1, colors.InsideBottom2, 90f)) + using (LinearGradientBrush insideBrush1 = + new LinearGradientBrush(backRect1I, colors.InsideTop1, colors.InsideTop2, 90f), + insideBrush2 = new LinearGradientBrush(backRect2I, colors.InsideBottom1, + colors.InsideBottom2, 90f)) { g.FillRectangle(insideBrush1, backRect1); g.FillRectangle(insideBrush2, backRect2); @@ -1195,8 +1204,10 @@ private static void DrawGradientBack(Graphics? g, backRect1I.Inflate(1, 1); backRect2I.Inflate(1, 1); - using (LinearGradientBrush fillBrush1 = new(backRect1I, colors.FillTop1, colors.FillTop2, 90f), - fillBrush2 = new(backRect2I, colors.FillBottom1, colors.FillBottom2, 90f)) + using (LinearGradientBrush fillBrush1 = + new LinearGradientBrush(backRect1I, colors.FillTop1, colors.FillTop2, 90f), + fillBrush2 = new LinearGradientBrush(backRect2I, colors.FillBottom1, + colors.FillBottom2, 90f)) { // Reduce rect one more time for the innermost drawing backRect.Inflate(-1, -1); @@ -1215,17 +1226,18 @@ private static void DrawGradientBorder(Graphics? g, GradientItemColors colors) { // Drawing with anti aliasing to create smoother appearance - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); Rectangle backRectI = backRect; backRectI.Inflate(1, 1); // Finally draw the border around the menu item - using LinearGradientBrush borderBrush = new(backRectI, colors.Border1, colors.Border2, 90f); + using LinearGradientBrush borderBrush = + new LinearGradientBrush(backRectI, colors.Border1, colors.Border2, 90f); // Sigma curve, so go from color1 to color2 and back to color1 again borderBrush.SetSigmaBellShape(0.5f); // Convert the brush to a pen for DrawPath call - using Pen borderPen = new(borderBrush); + using Pen borderPen = new Pen(borderBrush); // Create border path around the entire item using GraphicsPath borderPath = CreateBorderPath(backRect, CUT_MENU_ITEM_BACK); g.DrawPath(borderPen, borderPath); @@ -1344,7 +1356,7 @@ private static GraphicsPath CreateBorderPath(Rectangle rect, pts.Add(new PointF(l, y0)); // Create path using a simple set of lines that cut the corner - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); // Add a line between each set of points for (var i = 1; i < pts.Count; i++) @@ -1365,7 +1377,7 @@ private static GraphicsPath CreateBorderPath(Rectangle rect, float cut) rect.Height--; // Create path using a simple set of lines that cut the corner - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(rect.Left + cut, rect.Top, rect.Right - cut, rect.Top); path.AddLine(rect.Right - cut, rect.Top, rect.Right, rect.Top + cut); path.AddLine(rect.Right, rect.Top + cut, rect.Right, rect.Bottom - cut); @@ -1445,7 +1457,7 @@ private GraphicsPath CreateArrowPath(ToolStripItem item, } // Create triangle using a series of lines - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); switch (direction) { @@ -1480,7 +1492,7 @@ private GraphicsPath CreateTickPath(Rectangle rect) var x = rect.X + (rect.Width / 2); var y = rect.Y + (rect.Height / 2); - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); //path.AddLine(x - 4, y, x - 2, y + 4); //path.AddLine(x - 2, y + 4, x + 3, y - 5); path.AddLine(x - 4, y - 1, x - 2, y - 1 + 4); @@ -1494,7 +1506,7 @@ private GraphicsPath CreateIndeterminatePath(Rectangle rect) var x = rect.X + (rect.Width / 2); var y = rect.Y + (rect.Height / 2); - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(x - 3, y, x, y - 3); path.AddLine(x, y - 3, x + 3, y); path.AddLine(x + 3, y, x, y + 3); diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2010Renderer.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2010Renderer.cs index f8c129029..b23e098d6 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2010Renderer.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2010Renderer.cs @@ -59,14 +59,14 @@ public virtual void DrawItem(Graphics? g, Rectangle rect) public virtual void DrawBorder(Graphics? g, Rectangle rect) { // Drawing with anti aliasing to create smoother appearance - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); Rectangle backRectI = rect; backRectI.Inflate(1, 1); // Finally draw the border around the menu item - using LinearGradientBrush borderBrush = new(backRectI, Border1, Border2, 90f); + using LinearGradientBrush borderBrush = new LinearGradientBrush(backRectI, Border1, Border2, 90f); // Convert the brush to a pen for DrawPath call - using Pen borderPen = new(borderBrush); + using Pen borderPen = new Pen(borderBrush); // Create border path around the entire item using GraphicsPath borderPath = CreateBorderPath(rect, CUT_ITEM_MENU); g.DrawPath(borderPen, borderPath); @@ -124,34 +124,35 @@ public GradientItemColorsTracking(Color border, public override void DrawBack(Graphics? g, Rectangle rect) { - Rectangle inset = new(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); - Rectangle insetB = new(rect.X + 2, rect.Y + 2, rect.Width - 3, rect.Height - 3); - Rectangle insetC = new(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 4); + Rectangle inset = new Rectangle(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); + Rectangle insetB = new Rectangle(rect.X + 2, rect.Y + 2, rect.Width - 3, rect.Height - 3); + Rectangle insetC = new Rectangle(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 4); - using LinearGradientBrush insideBrush1 = new(rect, Back1B, Back1, 90f), - insideBrush2 = new(insetB, Back2B, Back2, 90f); + using LinearGradientBrush insideBrush1 = new LinearGradientBrush(rect, Back1B, Back1, 90f), + insideBrush2 = new LinearGradientBrush(insetB, Back2B, Back2, 90f); insideBrush1.SetSigmaBellShape(0.5f); insideBrush2.SetSigmaBellShape(0.5f); g.FillRectangle(insideBrush1, inset); using GraphicsPath borderPath = CreateBorderPath(insetC, CUT_INNER_ITEM_MENU), clipPath = CreateBorderPath(insetB, CUT_INNER_ITEM_MENU); - using (Pen insidePen = new(insideBrush2)) + using (Pen insidePen = new Pen(insideBrush2)) { g.DrawPath(insidePen, borderPath); } g.FillPath(insideBrush2, borderPath); - using (Clipping clipping = new(g, clipPath)) + using (Clipping clipping = new Clipping(g, clipPath)) { - using (GraphicsPath ellipsePath = new()) + using (GraphicsPath ellipsePath = new GraphicsPath()) { - RectangleF ellipseRect = new(-(rect.Width / 2), rect.Bottom - 9, rect.Width * 2, 18); - PointF ellipseCenter = new(ellipseRect.Left + (ellipseRect.Width / 2), ellipseRect.Top + (ellipseRect.Height / 2)); + RectangleF ellipseRect = new RectangleF(-(rect.Width / 2), rect.Bottom - 9, rect.Width * 2, 18); + PointF ellipseCenter = new PointF(ellipseRect.Left + (ellipseRect.Width / 2), + ellipseRect.Top + (ellipseRect.Height / 2)); ellipsePath.AddEllipse(ellipseRect); - using (PathGradientBrush insideLighten = new(ellipsePath)) + using (PathGradientBrush insideLighten = new PathGradientBrush(ellipsePath)) { insideLighten.CenterPoint = ellipseCenter; insideLighten.CenterColor = Color.White; @@ -206,16 +207,16 @@ public GradientItemColorsPressed(Color border, public override void DrawBack(Graphics? g, Rectangle rect) { - Rectangle rect2 = new(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 1); - Rectangle rect3 = new(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 3); + Rectangle rect2 = new Rectangle(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 1); + Rectangle rect3 = new Rectangle(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 3); - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); using GraphicsPath path1 = CreateBorderPath(rect, CUT_ITEM_MENU), path2 = CreateBorderPath(rect2, CUT_ITEM_MENU), path3 = CreateBorderPath(rect3, CUT_ITEM_MENU); - using SolidBrush brush1 = new(CommonHelper.MergeColors(Border1, 0.4f, Back1, 0.6f)), - brush2 = new(CommonHelper.MergeColors(Border1, 0.2f, Back1, 0.8f)), - brush3 = new(Back1); + using SolidBrush brush1 = new SolidBrush(CommonHelper.MergeColors(Border1, 0.4f, Back1, 0.6f)), + brush2 = new SolidBrush(CommonHelper.MergeColors(Border1, 0.2f, Back1, 0.8f)), + brush3 = new SolidBrush(Back1); g.FillPath(brush1, path1); g.FillPath(brush2, path2); g.FillPath(brush3, path3); @@ -243,19 +244,20 @@ public GradientItemColorsChecked(Color border, public override void DrawBack(Graphics? g, Rectangle rect) { - Rectangle inset = new(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); + Rectangle inset = new Rectangle(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); - using LinearGradientBrush insideBrush = new(rect, Back2, Back1, 90f); + using LinearGradientBrush insideBrush = new LinearGradientBrush(rect, Back2, Back1, 90f); insideBrush.SetSigmaBellShape(0.5f); g.FillRectangle(insideBrush, inset); using GraphicsPath borderPath = CreateBorderPath(inset, CUT_INNER_ITEM_MENU); - using GraphicsPath ellipsePath = new(); - RectangleF ellipseRect = new(rect.Left, rect.Bottom - 8, rect.Width, 8); - PointF ellipseCenter = new(ellipseRect.Left + (ellipseRect.Width / 2), ellipseRect.Top + (ellipseRect.Height / 2)); + using GraphicsPath ellipsePath = new GraphicsPath(); + RectangleF ellipseRect = new RectangleF(rect.Left, rect.Bottom - 8, rect.Width, 8); + PointF ellipseCenter = new PointF(ellipseRect.Left + (ellipseRect.Width / 2), + ellipseRect.Top + (ellipseRect.Height / 2)); ellipsePath.AddEllipse(ellipseRect); - using PathGradientBrush insideLighten = new(ellipsePath); + using PathGradientBrush insideLighten = new PathGradientBrush(ellipsePath); insideLighten.CenterPoint = ellipseCenter; insideLighten.CenterColor = Color.FromArgb(96, Color.White); insideLighten.SurroundColors = new[] { Color.Transparent }; @@ -401,7 +403,7 @@ protected override void OnRenderArrow(ToolStripArrowRenderEventArgs e) }; // Draw the actual arrow using a gradient - using LinearGradientBrush arrowBrush = new(boundsF, color1, color2, angle); + using LinearGradientBrush arrowBrush = new LinearGradientBrush(boundsF, color1, color2, angle); e.Graphics.FillPath(arrowBrush, arrowPath); } } @@ -467,17 +469,17 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) } // Drawing with anti aliasing to create smoother appearance - using AntiAlias aa = new(e.Graphics); + using AntiAlias aa = new AntiAlias(e.Graphics); // Create border path for the check box using GraphicsPath borderPath = CreateBorderPath(checkBox, CUT_ITEM_MENU); // Fill the background in a solid color - using (SolidBrush fillBrush = new(KCT.CheckBackground)) + using (SolidBrush fillBrush = new SolidBrush(KCT.CheckBackground)) { e.Graphics.FillPath(fillBrush, borderPath); } // Draw the border around the check box - using (Pen borderPen = new(CommonHelper.WhitenColor(KCT.CheckBackground, 1.05f, 1.52f, 2.75f))) + using (Pen borderPen = new Pen(CommonHelper.WhitenColor(KCT.CheckBackground, 1.05f, 1.52f, 2.75f))) { e.Graphics.DrawPath(borderPen, borderPath); } @@ -501,7 +503,9 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) using (GraphicsPath tickPath = CreateTickPath(checkBox)) { // Draw the tick with a thickish brush - using (Pen tickPen = new(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f), CONTEXT_CHECK_TICK_THICKNESS)) + using (Pen tickPen = + new Pen(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f), + CONTEXT_CHECK_TICK_THICKNESS)) { e.Graphics.DrawPath(tickPen, tickPath); } @@ -512,7 +516,8 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) using (GraphicsPath tickPath = CreateIndeterminatePath(checkBox)) { // Draw the tick with a thickish brush - using (SolidBrush tickBrush = new(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f))) + using (SolidBrush tickBrush = + new SolidBrush(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f))) { e.Graphics.FillPath(tickBrush, tickPath); } @@ -584,7 +589,8 @@ protected override void OnRenderItemText(ToolStripItemTextRenderEventArgs e) } else { - using GraphicsTextHint clearTypeGridFit = new(e.Graphics, TextRenderingHint.ClearTypeGridFit); + using GraphicsTextHint clearTypeGridFit = + new GraphicsTextHint(e.Graphics, TextRenderingHint.ClearTypeGridFit); base.OnRenderItemText(e); } } @@ -613,7 +619,7 @@ protected override void OnRenderItemImage(ToolStripItemImageRenderEventArgs e) } else { - using ImageAttributes attribs = new(); + using ImageAttributes attribs = new ImageAttributes(); attribs.SetColorMatrix(CommonHelper.MatrixDisabled); // Draw using the disabled matrix to make it look disabled @@ -752,8 +758,8 @@ protected override void OnRenderSplitButtonBackground(ToolStripItemRenderEventAr /// An ToolStripRenderEventArgs containing the event data. protected override void OnRenderStatusStripSizingGrip(ToolStripRenderEventArgs e) { - using SolidBrush darkBrush = new(KCT.GripDark), - lightBrush = new(KCT.GripLight); + using SolidBrush darkBrush = new SolidBrush(KCT.GripDark), + lightBrush = new SolidBrush(KCT.GripLight); // Do we need to invert the drawing edge? var rtl = e.ToolStrip.RightToLeft == RightToLeft.Yes; @@ -796,10 +802,8 @@ protected override void OnRenderToolStripContentPanelBackground(ToolStripContent // Cannot paint a zero sized area if (e.ToolStripContentPanel is { Width: > 0, Height: > 0 }) { - using LinearGradientBrush backBrush = new(e.ToolStripContentPanel.ClientRectangle, - KCT.ToolStripContentPanelGradientEnd, - KCT.ToolStripContentPanelGradientBegin, - 90f); + using LinearGradientBrush backBrush = new LinearGradientBrush(e.ToolStripContentPanel.ClientRectangle, + KCT.ToolStripContentPanelGradientEnd, KCT.ToolStripContentPanelGradientBegin, 90f); e.Graphics.FillRectangle(backBrush, e.ToolStripContentPanel.ClientRectangle); } } @@ -827,10 +831,10 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) clipPath = CreateClipBorderPath(e.AffectedBounds, CUT_CONTEXT_MENU)) { // Clip all drawing to within the border path - using (Clipping clipping = new(e.Graphics, clipPath)) + using (Clipping clipping = new Clipping(e.Graphics, clipPath)) { // Create the background brush - using (SolidBrush backBrush = new(KCT.ToolStripDropDownBackground)) + using (SolidBrush backBrush = new SolidBrush(KCT.ToolStripDropDownBackground)) { e.Graphics.FillPath(backBrush, borderPath); } @@ -846,15 +850,13 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) } // We do not paint the top two pixel lines, as they are drawn by the status strip border render method - RectangleF backRect = new(0, 1.5f, e.ToolStrip.Width, e.ToolStrip.Height - 2); + RectangleF backRect = new RectangleF(0, 1.5f, e.ToolStrip.Width, e.ToolStrip.Height - 2); // Cannot paint a zero sized area if (backRect is { Width: > 0, Height: > 0 }) { - using LinearGradientBrush backBrush = new(backRect, - KCT.StatusStripGradientBegin, - KCT.StatusStripGradientEnd, - 90f); + using LinearGradientBrush backBrush = new LinearGradientBrush(backRect, + KCT.StatusStripGradientBegin, KCT.StatusStripGradientEnd, 90f); backBrush.Blend = _stripBlend; e.Graphics.FillRectangle(backBrush, backRect); } @@ -876,22 +878,20 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) } // Cannot paint a zero sized area - RectangleF backRect = new(0, 0, e.ToolStrip.Width, e.ToolStrip.Height); + RectangleF backRect = new RectangleF(0, 0, e.ToolStrip.Width, e.ToolStrip.Height); if (backRect is { Width: > 0, Height: > 0 }) { if (e.ToolStrip.Orientation == Orientation.Horizontal) { - using (LinearGradientBrush backBrush = new(backRect, - KCT.ToolStripGradientBegin, - KCT.ToolStripGradientEnd, - 90f)) + using (LinearGradientBrush backBrush = new LinearGradientBrush(backRect, + KCT.ToolStripGradientBegin, KCT.ToolStripGradientEnd, 90f)) { backBrush.Blend = _stripBlend; e.Graphics.FillRectangle(backBrush, backRect); } - using (Pen darkBorder = new(KCT.ToolStripBorder), - lightBorder = new(KCT.ToolStripGradientBegin)) + using (Pen darkBorder = new Pen(KCT.ToolStripBorder), + lightBorder = new Pen(KCT.ToolStripGradientBegin)) { e.Graphics.DrawLine(lightBorder, 0, 2, 0, e.ToolStrip.Height - 2); e.Graphics.DrawLine(lightBorder, e.ToolStrip.Width - 2, 0, e.ToolStrip.Width - 2, e.ToolStrip.Height - 2); @@ -900,17 +900,15 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) } else { - using (LinearGradientBrush backBrush = new(backRect, - KCT.ToolStripGradientBegin, - KCT.ToolStripGradientEnd, - 0f)) + using (LinearGradientBrush backBrush = new LinearGradientBrush(backRect, + KCT.ToolStripGradientBegin, KCT.ToolStripGradientEnd, 0f)) { backBrush.Blend = _stripBlend; e.Graphics.FillRectangle(backBrush, backRect); } - using (Pen darkBorder = new(KCT.ToolStripBorder), - lightBorder = new(KCT.ToolStripGradientBegin)) + using (Pen darkBorder = new Pen(KCT.ToolStripBorder), + lightBorder = new Pen(KCT.ToolStripGradientBegin)) { e.Graphics.DrawLine(lightBorder, 1, 0, e.ToolStrip.Width - 2, 0); e.Graphics.DrawLine(lightBorder, 1, e.ToolStrip.Height - 2, e.ToolStrip.Width - 2, e.ToolStrip.Height - 2); @@ -938,7 +936,7 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) // If there is a connected area to be drawn if (!e.ConnectedArea.IsEmpty) { - using SolidBrush excludeBrush = new(KCT.ToolStripDropDownBackground); + using SolidBrush excludeBrush = new SolidBrush(KCT.ToolStripDropDownBackground); e.Graphics.FillRectangle(excludeBrush, e.ConnectedArea); } @@ -948,14 +946,14 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) clipPath = CreateClipBorderPath(e.AffectedBounds, e.ConnectedArea, CUT_CONTEXT_MENU)) { // Create the different pen colors we need - using (Pen borderPen = new(KCT.MenuBorder), - insidePen = new(KCT.ToolStripDropDownBackground)) + using (Pen borderPen = new Pen(KCT.MenuBorder), + insidePen = new Pen(KCT.ToolStripDropDownBackground)) { // Clip all drawing to within the border path - using (Clipping clipping = new(e.Graphics, clipPath)) + using (Clipping clipping = new Clipping(e.Graphics, clipPath)) { // Drawing with anti aliasing to create smoother appearance - using (AntiAlias aa = new(e.Graphics)) + using (AntiAlias aa = new AntiAlias(e.Graphics)) { // Draw the inside area first e.Graphics.DrawPath(insidePen, insidePath); @@ -973,8 +971,8 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) break; case StatusStrip _: // Draw two lines at top of the status strip - using (Pen darkBorder = new(KCT.ToolStripBorder), - lightBorder = new(KCT.SeparatorLight)) + using (Pen darkBorder = new Pen(KCT.ToolStripBorder), + lightBorder = new Pen(KCT.SeparatorLight)) { e.Graphics.DrawLine(darkBorder, 0, 0, e.ToolStrip.Width - 1, 0); e.Graphics.DrawLine(lightBorder, 0, 1, e.ToolStrip.Width - 1, 1); @@ -1015,7 +1013,7 @@ protected override void OnRenderImageMargin(ToolStripRenderEventArgs e) marginRect.X += MARGIN_INSET / 2; } - using Pen marginPen = new(Color.FromArgb(80, KCT.MenuBorder)); + using Pen marginPen = new Pen(Color.FromArgb(80, KCT.MenuBorder)); if (!rtl) { e.Graphics.DrawLine(marginPen, marginRect.Right, marginRect.Top, marginRect.Right, marginRect.Bottom); @@ -1155,7 +1153,7 @@ private void DrawGradientToolSplitItem(Graphics? g, GradientItemColors colorsSplit) { // Create entire area and just the drop button area rectangles - Rectangle backRect = new(Point.Empty, splitButton.Bounds.Size); + Rectangle backRect = new Rectangle(Point.Empty, splitButton.Bounds.Size); Rectangle backRectDrop = splitButton.DropDownButtonBounds; // Cannot paint zero sized areas @@ -1193,11 +1191,12 @@ private void DrawGradientToolSplitItem(Graphics? g, colorsDrop.DrawBack(g, backRectDrop); // Draw the split line between the areas - using (LinearGradientBrush splitBrush = new(new Rectangle(backRect.X + splitOffset, backRect.Top, 1, backRect.Height + 1), - colorsSplit.Border1, colorsSplit.Border2, 90f)) + using (LinearGradientBrush splitBrush = new LinearGradientBrush( + new Rectangle(backRect.X + splitOffset, backRect.Top, 1, backRect.Height + 1), + colorsSplit.Border1, colorsSplit.Border2, 90f)) { // Convert the brush to a pen for DrawPath call - using (Pen splitPen = new(splitBrush)) + using (Pen splitPen = new Pen(splitBrush)) { g.DrawLine(splitPen, backRect.X + splitOffset, backRect.Top + 1, backRect.X + splitOffset, backRect.Bottom - 1); } @@ -1211,22 +1210,22 @@ private void DrawGradientToolSplitItem(Graphics? g, private void DrawContextMenuHeader(Graphics? g, ToolStripItem item) { // Get the rectangle that is the items area - Rectangle itemRect = new(Point.Empty, item.Bounds.Size); + Rectangle itemRect = new Rectangle(Point.Empty, item.Bounds.Size); // Create border and clipping paths using GraphicsPath borderPath = CreateBorderPath(itemRect, CUT_HEADER_MENU), insidePath = CreateInsideBorderPath(itemRect, CUT_HEADER_MENU), clipPath = CreateClipBorderPath(itemRect, CUT_HEADER_MENU); // Clip all drawing to within the border path - using Clipping clipping = new(g, clipPath); + using Clipping clipping = new Clipping(g, clipPath); // Draw the entire background area first - using (SolidBrush backBrush = new(KCT.ToolStripDropDownBackground)) + using (SolidBrush backBrush = new SolidBrush(KCT.ToolStripDropDownBackground)) { g.FillPath(backBrush, borderPath); } // Draw the border - using (Pen borderPen = new(KCT.MenuBorder)) + using (Pen borderPen = new Pen(KCT.MenuBorder)) { g.DrawPath(borderPen, borderPath); } @@ -1283,7 +1282,7 @@ private void DrawGradientContextMenuItem(Graphics? g, GradientItemColors colors) { // Do we need to draw with separator on the opposite edge? - Rectangle backRect = new(2, 0, item.Bounds.Width - 3, item.Bounds.Height); + Rectangle backRect = new Rectangle(2, 0, item.Bounds.Width - 3, item.Bounds.Height); // Perform actual drawing into the background colors.DrawItem(g, backRect); @@ -1311,7 +1310,7 @@ private void DrawContextMenuSeparator(Graphics g, var t = rect.Y; var b = rect.Bottom; - using Pen marginPen = new(Color.FromArgb(80, KCT.MenuBorder)); + using Pen marginPen = new Pen(Color.FromArgb(80, KCT.MenuBorder)); marginPen.DashPattern = new float[] { 2, 2 }; g.DrawLine(marginPen, l, t, l, b); } @@ -1321,7 +1320,7 @@ private void DrawContextMenuSeparator(Graphics g, var l = rect.X + (rtl ? 0 : horizontalInset); var r = rect.Right - (rtl ? horizontalInset : 0); - using Pen marginPen = new(Color.FromArgb(80, KCT.MenuBorder)); + using Pen marginPen = new Pen(Color.FromArgb(80, KCT.MenuBorder)); marginPen.DashPattern = new float[] { 2, 2 }; g.DrawLine(marginPen, l, y, r, y); } @@ -1335,7 +1334,7 @@ private void DrawToolStripSeparator(Graphics g, int horizontalInset, bool rtl) { - RectangleF boundsF = new(rect.X, rect.Y, rect.Width, rect.Height); + RectangleF boundsF = new RectangleF(rect.X, rect.Y, rect.Width, rect.Height); if (vertical) { @@ -1343,8 +1342,9 @@ private void DrawToolStripSeparator(Graphics g, var t = rect.Y; // Draw vertical lines centered - using LinearGradientBrush lightBrush = new(boundsF, Color.Transparent, lightColor, 90), - darkBrush = new(boundsF, Color.Transparent, darkColor, 90); + using LinearGradientBrush lightBrush = + new LinearGradientBrush(boundsF, Color.Transparent, lightColor, 90), + darkBrush = new LinearGradientBrush(boundsF, Color.Transparent, darkColor, 90); lightBrush.Blend = _separatorLightBlend; darkBrush.Blend = _separatorDarkBlend; g.FillRectangle(lightBrush, l - 1, t, 3, rect.Height); @@ -1356,8 +1356,9 @@ private void DrawToolStripSeparator(Graphics g, var t = rect.Height / 2; // Draw horizontal lines centered - using LinearGradientBrush lightBrush = new(boundsF, Color.Transparent, lightColor, 0f), - darkBrush = new(boundsF, Color.Transparent, darkColor, 0f); + using LinearGradientBrush lightBrush = + new LinearGradientBrush(boundsF, Color.Transparent, lightColor, 0f), + darkBrush = new LinearGradientBrush(boundsF, Color.Transparent, darkColor, 0f); lightBrush.Blend = _separatorLightBlend; darkBrush.Blend = _separatorDarkBlend; g.FillRectangle(lightBrush, l, t - 1, rect.Width, 3); @@ -1438,7 +1439,7 @@ private static GraphicsPath CreateBorderPath(Rectangle rect, pts.Add(new PointF(l, y0)); // Create path using a simple set of lines that cut the corner - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); // Add a line between each set of points for (var i = 1; i < pts.Count; i++) @@ -1459,7 +1460,7 @@ private static GraphicsPath CreateBorderPath(Rectangle rect, float cut) rect.Height--; // Create path using a simple set of lines that cut the corner - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(rect.Left + cut, rect.Top, rect.Right - cut, rect.Top); path.AddLine(rect.Right - cut, rect.Top, rect.Right, rect.Top + cut); path.AddLine(rect.Right, rect.Top + cut, rect.Right, rect.Bottom - cut); @@ -1539,7 +1540,7 @@ private GraphicsPath CreateArrowPath(ToolStripItem item, } // Create triangle using a series of lines - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); switch (direction) { @@ -1574,7 +1575,7 @@ private GraphicsPath CreateTickPath(Rectangle rect) var x = rect.X + (rect.Width / 2); var y = rect.Y + (rect.Height / 2); - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(x - 4, y, x - 2, y + 4); path.AddLine(x - 2, y + 4, x + 3, y - 5); return path; @@ -1586,7 +1587,7 @@ private GraphicsPath CreateIndeterminatePath(Rectangle rect) var x = rect.X + (rect.Width / 2); var y = rect.Y + (rect.Height / 2); - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(x - 3, y, x, y - 3); path.AddLine(x, y - 3, x + 3, y); path.AddLine(x + 3, y, x, y + 3); diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2013Renderer.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2013Renderer.cs index 2ec3328c6..675c23b88 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2013Renderer.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonOffice2013Renderer.cs @@ -59,14 +59,14 @@ public virtual void DrawItem(Graphics? g, Rectangle rect) public virtual void DrawBorder(Graphics? g, Rectangle rect) { // Drawing with anti aliasing to create smoother appearance - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); Rectangle backRectI = rect; backRectI.Inflate(1, 1); // Finally draw the border around the menu item - using LinearGradientBrush borderBrush = new(backRectI, Border1, Border2, 90f); + using LinearGradientBrush borderBrush = new LinearGradientBrush(backRectI, Border1, Border2, 90f); // Convert the brush to a pen for DrawPath call - using Pen borderPen = new(borderBrush); + using Pen borderPen = new Pen(borderBrush); // Create border path around the entire item using GraphicsPath borderPath = CreateBorderPath(rect, _cutItemMenu); g.DrawPath(borderPen, borderPath); @@ -124,34 +124,35 @@ public GradientItemColorsTracking(Color border, public override void DrawBack(Graphics? g, Rectangle rect) { - Rectangle inset = new(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); - Rectangle insetB = new(rect.X + 2, rect.Y + 2, rect.Width - 3, rect.Height - 3); - Rectangle insetC = new(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 4); + Rectangle inset = new Rectangle(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); + Rectangle insetB = new Rectangle(rect.X + 2, rect.Y + 2, rect.Width - 3, rect.Height - 3); + Rectangle insetC = new Rectangle(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 4); - using LinearGradientBrush insideBrush1 = new(rect, Back1B, Back1, 90f), - insideBrush2 = new(insetB, Back2B, Back2, 90f); + using LinearGradientBrush insideBrush1 = new LinearGradientBrush(rect, Back1B, Back1, 90f), + insideBrush2 = new LinearGradientBrush(insetB, Back2B, Back2, 90f); insideBrush1.SetSigmaBellShape(0.5f); insideBrush2.SetSigmaBellShape(0.5f); g.FillRectangle(insideBrush1, inset); using GraphicsPath borderPath = CreateBorderPath(insetC, _cutInnerItemMenu), clipPath = CreateBorderPath(insetB, _cutInnerItemMenu); - using (Pen insidePen = new(insideBrush2)) + using (Pen insidePen = new Pen(insideBrush2)) { g.DrawPath(insidePen, borderPath); } g.FillPath(insideBrush2, borderPath); - using (Clipping clipping = new(g, clipPath)) + using (Clipping clipping = new Clipping(g, clipPath)) { - using (GraphicsPath ellipsePath = new()) + using (GraphicsPath ellipsePath = new GraphicsPath()) { - RectangleF ellipseRect = new(-(rect.Width / 2), rect.Bottom - 9, rect.Width * 2, 18); - PointF ellipseCenter = new(ellipseRect.Left + (ellipseRect.Width / 2), ellipseRect.Top + (ellipseRect.Height / 2)); + RectangleF ellipseRect = new RectangleF(-(rect.Width / 2), rect.Bottom - 9, rect.Width * 2, 18); + PointF ellipseCenter = new PointF(ellipseRect.Left + (ellipseRect.Width / 2), + ellipseRect.Top + (ellipseRect.Height / 2)); ellipsePath.AddEllipse(ellipseRect); - using (PathGradientBrush insideLighten = new(ellipsePath)) + using (PathGradientBrush insideLighten = new PathGradientBrush(ellipsePath)) { insideLighten.CenterPoint = ellipseCenter; insideLighten.CenterColor = Color.White; @@ -206,16 +207,16 @@ public GradientItemColorsPressed(Color border, public override void DrawBack(Graphics? g, Rectangle rect) { - Rectangle rect2 = new(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 1); - Rectangle rect3 = new(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 3); + Rectangle rect2 = new Rectangle(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 1); + Rectangle rect3 = new Rectangle(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 3); - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); using GraphicsPath path1 = CreateBorderPath(rect, _cutItemMenu), path2 = CreateBorderPath(rect2, _cutItemMenu), path3 = CreateBorderPath(rect3, _cutItemMenu); - using SolidBrush brush1 = new(CommonHelper.MergeColors(Border1, 0.4f, Back1, 0.6f)), - brush2 = new(CommonHelper.MergeColors(Border1, 0.2f, Back1, 0.8f)), - brush3 = new(Back1); + using SolidBrush brush1 = new SolidBrush(CommonHelper.MergeColors(Border1, 0.4f, Back1, 0.6f)), + brush2 = new SolidBrush(CommonHelper.MergeColors(Border1, 0.2f, Back1, 0.8f)), + brush3 = new SolidBrush(Back1); g.FillPath(brush1, path1); g.FillPath(brush2, path2); g.FillPath(brush3, path3); @@ -243,19 +244,20 @@ public GradientItemColorsChecked(Color border, public override void DrawBack(Graphics? g, Rectangle rect) { - Rectangle inset = new(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); + Rectangle inset = new Rectangle(rect.X + 1, rect.Y + 1, rect.Width - 2, rect.Height - 2); - using LinearGradientBrush insideBrush = new(rect, Back2, Back1, 90f); + using LinearGradientBrush insideBrush = new LinearGradientBrush(rect, Back2, Back1, 90f); insideBrush.SetSigmaBellShape(0.5f); g.FillRectangle(insideBrush, inset); using GraphicsPath borderPath = CreateBorderPath(inset, _cutInnerItemMenu); - using GraphicsPath ellipsePath = new(); - RectangleF ellipseRect = new(rect.Left, rect.Bottom - 8, rect.Width, 8); - PointF ellipseCenter = new(ellipseRect.Left + (ellipseRect.Width / 2), ellipseRect.Top + (ellipseRect.Height / 2)); + using GraphicsPath ellipsePath = new GraphicsPath(); + RectangleF ellipseRect = new RectangleF(rect.Left, rect.Bottom - 8, rect.Width, 8); + PointF ellipseCenter = new PointF(ellipseRect.Left + (ellipseRect.Width / 2), + ellipseRect.Top + (ellipseRect.Height / 2)); ellipsePath.AddEllipse(ellipseRect); - using PathGradientBrush insideLighten = new(ellipsePath); + using PathGradientBrush insideLighten = new PathGradientBrush(ellipsePath); insideLighten.CenterPoint = ellipseCenter; insideLighten.CenterColor = Color.FromArgb(96, Color.White); insideLighten.SurroundColors = new[] { Color.Transparent }; @@ -400,7 +402,7 @@ protected override void OnRenderArrow(ToolStripArrowRenderEventArgs e) }; // Draw the actual arrow using a gradient - using LinearGradientBrush arrowBrush = new(boundsF, color1, color2, angle); + using LinearGradientBrush arrowBrush = new LinearGradientBrush(boundsF, color1, color2, angle); e.Graphics.FillPath(arrowBrush, arrowPath); } } @@ -466,17 +468,17 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) } // Drawing with anti aliasing to create smoother appearance - using AntiAlias aa = new(e.Graphics); + using AntiAlias aa = new AntiAlias(e.Graphics); // Create border path for the check box using GraphicsPath borderPath = CreateBorderPath(checkBox, _cutItemMenu); // Fill the background in a solid color - using (SolidBrush fillBrush = new(KCT.CheckBackground)) + using (SolidBrush fillBrush = new SolidBrush(KCT.CheckBackground)) { e.Graphics.FillPath(fillBrush, borderPath); } // Draw the border around the check box - using (Pen borderPen = new(CommonHelper.WhitenColor(KCT.CheckBackground, 1.05f, 1.52f, 2.75f))) + using (Pen borderPen = new Pen(CommonHelper.WhitenColor(KCT.CheckBackground, 1.05f, 1.52f, 2.75f))) { e.Graphics.DrawPath(borderPen, borderPath); } @@ -500,7 +502,9 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) using (GraphicsPath tickPath = CreateTickPath(checkBox)) { // Draw the tick with a thickish brush - using (Pen tickPen = new(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f), _contextCheckTickThickness)) + using (Pen tickPen = + new Pen(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f), + _contextCheckTickThickness)) { e.Graphics.DrawPath(tickPen, tickPath); } @@ -511,7 +515,8 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) using (GraphicsPath tickPath = CreateIndeterminatePath(checkBox)) { // Draw the tick with a thickish brush - using (SolidBrush tickBrush = new(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f))) + using (SolidBrush tickBrush = + new SolidBrush(CommonHelper.WhitenColor(KCT.CheckBackground, 3.86f, 3.02f, 1.07f))) { e.Graphics.FillPath(tickBrush, tickPath); } @@ -585,7 +590,8 @@ protected override void OnRenderItemText(ToolStripItemTextRenderEventArgs e) } else { - using GraphicsTextHint clearTypeGridFit = new(e.Graphics, TextRenderingHint.ClearTypeGridFit); + using GraphicsTextHint clearTypeGridFit = + new GraphicsTextHint(e.Graphics, TextRenderingHint.ClearTypeGridFit); base.OnRenderItemText(e); } } @@ -614,7 +620,7 @@ protected override void OnRenderItemImage(ToolStripItemImageRenderEventArgs e) } else { - using ImageAttributes attribs = new(); + using ImageAttributes attribs = new ImageAttributes(); attribs.SetColorMatrix(CommonHelper.MatrixDisabled); // Draw using the disabled matrix to make it look disabled @@ -753,8 +759,8 @@ protected override void OnRenderSplitButtonBackground(ToolStripItemRenderEventAr /// An ToolStripRenderEventArgs containing the event data. protected override void OnRenderStatusStripSizingGrip(ToolStripRenderEventArgs e) { - using SolidBrush darkBrush = new(KCT.SeparatorDark), - lightBrush = new(KCT.GripLight); + using SolidBrush darkBrush = new SolidBrush(KCT.SeparatorDark), + lightBrush = new SolidBrush(KCT.GripLight); // Do we need to invert the drawing edge? var rtl = e.ToolStrip.RightToLeft == RightToLeft.Yes; @@ -797,10 +803,8 @@ protected override void OnRenderToolStripContentPanelBackground(ToolStripContent // Cannot paint a zero sized area if (e.ToolStripContentPanel is { Width: > 0, Height: > 0 }) { - using LinearGradientBrush backBrush = new(e.ToolStripContentPanel.ClientRectangle, - KCT.ToolStripContentPanelGradientEnd, - KCT.ToolStripContentPanelGradientBegin, - 90f); + using LinearGradientBrush backBrush = new LinearGradientBrush(e.ToolStripContentPanel.ClientRectangle, + KCT.ToolStripContentPanelGradientEnd, KCT.ToolStripContentPanelGradientBegin, 90f); e.Graphics.FillRectangle(backBrush, e.ToolStripContentPanel.ClientRectangle); } } @@ -827,9 +831,9 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) using GraphicsPath borderPath = CreateBorderPath(e.AffectedBounds, _cutContextMenu), clipPath = CreateClipBorderPath(e.AffectedBounds, _cutContextMenu); // Clip all drawing to within the border path - using Clipping clipping = new(e.Graphics, clipPath); + using Clipping clipping = new Clipping(e.Graphics, clipPath); // Create the background brush - using SolidBrush backBrush = new(KCT.ToolStripDropDownBackground); + using SolidBrush backBrush = new SolidBrush(KCT.ToolStripDropDownBackground); e.Graphics.FillPath(backBrush, borderPath); break; } @@ -842,7 +846,7 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) } // We do not paint the top two pixel lines, as they are drawn by the status strip border render method - RectangleF backRect = new(0, 1.5f, e.ToolStrip.Width, e.ToolStrip.Height - 2); + RectangleF backRect = new RectangleF(0, 1.5f, e.ToolStrip.Width, e.ToolStrip.Height - 2); // Cannot paint a zero sized area if (backRect is { Width: > 0, Height: > 0 }) @@ -855,7 +859,7 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) // backBrush.Blend = _stripBlend; // e.Graphics.FillRectangle(backBrush, backRect); //} - using SolidBrush backBrush = new(KCT.StatusStripGradientEnd); + using SolidBrush backBrush = new SolidBrush(KCT.StatusStripGradientEnd); e.Graphics.FillRectangle(backBrush, backRect); } @@ -880,22 +884,20 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) } // Cannot paint a zero sized area - RectangleF backRect = new(0, 0, e.ToolStrip.Width, e.ToolStrip.Height); + RectangleF backRect = new RectangleF(0, 0, e.ToolStrip.Width, e.ToolStrip.Height); if (backRect is { Width: > 0, Height: > 0 }) { if (e.ToolStrip.Orientation == Orientation.Horizontal) { - using (LinearGradientBrush backBrush = new(backRect, - KCT.ToolStripGradientBegin, - KCT.ToolStripGradientEnd, - 90f)) + using (LinearGradientBrush backBrush = new LinearGradientBrush(backRect, + KCT.ToolStripGradientBegin, KCT.ToolStripGradientEnd, 90f)) { backBrush.Blend = _stripBlend; e.Graphics.FillRectangle(backBrush, backRect); } - using (Pen darkBorder = new(KCT.ToolStripBorder), - lightBorder = new(KCT.ToolStripGradientBegin)) + using (Pen darkBorder = new Pen(KCT.ToolStripBorder), + lightBorder = new Pen(KCT.ToolStripGradientBegin)) { e.Graphics.DrawLine(lightBorder, 0, 2, 0, e.ToolStrip.Height - 2); e.Graphics.DrawLine(lightBorder, e.ToolStrip.Width - 2, 0, e.ToolStrip.Width - 2, e.ToolStrip.Height - 2); @@ -904,17 +906,15 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) } else { - using (LinearGradientBrush backBrush = new(backRect, - KCT.ToolStripGradientBegin, - KCT.ToolStripGradientEnd, - 0f)) + using (LinearGradientBrush backBrush = new LinearGradientBrush(backRect, + KCT.ToolStripGradientBegin, KCT.ToolStripGradientEnd, 0f)) { backBrush.Blend = _stripBlend; e.Graphics.FillRectangle(backBrush, backRect); } - using (Pen darkBorder = new(KCT.ToolStripBorder), - lightBorder = new(KCT.ToolStripGradientBegin)) + using (Pen darkBorder = new Pen(KCT.ToolStripBorder), + lightBorder = new Pen(KCT.ToolStripGradientBegin)) { e.Graphics.DrawLine(lightBorder, 1, 0, e.ToolStrip.Width - 2, 0); e.Graphics.DrawLine(lightBorder, 1, e.ToolStrip.Height - 2, e.ToolStrip.Width - 2, e.ToolStrip.Height - 2); @@ -943,7 +943,7 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) // If there is a connected area to be drawn if (!e.ConnectedArea.IsEmpty) { - using SolidBrush excludeBrush = new(KCT.ToolStripDropDownBackground); + using SolidBrush excludeBrush = new SolidBrush(KCT.ToolStripDropDownBackground); e.Graphics.FillRectangle(excludeBrush, e.ConnectedArea); } @@ -952,12 +952,12 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) insidePath = CreateInsideBorderPath(e.AffectedBounds, e.ConnectedArea, _cutContextMenu), clipPath = CreateClipBorderPath(e.AffectedBounds, e.ConnectedArea, _cutContextMenu); // Create the different pen colors we need - using Pen borderPen = new(KCT.MenuBorder), - insidePen = new(KCT.ToolStripDropDownBackground); + using Pen borderPen = new Pen(KCT.MenuBorder), + insidePen = new Pen(KCT.ToolStripDropDownBackground); // Clip all drawing to within the border path - using Clipping clipping = new(e.Graphics, clipPath); + using Clipping clipping = new Clipping(e.Graphics, clipPath); // Drawing with anti aliasing to create smoother appearance - using (AntiAlias aa = new(e.Graphics)) + using (AntiAlias aa = new AntiAlias(e.Graphics)) { // Draw the inside area first e.Graphics.DrawPath(insidePen, insidePath); @@ -974,8 +974,8 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) case StatusStrip: { // Draw two lines at top of the status strip - using Pen darkBorder = new(KCT.ToolStripBorder), - lightBorder = new(KCT.SeparatorLight); + using Pen darkBorder = new Pen(KCT.ToolStripBorder), + lightBorder = new Pen(KCT.SeparatorLight); e.Graphics.DrawLine(darkBorder, 0, 0, e.ToolStrip.Width - 1, 0); e.Graphics.DrawLine(lightBorder, 0, 1, e.ToolStrip.Width - 1, 1); break; @@ -1015,7 +1015,7 @@ protected override void OnRenderImageMargin(ToolStripRenderEventArgs e) marginRect.X += _marginInset / 2; } - using Pen marginPen = new(Color.FromArgb(80, KCT.MenuBorder)); + using Pen marginPen = new Pen(Color.FromArgb(80, KCT.MenuBorder)); if (!rtl) { e.Graphics.DrawLine(marginPen, marginRect.Right, marginRect.Top, marginRect.Right, marginRect.Bottom); @@ -1155,7 +1155,7 @@ private void DrawGradientToolSplitItem(Graphics? g, GradientItemColors colorsSplit) { // Create entire area and just the drop button area rectangles - Rectangle backRect = new(Point.Empty, splitButton.Bounds.Size); + Rectangle backRect = new Rectangle(Point.Empty, splitButton.Bounds.Size); Rectangle backRectDrop = splitButton.DropDownButtonBounds; // Cannot paint zero sized areas @@ -1193,11 +1193,12 @@ private void DrawGradientToolSplitItem(Graphics? g, colorsDrop.DrawBack(g, backRectDrop); // Draw the split line between the areas - using (LinearGradientBrush splitBrush = new(new Rectangle(backRect.X + splitOffset, backRect.Top, 1, backRect.Height + 1), - colorsSplit.Border1, colorsSplit.Border2, 90f)) + using (LinearGradientBrush splitBrush = new LinearGradientBrush( + new Rectangle(backRect.X + splitOffset, backRect.Top, 1, backRect.Height + 1), + colorsSplit.Border1, colorsSplit.Border2, 90f)) { // Convert the brush to a pen for DrawPath call - using (Pen splitPen = new(splitBrush)) + using (Pen splitPen = new Pen(splitBrush)) { g.DrawLine(splitPen, backRect.X + splitOffset, backRect.Top + 1, backRect.X + splitOffset, backRect.Bottom - 1); } @@ -1211,22 +1212,22 @@ private void DrawGradientToolSplitItem(Graphics? g, private void DrawContextMenuHeader(Graphics? g, ToolStripItem item) { // Get the rectangle that is the items area - Rectangle itemRect = new(Point.Empty, item.Bounds.Size); + Rectangle itemRect = new Rectangle(Point.Empty, item.Bounds.Size); // Create border and clipping paths using GraphicsPath borderPath = CreateBorderPath(itemRect, _cutHeaderMenu), insidePath = CreateInsideBorderPath(itemRect, _cutHeaderMenu), clipPath = CreateClipBorderPath(itemRect, _cutHeaderMenu); // Clip all drawing to within the border path - using Clipping clipping = new(g, clipPath); + using Clipping clipping = new Clipping(g, clipPath); // Draw the entire background area first - using (SolidBrush backBrush = new(KCT.ToolStripDropDownBackground)) + using (SolidBrush backBrush = new SolidBrush(KCT.ToolStripDropDownBackground)) { g.FillPath(backBrush, borderPath); } // Draw the border - using (Pen borderPen = new(KCT.MenuBorder)) + using (Pen borderPen = new Pen(KCT.MenuBorder)) { g.DrawPath(borderPen, borderPath); } @@ -1283,7 +1284,7 @@ private void DrawGradientContextMenuItem(Graphics? g, GradientItemColors colors) { // Do we need to draw with separator on the opposite edge? - Rectangle backRect = new(2, 0, item.Bounds.Width - 3, item.Bounds.Height); + Rectangle backRect = new Rectangle(2, 0, item.Bounds.Width - 3, item.Bounds.Height); // Perform actual drawing into the background colors.DrawItem(g, backRect); @@ -1309,7 +1310,7 @@ private void DrawContextMenuSeparator(Graphics g, var t = rect.Y; var b = rect.Bottom; - using Pen marginPen = new(Color.FromArgb(80, KCT.MenuBorder)); + using Pen marginPen = new Pen(Color.FromArgb(80, KCT.MenuBorder)); marginPen.DashPattern = new float[] { 2, 2 }; g.DrawLine(marginPen, l, t, l, b); } @@ -1319,7 +1320,7 @@ private void DrawContextMenuSeparator(Graphics g, var l = rect.X + (rtl ? 0 : horizontalInset); var r = rect.Right - (rtl ? horizontalInset : 0); - using Pen marginPen = new(Color.FromArgb(80, KCT.MenuBorder)); + using Pen marginPen = new Pen(Color.FromArgb(80, KCT.MenuBorder)); marginPen.DashPattern = new float[] { 2, 2 }; g.DrawLine(marginPen, l, y, r, y); } @@ -1333,7 +1334,7 @@ private void DrawToolStripSeparator(Graphics g, int horizontalInset, bool rtl) { - RectangleF boundsF = new(rect.X, rect.Y, rect.Width, rect.Height); + RectangleF boundsF = new RectangleF(rect.X, rect.Y, rect.Width, rect.Height); if (vertical) { @@ -1341,8 +1342,9 @@ private void DrawToolStripSeparator(Graphics g, var t = rect.Y; // Draw vertical lines centered - using LinearGradientBrush lightBrush = new(boundsF, Color.Transparent, lightColor, 90), - darkBrush = new(boundsF, Color.Transparent, darkColor, 90); + using LinearGradientBrush lightBrush = + new LinearGradientBrush(boundsF, Color.Transparent, lightColor, 90), + darkBrush = new LinearGradientBrush(boundsF, Color.Transparent, darkColor, 90); lightBrush.Blend = _separatorLightBlend; darkBrush.Blend = _separatorDarkBlend; g.FillRectangle(lightBrush, l - 1, t, 3, rect.Height); @@ -1354,8 +1356,9 @@ private void DrawToolStripSeparator(Graphics g, var t = rect.Height / 2; // Draw horizontal lines centered - using LinearGradientBrush lightBrush = new(boundsF, Color.Transparent, lightColor, 0f), - darkBrush = new(boundsF, Color.Transparent, darkColor, 0f); + using LinearGradientBrush lightBrush = + new LinearGradientBrush(boundsF, Color.Transparent, lightColor, 0f), + darkBrush = new LinearGradientBrush(boundsF, Color.Transparent, darkColor, 0f); lightBrush.Blend = _separatorLightBlend; darkBrush.Blend = _separatorDarkBlend; g.FillRectangle(lightBrush, l, t - 1, rect.Width, 3); @@ -1436,7 +1439,7 @@ private static GraphicsPath CreateBorderPath(Rectangle rect, pts.Add(new PointF(l, y0)); // Create path using a simple set of lines that cut the corner - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); // Add a line between each set of points for (var i = 1; i < pts.Count; i++) @@ -1457,7 +1460,7 @@ private static GraphicsPath CreateBorderPath(Rectangle rect, float cut) rect.Height--; // Create path using a simple set of lines that cut the corner - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(rect.Left + cut, rect.Top, rect.Right - cut, rect.Top); path.AddLine(rect.Right - cut, rect.Top, rect.Right, rect.Top + cut); path.AddLine(rect.Right, rect.Top + cut, rect.Right, rect.Bottom - cut); @@ -1537,7 +1540,7 @@ private GraphicsPath CreateArrowPath(ToolStripItem item, } // Create triangle using a series of lines - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); switch (direction) { @@ -1572,7 +1575,7 @@ private GraphicsPath CreateTickPath(Rectangle rect) var x = rect.X + rect.Width / 2; var y = rect.Y + rect.Height / 2; - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(x - 4, y, x - 2, y + 4); path.AddLine(x - 2, y + 4, x + 3, y - 5); return path; @@ -1584,7 +1587,7 @@ private GraphicsPath CreateIndeterminatePath(Rectangle rect) var x = rect.X + rect.Width / 2; var y = rect.Y + rect.Height / 2; - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(x - 3, y, x, y - 3); path.AddLine(x, y - 3, x + 3, y); path.AddLine(x + 3, y, x, y + 3); diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonProfessionalRenderer.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonProfessionalRenderer.cs index 80f43eb31..c9bcd7fdf 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonProfessionalRenderer.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonProfessionalRenderer.cs @@ -59,7 +59,7 @@ protected override void OnRenderItemImage(ToolStripItemImageRenderEventArgs e) if (mcs != null) { // Get the min/restore/close internal menu items - Type? mcsType = mcs.GetType(); + Type mcsType = mcs.GetType(); FieldInfo? fiM = mcsType.GetField("minimize", BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.GetField)!; FieldInfo? fiR = mcsType.GetField("restore", BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.GetField)!; FieldInfo? fiC = mcsType.GetField("close", BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.GetField)!; @@ -97,9 +97,9 @@ protected override void OnRenderItemImage(ToolStripItemImageRenderEventArgs e) // Finally we actually have an image to draw! if (paletteImage != null) { - using ImageAttributes? attribs = new(); + using ImageAttributes attribs = new ImageAttributes(); // Setup mapping to make required color transparent - ColorMap? remap = new() + ColorMap remap = new ColorMap { OldColor = transparentColor, NewColor = Color.Transparent diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonSparkleRenderer.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonSparkleRenderer.cs index b2cb7eae9..975a7be6d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonSparkleRenderer.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/KryptonSparkleRenderer.cs @@ -83,8 +83,12 @@ public GradientItemColors(Color border, private const float CUT_TOOL_ITEM_MENU = 1.0f; private static readonly Blend _statusStripBlend; private static readonly Color _disabled = Color.FromArgb(167, 167, 167); - private static readonly LinearItemColors _disabledLinearItem = new(Color.FromArgb(128, 220, 220, 220), Color.FromArgb(128, 190, 190, 190), Color.FromArgb(128, 172, 172, 172)); - private static readonly GradientItemColors? _disabledGradientItem = new(Color.FromArgb(212, 212, 212), Color.FromArgb(235, 235, 235), Color.FromArgb(235, 235, 235)); + private static readonly LinearItemColors _disabledLinearItem = + new LinearItemColors(Color.FromArgb(128, 220, 220, 220), Color.FromArgb(128, 190, 190, 190), + Color.FromArgb(128, 172, 172, 172)); + private static readonly GradientItemColors? _disabledGradientItem = + new GradientItemColors(Color.FromArgb(212, 212, 212), Color.FromArgb(235, 235, 235), + Color.FromArgb(235, 235, 235)); private static readonly Image? _contextMenuChecked = GenericSparkleImageResources.SparkleGrayChecked; private static readonly Image? _contextMenuIndeterminate = SparkleRadioButtonImageResources.RadioButtonSparkleGrayIndeterminate; #endregion @@ -190,7 +194,7 @@ protected override void OnRenderArrow(ToolStripArrowRenderEventArgs e) }; // Draw the actual arrow using a gradient - using LinearGradientBrush arrowBrush = new(boundsF, color1, color2, angle); + using LinearGradientBrush arrowBrush = new LinearGradientBrush(boundsF, color1, color2, angle); e.Graphics.FillPath(arrowBrush, arrowPath); } } @@ -257,7 +261,7 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) } // Drawing with anti aliasing to create smoother appearance - using AntiAlias aa = new(e.Graphics); + using AntiAlias aa = new AntiAlias(e.Graphics); // Create border path for the check box using GraphicsPath borderPath = CreateBorderPath(checkBox, CUT_MENU_ITEM_BACK); Color colorFill = KCT.CheckBackground; @@ -269,13 +273,13 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) } // Fill the background in a solid color - using (SolidBrush fillBrush = new(colorFill)) + using (SolidBrush fillBrush = new SolidBrush(colorFill)) { e.Graphics.FillPath(fillBrush, borderPath); } // Draw the border around the check box - using (Pen borderPen = new(colorBorder)) + using (Pen borderPen = new Pen(colorBorder)) { e.Graphics.DrawPath(borderPen, borderPath); } @@ -304,10 +308,8 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) // Draw the image centered in the available space var xOffset = e.ImageRectangle.Width - drawImage.Width; var yOffset = e.ImageRectangle.Height - drawImage.Height; - Rectangle drawRect = new(e.ImageRectangle.X + xOffset, - e.ImageRectangle.Y + yOffset, - drawImage.Width, - drawImage.Height); + Rectangle drawRect = new Rectangle(e.ImageRectangle.X + xOffset, e.ImageRectangle.Y + yOffset, + drawImage.Width, drawImage.Height); // Do we need to draw disabled? if (e.Item.Enabled) @@ -316,7 +318,7 @@ protected override void OnRenderItemCheck(ToolStripItemImageRenderEventArgs e) } else { - using ImageAttributes attribs = new(); + using ImageAttributes attribs = new ImageAttributes(); attribs.SetColorMatrix(CommonHelper.MatrixDisabled); // Draw using the disabled matrix to make it look disabled @@ -386,7 +388,8 @@ protected override void OnRenderItemText(ToolStripItemTextRenderEventArgs e) } else { - using GraphicsTextHint clearTypeGridFit = new(e.Graphics, TextRenderingHint.ClearTypeGridFit); + using GraphicsTextHint clearTypeGridFit = + new GraphicsTextHint(e.Graphics, TextRenderingHint.ClearTypeGridFit); base.OnRenderItemText(e); } } @@ -415,7 +418,7 @@ protected override void OnRenderItemImage(ToolStripItemImageRenderEventArgs e) } else { - using ImageAttributes attribs = new(); + using ImageAttributes attribs = new ImageAttributes(); attribs.SetColorMatrix(CommonHelper.MatrixDisabled); // Draw using the disabled matrix to make it look disabled @@ -524,8 +527,8 @@ protected override void OnRenderSplitButtonBackground(ToolStripItemRenderEventAr /// An ToolStripRenderEventArgs containing the event data. protected override void OnRenderStatusStripSizingGrip(ToolStripRenderEventArgs e) { - using SolidBrush darkBrush = new(KCT.GripDark), - lightBrush = new(KCT.GripLight); + using SolidBrush darkBrush = new SolidBrush(KCT.GripDark), + lightBrush = new SolidBrush(KCT.GripLight); // Do we need to invert the drawing edge? var rtl = e.ToolStrip.RightToLeft == RightToLeft.Yes; @@ -568,10 +571,8 @@ protected override void OnRenderToolStripContentPanelBackground(ToolStripContent // Cannot paint a zero sized area if (e.ToolStripContentPanel is { Width: > 0, Height: > 0 }) { - using LinearGradientBrush backBrush = new(e.ToolStripContentPanel.ClientRectangle, - KCT.ToolStripContentPanelGradientEnd, - KCT.ToolStripContentPanelGradientBegin, - 90f); + using LinearGradientBrush backBrush = new LinearGradientBrush(e.ToolStripContentPanel.ClientRectangle, + KCT.ToolStripContentPanelGradientEnd, KCT.ToolStripContentPanelGradientBegin, 90f); e.Graphics.FillRectangle(backBrush, e.ToolStripContentPanel.ClientRectangle); } } @@ -589,8 +590,8 @@ protected override void OnRenderSeparator(ToolStripSeparatorRenderEventArgs e) case ContextMenuStrip _: case ToolStripDropDownMenu _: // Create the light and dark line pens - using (Pen lightPen = new(KCT.ImageMarginGradientEnd), - darkPen = new(KCT.ImageMarginGradientMiddle)) + using (Pen lightPen = new Pen(KCT.ImageMarginGradientEnd), + darkPen = new Pen(KCT.ImageMarginGradientMiddle)) { DrawSeparator(e.Graphics, e.Vertical, e.Item.Bounds, lightPen, darkPen, SEPARATOR_INSET, @@ -599,8 +600,8 @@ protected override void OnRenderSeparator(ToolStripSeparatorRenderEventArgs e) break; case StatusStrip _: // Create the light and dark line pens - using (Pen lightPen = new(KCT.SeparatorLight), - darkPen = new(KCT.SeparatorDark)) + using (Pen lightPen = new Pen(KCT.SeparatorLight), + darkPen = new Pen(KCT.SeparatorDark)) { DrawSeparator(e.Graphics, e.Vertical, e.Item.Bounds, lightPen, darkPen, 0, false); @@ -635,10 +636,10 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) clipPath = CreateClipBorderPath(e.AffectedBounds, CUT_CONTEXT_MENU)) { // Clip all drawing to within the border path - using (Clipping clipping = new(e.Graphics, clipPath)) + using (Clipping clipping = new Clipping(e.Graphics, clipPath)) { // Create the background brush - using (SolidBrush backBrush = new(KCT.ToolStripDropDownBackground)) + using (SolidBrush backBrush = new SolidBrush(KCT.ToolStripDropDownBackground)) { e.Graphics.FillPath(backBrush, borderPath); } @@ -647,7 +648,7 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) break; case StatusStrip _: // Create rectangle that covers the status strip area - RectangleF backRect = new(0, 0, e.ToolStrip.Width, e.ToolStrip.Height); + RectangleF backRect = new RectangleF(0, 0, e.ToolStrip.Width, e.ToolStrip.Height); Form? owner = e.ToolStrip.FindForm(); @@ -677,15 +678,16 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) if (backRect is { Width: > 0, Height: > 0 }) { // Draw entire background - using (SolidBrush backBrush = new(KCT.MenuStripGradientBegin)) + using (SolidBrush backBrush = new SolidBrush(KCT.MenuStripGradientBegin)) { e.Graphics.FillRectangle(backBrush, backRect); } // Create path for the rounded bottom edges - using (GraphicsPath innerPath = new()) + using (GraphicsPath innerPath = new GraphicsPath()) { - RectangleF innerRectF = new(backRect.X + 2, backRect.Y, backRect.Width - 4, backRect.Height - 2); + RectangleF innerRectF = new RectangleF(backRect.X + 2, backRect.Y, backRect.Width - 4, + backRect.Height - 2); innerPath.AddLine(innerRectF.Right - 1, innerRectF.Top, innerRectF.Right - 1, innerRectF.Bottom - 7); innerPath.AddArc(innerRectF.Right - 7, innerRectF.Bottom - 7, 6, 6, 0f, 90f); @@ -696,15 +698,14 @@ protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e) innerPath.CloseFigure(); // Fill with a gradient brush - using (LinearGradientBrush innerBrush = new(new Rectangle((int)backRect.X - 1, (int)backRect.Y - 1, - (int)backRect.Width + 2, (int)backRect.Height + 1), - KCT.StatusStripGradientBegin, - KCT.StatusStripGradientEnd, - 90f)) + using (LinearGradientBrush innerBrush = new LinearGradientBrush( + new Rectangle((int)backRect.X - 1, (int)backRect.Y - 1, (int)backRect.Width + 2, + (int)backRect.Height + 1), KCT.StatusStripGradientBegin, + KCT.StatusStripGradientEnd, 90f)) { innerBrush.Blend = _statusStripBlend; - using (AntiAlias aa = new(e.Graphics)) + using (AntiAlias aa = new AntiAlias(e.Graphics)) { e.Graphics.FillPath(innerBrush, innerPath); } @@ -748,14 +749,14 @@ protected override void OnRenderImageMargin(ToolStripRenderEventArgs e) } // Draw the entire margine area in a solid color - using (SolidBrush backBrush = new(KCT.ImageMarginGradientBegin)) + using (SolidBrush backBrush = new SolidBrush(KCT.ImageMarginGradientBegin)) { e.Graphics.FillRectangle(backBrush, marginRect); } // Create the light and dark line pens - using (Pen lightPen = new(KCT.ImageMarginGradientEnd), - darkPen = new(KCT.ImageMarginGradientMiddle)) + using (Pen lightPen = new Pen(KCT.ImageMarginGradientEnd), + darkPen = new Pen(KCT.ImageMarginGradientMiddle)) { if (!rtl) { @@ -790,7 +791,7 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) // If there is a connected area to be drawn if (!e.ConnectedArea.IsEmpty) { - using SolidBrush excludeBrush = new(KCT.ToolStripDropDownBackground); + using SolidBrush excludeBrush = new SolidBrush(KCT.ToolStripDropDownBackground); e.Graphics.FillRectangle(excludeBrush, e.ConnectedArea); } @@ -799,12 +800,12 @@ protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) insidePath = CreateInsideBorderPath(e.AffectedBounds, e.ConnectedArea, CUT_CONTEXT_MENU), clipPath = CreateClipBorderPath(e.AffectedBounds, e.ConnectedArea, CUT_CONTEXT_MENU); // Create the different pen colors we need - using Pen borderPen = new(KCT.MenuBorder), - insidePen = new(KCT.ToolStripDropDownBackground); + using Pen borderPen = new Pen(KCT.MenuBorder), + insidePen = new Pen(KCT.ToolStripDropDownBackground); // Clip all drawing to within the border path - using Clipping clipping = new(e.Graphics, clipPath); + using Clipping clipping = new Clipping(e.Graphics, clipPath); // Drawing with anti aliasing to create smoother appearance - using (AntiAlias aa = new(e.Graphics)) + using (AntiAlias aa = new AntiAlias(e.Graphics)) { // Draw the inside area first e.Graphics.DrawPath(insidePen, insidePath); @@ -951,7 +952,7 @@ private void DrawGradientToolSplitItem(Graphics? g, GradientItemColors? colorsSplit) { // Create entire area and just the drop button area rectangles - Rectangle backRect = new(Point.Empty, splitButton.Bounds.Size); + Rectangle backRect = new Rectangle(Point.Empty, splitButton.Bounds.Size); Rectangle backRectDrop = splitButton.DropDownButtonBounds; // Cannot paint zero sized areas @@ -981,13 +982,10 @@ private void DrawGradientToolSplitItem(Graphics? g, // Draw the split line between the areas if (colorsSplit != null) { - using (Pen splitPen = new(colorsSplit.Border)) + using (Pen splitPen = new Pen(colorsSplit.Border)) { - if (g != null) - { - g.DrawLine(splitPen, backRect.X + splitOffset, backRect.Top + 1, backRect.X + splitOffset, - backRect.Bottom - 1); - } + g?.DrawLine(splitPen, backRect.X + splitOffset, backRect.Top + 1, backRect.X + splitOffset, + backRect.Bottom - 1); } } @@ -999,30 +997,24 @@ private void DrawGradientToolSplitItem(Graphics? g, private void DrawContextMenuHeader(Graphics? g, ToolStripItem item) { // Get the rectangle that is the items area - Rectangle itemRect = new(Point.Empty, item.Bounds.Size); + Rectangle itemRect = new Rectangle(Point.Empty, item.Bounds.Size); // Create border and clipping paths using GraphicsPath borderPath = CreateBorderPath(itemRect, CUT_TOOL_ITEM_MENU), insidePath = CreateInsideBorderPath(itemRect, CUT_TOOL_ITEM_MENU), clipPath = CreateClipBorderPath(itemRect, CUT_TOOL_ITEM_MENU); // Clip all drawing to within the border path - using Clipping clipping = new(g, clipPath); + using Clipping clipping = new Clipping(g, clipPath); // Draw the entire background area first - using (SolidBrush backBrush = new(KCT.ToolStripDropDownBackground)) + using (SolidBrush backBrush = new SolidBrush(KCT.ToolStripDropDownBackground)) { - if (g != null) - { - g.FillPath(backBrush, borderPath); - } + g?.FillPath(backBrush, borderPath); } // Draw the border - using (Pen borderPen = new(KCT.MenuBorder)) + using (Pen borderPen = new Pen(KCT.MenuBorder)) { - if (g != null) - { - g.DrawPath(borderPen, borderPath); - } + g?.DrawPath(borderPen, borderPath); } } @@ -1077,7 +1069,7 @@ private void DrawLinearContextMenuItem(Graphics? g, LinearItemColors colors) { // Do we need to draw with separator on the opposite edge? - Rectangle backRect = new(2, 0, item.Bounds.Width - 3, item.Bounds.Height); + Rectangle backRect = new Rectangle(2, 0, item.Bounds.Width - 3, item.Bounds.Height); // Perform actual drawing into the background DrawLinearGradientItem(g, backRect, colors); @@ -1105,11 +1097,8 @@ private static void DrawLinearGradientBack(Graphics? g, // Reduce rect draw drawing inside the border backRect.Inflate(-1, -1); - using LinearGradientBrush backBrush = new(backRect, colors.Fill1, colors.Fill2, 90f); - if (g != null) - { - g.FillRectangle(backBrush, backRect); - } + using LinearGradientBrush backBrush = new LinearGradientBrush(backRect, colors.Fill1, colors.Fill2, 90f); + g?.FillRectangle(backBrush, backRect); } private static void DrawLinearGradientBorder(Graphics? g, @@ -1117,13 +1106,10 @@ private static void DrawLinearGradientBorder(Graphics? g, LinearItemColors colors) { // Drawing with anti aliasing to create smoother appearance - using AntiAlias aa = new(g); - using Pen borderPen = new(colors.Border); + using AntiAlias aa = new AntiAlias(g); + using Pen borderPen = new Pen(colors.Border); using GraphicsPath borderPath = CreateBorderPath(backRect, CUT_MENU_ITEM_BACK); - if (g != null) - { - g.DrawPath(borderPen, borderPath); - } + g?.DrawPath(borderPen, borderPath); } private void DrawGradientContextMenuItem(Graphics? g, @@ -1131,7 +1117,7 @@ private void DrawGradientContextMenuItem(Graphics? g, GradientItemColors? colors) { // Do we need to draw with separator on the opposite edge? - Rectangle backRect = new(2, 0, item.Bounds.Width - 3, item.Bounds.Height); + Rectangle backRect = new Rectangle(2, 0, item.Bounds.Width - 3, item.Bounds.Height); // Perform actual drawing into the background DrawGradientItem(g, backRect, colors); @@ -1159,7 +1145,7 @@ private static void DrawGradientBack(Graphics? g, backRect.X++; backRect.Width -= 1; - using RenderContext context = new(null, g, backRect, null); + using RenderContext context = new RenderContext(null, g, backRect, null); using GraphicsPath backPath = CreateBorderPath(backRect, CUT_MENU_ITEM_BACK); backRect.Width -= 1; backRect.Height -= 1; @@ -1177,14 +1163,14 @@ private static void DrawSolidBorder(Graphics? g, GradientItemColors? colors) { // Drawing with anti aliasing to create smoother appearance - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); Rectangle backRectI = backRect; backRectI.Inflate(1, 1); // Use solid color for the border if (colors != null && g != null) { - using Pen borderPen = new(colors.Border); + using Pen borderPen = new Pen(colors.Border); using GraphicsPath borderPath = CreateBorderPath(backRect, CUT_MENU_ITEM_BACK); g.DrawPath(borderPen, borderPath); } @@ -1303,7 +1289,7 @@ private static GraphicsPath CreateBorderPath(Rectangle rect, pts.Add(new PointF(l, y0)); // Create path using a simple set of lines that cut the corner - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); // Add a line between each set of points for (var i = 1; i < pts.Count; i++) @@ -1324,7 +1310,7 @@ private static GraphicsPath CreateBorderPath(Rectangle rect, float cut) rect.Height--; // Create path using a simple set of lines that cut the corner - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(rect.Left + cut, rect.Top, rect.Right - cut, rect.Top); path.AddLine(rect.Right - cut, rect.Top, rect.Right, rect.Top + cut); path.AddLine(rect.Right, rect.Top + cut, rect.Right, rect.Bottom - cut); @@ -1404,7 +1390,7 @@ private static GraphicsPath CreateArrowPath(ToolStripItem item, } // Create triangle using a series of lines - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); switch (direction) { @@ -1439,7 +1425,7 @@ private static GraphicsPath CreateTickPath(Rectangle rect) var x = rect.X + (rect.Width / 2); var y = rect.Y + (rect.Height / 2); - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(x - 5, y - 1, x - 2, y + 4); path.AddLine(x - 2, y + 4, x + 3, y - 5); return path; @@ -1451,7 +1437,7 @@ private static GraphicsPath CreateIndeterminatePath(Rectangle rect) var x = rect.X + (((float)rect.Width - 6) / 2); var y = rect.Y + (((float)rect.Height - 6) / 2); - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddEllipse(x, y, 6f, 6f); return path; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderBase.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderBase.cs index e78ba3093..1d23aa39c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderBase.cs @@ -26,63 +26,55 @@ public abstract class RenderBase : Component, IRenderGlyph { #region Static Fields - private static readonly object _threadLock = new(); - - private static readonly ColorMatrix _matrixGrayScale = new(new[] - {new[]{0.3f,0.3f,0.3f,0,0}, - new[]{0.59f,0.59f,0.59f,0,0}, - new[]{0.11f,0.11f,0.11f,0,0}, - new float[]{0,0,0,1,0}, - new float[]{0,0,0,0,1}}); - - private static readonly ColorMatrix _matrixGrayScaleRed = new(new[] - {new float[]{1,0,0,0,0}, - new[]{0,0.59f,0.59f,0,0}, - new[]{0,0.11f,0.11f,0,0}, - new float[]{0,0,0,1,0}, - new float[]{0,0,0,0,1}}); - - private static readonly ColorMatrix _matrixGrayScaleGreen = new(new[] - {new[]{0.3f,0,0.3f,0,0}, - new float[]{0,1,0,0,0}, - new[]{0.11f,0,0.11f,0,0}, - new float[]{0,0,0,1,0}, - new float[]{0,0,0,0,1}}); - - private static readonly ColorMatrix _matrixGrayScaleBlue = new(new[] - {new[]{0.3f,0.3f,0,0,0}, - new[]{0.59f,0.59f,0,0,0}, - new float[]{0,0,1,0,0}, - new float[]{0,0,0,1,0}, - new float[]{0,0,0,0,1}}); - - private static readonly ColorMatrix _matrixLight = new(new[] - {new float[]{1,0,0,0,0}, - new float[]{0,1,0,0,0}, - new float[]{0,0,1,0,0}, - new float[]{0,0,0,1,0}, - new[]{0.1f,0.1f,0.1f,0,1}}); - - private static readonly ColorMatrix _matrixLightLight = new(new[] - {new float[]{1,0,0,0,0}, - new float[]{0,1,0,0,0}, - new float[]{0,0,1,0,0}, - new float[]{0,0,0,1,0}, - new[]{0.2f,0.2f,0.2f,0,1}}); - - private static readonly ColorMatrix _matrixDark = new(new[] - {new float[]{1,0,0,0,0}, - new float[]{0,1,0,0,0}, - new float[]{0,0,1,0,0}, - new float[]{0,0,0,1,0}, - new[]{-0.1f,-0.1f,-0.1f,0,1}}); - - private static readonly ColorMatrix _matrixDarkDark = new(new[] - {new float[]{1,0,0,0,0}, - new float[]{0,1,0,0,0}, - new float[]{0,0,1,0,0}, - new float[]{0,0,0,1,0}, - new[]{-0.25f,-0.25f,-0.25f,0,1}}); + private static readonly object _threadLock = new object(); + + private static readonly ColorMatrix _matrixGrayScale = new ColorMatrix(new[] + { + new[] { 0.3f, 0.3f, 0.3f, 0, 0 }, new[] { 0.59f, 0.59f, 0.59f, 0, 0 }, + new[] { 0.11f, 0.11f, 0.11f, 0, 0 }, new float[] { 0, 0, 0, 1, 0 }, new float[] { 0, 0, 0, 0, 1 } + }); + + private static readonly ColorMatrix _matrixGrayScaleRed = new ColorMatrix(new[] + { + new float[] { 1, 0, 0, 0, 0 }, new[] { 0, 0.59f, 0.59f, 0, 0 }, new[] { 0, 0.11f, 0.11f, 0, 0 }, + new float[] { 0, 0, 0, 1, 0 }, new float[] { 0, 0, 0, 0, 1 } + }); + + private static readonly ColorMatrix _matrixGrayScaleGreen = new ColorMatrix(new[] + { + new[] { 0.3f, 0, 0.3f, 0, 0 }, new float[] { 0, 1, 0, 0, 0 }, new[] { 0.11f, 0, 0.11f, 0, 0 }, + new float[] { 0, 0, 0, 1, 0 }, new float[] { 0, 0, 0, 0, 1 } + }); + + private static readonly ColorMatrix _matrixGrayScaleBlue = new ColorMatrix(new[] + { + new[] { 0.3f, 0.3f, 0, 0, 0 }, new[] { 0.59f, 0.59f, 0, 0, 0 }, new float[] { 0, 0, 1, 0, 0 }, + new float[] { 0, 0, 0, 1, 0 }, new float[] { 0, 0, 0, 0, 1 } + }); + + private static readonly ColorMatrix _matrixLight = new ColorMatrix(new[] + { + new float[] { 1, 0, 0, 0, 0 }, new float[] { 0, 1, 0, 0, 0 }, new float[] { 0, 0, 1, 0, 0 }, + new float[] { 0, 0, 0, 1, 0 }, new[] { 0.1f, 0.1f, 0.1f, 0, 1 } + }); + + private static readonly ColorMatrix _matrixLightLight = new ColorMatrix(new[] + { + new float[] { 1, 0, 0, 0, 0 }, new float[] { 0, 1, 0, 0, 0 }, new float[] { 0, 0, 1, 0, 0 }, + new float[] { 0, 0, 0, 1, 0 }, new[] { 0.2f, 0.2f, 0.2f, 0, 1 } + }); + + private static readonly ColorMatrix _matrixDark = new ColorMatrix(new[] + { + new float[] { 1, 0, 0, 0, 0 }, new float[] { 0, 1, 0, 0, 0 }, new float[] { 0, 0, 1, 0, 0 }, + new float[] { 0, 0, 0, 1, 0 }, new[] { -0.1f, -0.1f, -0.1f, 0, 1 } + }); + + private static readonly ColorMatrix _matrixDarkDark = new ColorMatrix(new[] + { + new float[] { 1, 0, 0, 0, 0 }, new float[] { 0, 1, 0, 0, 0 }, new float[] { 0, 0, 1, 0, 0 }, + new float[] { 0, 0, 0, 1, 0 }, new[] { -0.25f, -0.25f, -0.25f, 0, 1 } + }); #endregion #region IRenderer @@ -964,7 +956,7 @@ protected static void DrawImageHelper([DisallowNull] ViewContext context, } // Use image attributes class to modify image drawing for effects - ImageAttributes attribs = new(); + ImageAttributes attribs = new ImageAttributes(); switch (effect) { @@ -1010,7 +1002,7 @@ protected static void DrawImageHelper([DisallowNull] ViewContext context, // Create remapping for the transparent color if (remapTransparent != Color.Empty) { - ColorMap remap = new() + ColorMap remap = new ColorMap { OldColor = remapTransparent, NewColor = Color.Transparent @@ -1021,7 +1013,7 @@ protected static void DrawImageHelper([DisallowNull] ViewContext context, // Create remapping from source to target colors if ((remapColor != Color.Empty) && (remapNew != Color.Empty)) { - ColorMap remap = new() + ColorMap remap = new ColorMap { OldColor = remapColor, NewColor = remapNew diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderExpertHelpers.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderExpertHelpers.cs index 64f171d22..cb2e6779b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderExpertHelpers.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderExpertHelpers.cs @@ -60,7 +60,7 @@ static RenderExpertHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); MementoDouble? cache; if (memento is MementoDouble mementoDouble) @@ -103,7 +103,7 @@ static RenderExpertHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Cannot draw a zero length rectangle if (rect is { Width: > 0, Height: > 0 }) { @@ -142,7 +142,7 @@ static RenderExpertHelpers() cache.Brush3 = new SolidBrush(backColor1); } - using AntiAlias aa = new(context.Graphics); + using AntiAlias aa = new AntiAlias(context.Graphics); context.Graphics.FillRectangle(cache.Brush3, rect); context.Graphics.FillPath(cache.Brush1, cache.Path1); context.Graphics.FillPath(cache.Brush2, cache.Path2); @@ -170,7 +170,7 @@ static RenderExpertHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Draw the expert background which is gradient with highlight at bottom return DrawBackExpert(rect, backColor1, backColor2, orientation, context.Graphics, memento, true, false); } @@ -193,7 +193,7 @@ static RenderExpertHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); MementoDouble? cache; if (memento is MementoDouble mementoDouble) @@ -238,7 +238,7 @@ static RenderExpertHelpers() IDisposable? memento, bool light) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Cannot draw a zero length rectangle if (rect is { Width: > 0, Height: > 0 }) { @@ -421,7 +421,8 @@ private static IDisposable DrawBackSolid(RectangleF drawRect, } // Create rectangle that covers the enter area - RectangleF gradientRect = new(drawRect.X - 1, drawRect.Y - 1, drawRect.Width + 2, drawRect.Height + 2); + RectangleF gradientRect = new RectangleF(drawRect.X - 1, drawRect.Y - 1, drawRect.Width + 2, + drawRect.Height + 2); // Cannot draw a zero length rectangle if (gradientRect is { Width: > 0, Height: > 0 }) @@ -473,7 +474,7 @@ private static IDisposable DrawBackSolid(RectangleF drawRect, if (cache.EntireBrush != null) { - using Clipping clip = new(g, cache.ClipPath); + using Clipping clip = new Clipping(g, cache.ClipPath); g.FillRectangle(cache.EntireBrush, cache.DrawRect); g.FillPath(cache.InsideLighten, cache.EllipsePath); } @@ -489,7 +490,7 @@ private static GraphicsPath CreateBorderPath(Rectangle rect, float cut) rect.Height--; // Create path using a simple set of lines that cut the corner - GraphicsPath path = new(); + GraphicsPath path = new GraphicsPath(); path.AddLine(rect.Left + cut, rect.Top, rect.Right - cut, rect.Top); path.AddLine(rect.Right - cut, rect.Top, rect.Right, rect.Top + cut); path.AddLine(rect.Right, rect.Top + cut, rect.Right, rect.Bottom - cut); diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderGlassHelpers.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderGlassHelpers.cs index 49681da63..5691b831d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderGlassHelpers.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderGlassHelpers.cs @@ -61,7 +61,7 @@ static RenderGlassHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); MementoDouble? cache; if (memento is MementoDouble mementoDouble) @@ -114,7 +114,7 @@ static RenderGlassHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); MementoDouble? cache; if (memento is MementoDouble mementoDouble) @@ -166,7 +166,7 @@ static RenderGlassHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); MementoDouble? cache; if (memento is MementoDouble mementoDouble) @@ -456,7 +456,7 @@ static RenderGlassHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); var generate = true; MementoBackGlassThreeEdge? cache; @@ -528,7 +528,7 @@ static RenderGlassHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Draw the inside area return DrawBackGlassLinear(rect, rect, backColor1, backColor2, @@ -558,7 +558,7 @@ static RenderGlassHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Draw the inside area as a glass effect return DrawBackGlassRadial(rect, backColor1, backColor2, _glassColorTopL, _glassColorBottomL, @@ -584,7 +584,7 @@ static RenderGlassHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Draw the inside areas as a glass effect return DrawBackGlassRadial(rect, backColor1, backColor2, _glassColorTopL, _glassColorBottomL, @@ -610,7 +610,7 @@ static RenderGlassHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Draw the inside areas as a glass effect return DrawBackGlassRadial(rect, backColor1, backColor2, _glassColorTopD, _glassColorBottomD, @@ -636,7 +636,7 @@ static RenderGlassHelpers() GraphicsPath path, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Draw the inside areas as a glass effect return DrawBackGlassRadial(rect, backColor1, backColor2, _glassColorTopD, _glassColorBottomD, @@ -656,7 +656,7 @@ static RenderGlassHelpers() float glassPercent, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); MementoDouble? cache; if (memento is MementoDouble mementoDouble) @@ -672,7 +672,7 @@ static RenderGlassHelpers() } // Get the drawing rectangle for the path - RectangleF drawRect = new(rect.X, rect.Y, rect.Width, rect.Height); + RectangleF drawRect = new RectangleF(rect.X, rect.Y, rect.Width, rect.Height); // Draw the border as a lighter version of the inside cache.First = DrawBackGlassLinear(drawRect, drawRect, @@ -712,7 +712,7 @@ static RenderGlassHelpers() float glassPercent, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); MementoDouble? cache; if (memento is MementoDouble mementoDouble) @@ -728,7 +728,7 @@ static RenderGlassHelpers() } // Get the drawing rectangle for the path - RectangleF drawRect = new(rect.X, rect.Y, rect.Width, rect.Height); + RectangleF drawRect = new RectangleF(rect.X, rect.Y, rect.Width, rect.Height); // Draw the border as a lighter version of the inside cache.First = DrawBackGlassLinear(drawRect, drawRect, @@ -767,7 +767,7 @@ static RenderGlassHelpers() float glassPercent, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); MementoDouble? cache; if (memento is MementoDouble mementoDouble) @@ -811,7 +811,7 @@ static RenderGlassHelpers() float glassPercent, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); MementoTriple? cache; if (memento is MementoTriple triple) @@ -861,7 +861,7 @@ static RenderGlassHelpers() float glassPercent, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); MementoTriple? cache; if (memento is MementoTriple triple) @@ -913,7 +913,7 @@ static RenderGlassHelpers() float glassPercent, IDisposable? memento) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); MementoTriple? cache; if (memento is MementoTriple triple) @@ -1321,7 +1321,8 @@ private static IDisposable DrawBackGlassFade(RectangleF drawRect, cache.Dispose(); // Create gradient rect from the drawing rect - RectangleF gradientRect = new(drawRect.X - 1, drawRect.Y - 1, drawRect.Width + 2, drawRect.Height + 2); + RectangleF gradientRect = new RectangleF(drawRect.X - 1, drawRect.Y - 1, drawRect.Width + 2, + drawRect.Height + 2); // Cannot draw a zero sized rectangle if (gradientRect is { Width: > 0, Height: > 0 }) @@ -1370,7 +1371,8 @@ private static IDisposable DrawBackGlassFade(RectangleF drawRect, } // Create gradient rectangles - RectangleF glassGradientRect = new(glassRect.X - 1, glassRect.Y - 1, glassRect.Width + 2, glassRect.Height + 2); + RectangleF glassGradientRect = new RectangleF(glassRect.X - 1, glassRect.Y - 1, glassRect.Width + 2, + glassRect.Height + 2); // Cannot draw a zero sized rectangle if (glassRect is { Width: > 0, Height: > 0 } && @@ -1477,8 +1479,10 @@ private static IDisposable DrawBackGlassFade(RectangleF drawRect, cache.MainRect = mainRect; // Create gradient rectangles - RectangleF glassGradientRect = new(cache.GlassRect.X - 1, cache.GlassRect.Y - 1, cache.GlassRect.Width + 2, cache.GlassRect.Height + 2); - RectangleF mainGradientRect = new(cache.MainRect.X - 1, cache.MainRect.Y - 1, cache.MainRect.Width + 2, cache.MainRect.Height + 2); + RectangleF glassGradientRect = new RectangleF(cache.GlassRect.X - 1, cache.GlassRect.Y - 1, + cache.GlassRect.Width + 2, cache.GlassRect.Height + 2); + RectangleF mainGradientRect = new RectangleF(cache.MainRect.X - 1, cache.MainRect.Y - 1, + cache.MainRect.Width + 2, cache.MainRect.Height + 2); // Cannot draw a zero length rectangle if (cache.GlassRect is { Width: > 0, Height: > 0 } && @@ -1571,7 +1575,8 @@ private static RectangleF DrawBackGlassBasic(RectangleF drawRect, }; // Gradient rectangle is always a little bigger to prevent tiling at edges - RectangleF glassGradientRect = new(glassRect.X - 1, glassRect.Y - 1, glassRect.Width + 2, glassRect.Height + 2); + RectangleF glassGradientRect = new RectangleF(glassRect.X - 1, glassRect.Y - 1, glassRect.Width + 2, + glassRect.Height + 2); // Cannot draw a zero length rectangle if (glassGradientRect is { Width: > 0, Height: > 0 }) @@ -1628,7 +1633,8 @@ private static IDisposable DrawBackLinear(RectangleF drawRect, cache.Dispose(); // Create rectangle that covers the enter area - RectangleF gradientRect = new(drawRect.X - 1, drawRect.Y - 1, drawRect.Width + 2, drawRect.Height + 2); + RectangleF gradientRect = new RectangleF(drawRect.X - 1, drawRect.Y - 1, drawRect.Width + 2, + drawRect.Height + 2); // Cannot draw a zero length rectangle if (gradientRect is { Width: > 0, Height: > 0 }) @@ -1725,7 +1731,8 @@ private static IDisposable DrawBackDarkEdge(RectangleF drawRect, } // Create rectangle that covers the enter area - RectangleF gradientRect = new(drawRect.X - 0.5f, drawRect.Y - 0.5f, drawRect.Width + 1, drawRect.Height + 1); + RectangleF gradientRect = new RectangleF(drawRect.X - 0.5f, drawRect.Y - 0.5f, + drawRect.Width + 1, drawRect.Height + 1); // Cannot draw a zero length rectangle if (gradientRect is { Width: > 0, Height: > 0 }) diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderMicrosoft365.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderMicrosoft365.cs index 5cee6d11a..94f8d7915 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderMicrosoft365.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderMicrosoft365.cs @@ -53,7 +53,7 @@ public override void DrawRibbonClusterEdge(PaletteRibbonShape shape, Color borderColour = paletteBack.GetBackColor1(state), lightColour = CommonHelper.MergeColors(borderColour, BORDER_PERCENT, Color.White, WHITE_PERCENT); // Draw inside of the border edge in a lighter version of the border - using SolidBrush drawBrush = new(lightColour); + using SolidBrush drawBrush = new SolidBrush(lightColour); context.Graphics.FillRectangle(drawBrush, displayRect); } #endregion @@ -74,7 +74,7 @@ public override ToolStripRenderer RenderToolStrip([DisallowNull] PaletteBase col throw new ArgumentNullException(nameof(colourPalette)); } - KryptoMicrosoft365Renderer renderer = new(colourPalette.ColorTable) + KryptoMicrosoft365Renderer renderer = new KryptoMicrosoft365Renderer(colourPalette.ColorTable) { RoundedEdges = colourPalette.ColorTable.UseRoundedEdges != InheritBool.False }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2007.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2007.cs index 339f94b8f..f805ab156 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2007.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2007.cs @@ -75,7 +75,7 @@ public override void DrawRibbonClusterEdge(PaletteRibbonShape shape, Color.White, WHITE_PERCENT); // Draw inside of the border edge in a lighter version of the border - using SolidBrush drawBrush = new(lightColor); + using SolidBrush drawBrush = new SolidBrush(lightColor); context.Graphics.FillRectangle(drawBrush, displayRect); } @@ -99,7 +99,7 @@ public override ToolStripRenderer RenderToolStrip([DisallowNull] PaletteBase col } // Use the professional renderer but pull colors from the palette - KryptonOffice2007Renderer renderer = new(colorPalette.ColorTable) + KryptonOffice2007Renderer renderer = new KryptonOffice2007Renderer(colorPalette.ColorTable) { // Setup the need to use rounded corners RoundedEdges = colorPalette.ColorTable.UseRoundedEdges != InheritBool.False @@ -147,16 +147,17 @@ protected override IDisposable DrawRibbonTabContext(RenderContext context, // Dispose of existing values cache.Dispose(); - Rectangle borderRect = new(rect.X - 1, rect.Y - 1, rect.Width + 2, rect.Height + 2); + Rectangle borderRect = new Rectangle(rect.X - 1, rect.Y - 1, rect.Width + 2, rect.Height + 2); cache.FillRect = new Rectangle(rect.X + 1, rect.Y, rect.Width - 2, rect.Height - 1); - LinearGradientBrush borderBrush = new(borderRect, c1, Color.Transparent, 270f) + LinearGradientBrush borderBrush = new LinearGradientBrush(borderRect, c1, Color.Transparent, 270f) { Blend = _ribbonGroup5Blend }; cache.BorderPen = new Pen(borderBrush); - LinearGradientBrush underlineBrush = new(borderRect, Color.Transparent, Color.FromArgb(200, c2), 0f) + LinearGradientBrush underlineBrush = + new LinearGradientBrush(borderRect, Color.Transparent, Color.FromArgb(200, c2), 0f) { Blend = _ribbonGroup7Blend }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2010.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2010.cs index e8a1d806f..85cdc1794 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2010.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2010.cs @@ -75,7 +75,7 @@ public override void DrawRibbonClusterEdge(PaletteRibbonShape shape, Color.White, WHITE_PERCENT); // Draw inside of the border edge in a lighter version of the border - using SolidBrush drawBrush = new(lightColor); + using SolidBrush drawBrush = new SolidBrush(lightColor); context.Graphics.FillRectangle(drawBrush, displayRect); } @@ -99,7 +99,7 @@ public override ToolStripRenderer RenderToolStrip([DisallowNull] PaletteBase col } // Use the professional renderer but pull colors from the palette - KryptonOffice2010Renderer renderer = new(colorPalette.ColorTable) + KryptonOffice2010Renderer renderer = new KryptonOffice2010Renderer(colorPalette.ColorTable) { // Setup the need to use rounded corners diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2013.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2013.cs index 8e99a00f4..f702b3d37 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2013.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderOffice2013.cs @@ -68,7 +68,7 @@ public override void DrawRibbonClusterEdge(PaletteRibbonShape shape, Color.White, WHITE_PERCENT); // Draw inside of the border edge in a lighter version of the border - using SolidBrush drawBrush = new(lightColor); + using SolidBrush drawBrush = new SolidBrush(lightColor); context.Graphics.FillRectangle(drawBrush, displayRect); } @@ -92,7 +92,7 @@ public override ToolStripRenderer RenderToolStrip([DisallowNull] PaletteBase col } // Use the professional renderer but pull colors from the palette - KryptonOffice2013Renderer renderer = new(colorPalette.ColorTable) + KryptonOffice2013Renderer renderer = new KryptonOffice2013Renderer(colorPalette.ColorTable) { // Setup the need to use rounded corners diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderSparkle.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderSparkle.cs index e7d6c1787..a70180e91 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderSparkle.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderSparkle.cs @@ -152,8 +152,8 @@ public override void DrawRibbonDropArrow(PaletteRibbonShape shape, Color lightColor = state == PaletteState.Disabled ? paletteGeneral.GetRibbonDisabledLight(state) : paletteGeneral.GetRibbonGroupDialogLight(state); - using Pen darkPen = new(darkColor), - lightPen = new(lightColor); + using Pen darkPen = new Pen(darkColor), + lightPen = new Pen(lightColor); context.Graphics.DrawLine(lightPen, displayRect.Left, displayRect.Top + 1, displayRect.Left + 2, displayRect.Top + 3); context.Graphics.DrawLine(lightPen, displayRect.Left + 2, displayRect.Top + 3, displayRect.Left + 4, displayRect.Top + 1); context.Graphics.DrawLine(lightPen, displayRect.Left + 4, displayRect.Top + 1, displayRect.Left + 1, displayRect.Top + 1); @@ -198,7 +198,7 @@ public override void DrawInputControlDropDownGlyph([DisallowNull] RenderContext var xStart = cellRect.Left + ((cellRect.Right - cellRect.Left - 4) / 2); var yStart = cellRect.Top + ((cellRect.Bottom - cellRect.Top - 3) / 2); - using Pen darkPen = new(c1); + using Pen darkPen = new Pen(c1); context.Graphics.DrawLine(darkPen, xStart, yStart, xStart + 4, yStart); context.Graphics.DrawLine(darkPen, xStart + 1, yStart + 1, xStart + 3, yStart + 1); context.Graphics.DrawLine(darkPen, xStart + 2, yStart + 2, xStart + 2, yStart + 1); @@ -237,7 +237,7 @@ public override void DrawInputControlNumericUpGlyph([DisallowNull] RenderContext var xStart = cellRect.Left + ((cellRect.Right - cellRect.Left - 4) / 2); var yStart = cellRect.Top + ((cellRect.Bottom - cellRect.Top - 3) / 2); - using Pen darkPen = new(c1); + using Pen darkPen = new Pen(c1); context.Graphics.DrawLine(darkPen, xStart, yStart + 3, xStart + 4, yStart + 3); context.Graphics.DrawLine(darkPen, xStart + 1, yStart + 2, xStart + 3, yStart + 2); context.Graphics.DrawLine(darkPen, xStart + 2, yStart + 2, xStart + 2, yStart + 1); @@ -276,7 +276,7 @@ public override void DrawInputControlNumericDownGlyph([DisallowNull] RenderConte var xStart = cellRect.Left + ((cellRect.Right - cellRect.Left - 4) / 2); var yStart = cellRect.Top + ((cellRect.Bottom - cellRect.Top - 3) / 2); - using Pen darkPen = new(c1); + using Pen darkPen = new Pen(c1); context.Graphics.DrawLine(darkPen, xStart, yStart, xStart + 4, yStart); context.Graphics.DrawLine(darkPen, xStart + 1, yStart + 1, xStart + 3, yStart + 1); context.Graphics.DrawLine(darkPen, xStart + 2, yStart + 2, xStart + 2, yStart + 1); @@ -301,7 +301,7 @@ public override ToolStripRenderer RenderToolStrip([DisallowNull] PaletteBase col } // Use the professional renderer but pull colors from the palette - KryptonSparkleRenderer renderer = new(colorPalette.ColorTable) + KryptonSparkleRenderer renderer = new KryptonSparkleRenderer(colorPalette.ColorTable) { // Setup the need to use rounded corners @@ -350,16 +350,17 @@ protected override IDisposable DrawRibbonTabContext(RenderContext context, // Dispose of existing values cache.Dispose(); - Rectangle borderRect = new(rect.X - 1, rect.Y - 1, rect.Width + 2, rect.Height + 2); + Rectangle borderRect = new Rectangle(rect.X - 1, rect.Y - 1, rect.Width + 2, rect.Height + 2); cache.FillRect = new Rectangle(rect.X + 1, rect.Y, rect.Width - 2, rect.Height - 1); - LinearGradientBrush borderBrush = new(borderRect, c1, Color.Transparent, 270f) + LinearGradientBrush borderBrush = new LinearGradientBrush(borderRect, c1, Color.Transparent, 270f) { Blend = _ribbonGroup5Blend }; cache.BorderPen = new Pen(borderBrush); - LinearGradientBrush underlineBrush = new(borderRect, Color.Transparent, Color.FromArgb(200, c2), 0f) + LinearGradientBrush underlineBrush = + new LinearGradientBrush(borderRect, Color.Transparent, Color.FromArgb(200, c2), 0f) { Blend = _ribbonGroup7Blend }; diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderStandard.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderStandard.cs index 36b92965a..457c4f51f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderStandard.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/RenderStandard.cs @@ -386,7 +386,7 @@ public override ToolStripRenderer RenderToolStrip([DisallowNull] PaletteBase col } // Use the professional renderer but pull colors from the palette - KryptonStandardRenderer renderer = new(colorPalette.ColorTable) + KryptonStandardRenderer renderer = new KryptonStandardRenderer(colorPalette.ColorTable) { // Setup the need to use rounded corners @@ -593,7 +593,7 @@ public override GraphicsPath GetOutsideBorderPath([DisallowNull] RenderContext c } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); // Use helper to create a border path on the outside return CreateBorderBackPath(true, false, rect, @@ -635,7 +635,7 @@ public override GraphicsPath GetBorderPath([DisallowNull] RenderContext context, } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); // Use helper to create a border path in middle of the pen return CreateBorderBackPath(false, @@ -679,7 +679,7 @@ public override GraphicsPath GetBackPath([DisallowNull] RenderContext context, } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); // Use helper to create a border path in middle of the pen return CreateBorderBackPath(false, @@ -722,7 +722,7 @@ public override void DrawBorder([DisallowNull] RenderContext context, } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); PaletteDrawBorders borders = palette.GetBorderDrawBorders(state); @@ -733,7 +733,7 @@ public override void DrawBorder([DisallowNull] RenderContext context, SmoothingMode smoothMode = palette.GetBorderRounding(state) > 0 ? SmoothingMode.AntiAlias : SmoothingMode.Default; // We want to draw using anti aliasing for a nice smooth effect - using GraphicsHint hint = new(context.Graphics, palette.GetBorderGraphicsHint(state)); + using GraphicsHint hint = new GraphicsHint(context.Graphics, palette.GetBorderGraphicsHint(state)); // Cache commonly used values var borderWidth = palette.GetBorderWidth(state); @@ -764,12 +764,11 @@ public override void DrawBorder([DisallowNull] RenderContext context, // Use standard helper routine to create appropriate color brush PaletteColorStyle colorStyle = palette.GetBorderColorStyle(state); - using (Pen borderPen = new(CreateColorBrush(gradientRect, - palette.GetBorderColor1(state), - palette.GetBorderColor2(state), - colorStyle, - palette.GetBorderColorAngle(state), - orientation), borderWidth)) + using (Pen borderPen = + new Pen( + CreateColorBrush(gradientRect, palette.GetBorderColor1(state), + palette.GetBorderColor2(state), colorStyle, palette.GetBorderColorAngle(state), + orientation), borderWidth)) { if (colorStyle == PaletteColorStyle.Dashed) { @@ -795,7 +794,8 @@ public override void DrawBorder([DisallowNull] RenderContext context, Rectangle imageRect = context.GetAlignedRectangle(palette.GetBorderImageAlign(state), rect); // Use standard helper routine to create appropriate image brush - using Pen borderPen = new(CreateImageBrush(imageRect, borderImage!, borderImageStyle), borderWidth); + using Pen borderPen = new Pen(CreateImageBrush(imageRect, borderImage!, borderImageStyle), + borderWidth); context.Graphics.DrawPath(borderPen, borderPath0); // Optionally also draw the second path @@ -854,7 +854,7 @@ public override void DrawBorder([DisallowNull] RenderContext context, } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); // Is there anything to actually draw? if ((rect.Width <= 0) @@ -873,7 +873,7 @@ public override void DrawBorder([DisallowNull] RenderContext context, } // We want to draw using anti aliasing for a nice smooth effect - using GraphicsHint smooth = new(context.Graphics, palette.GetBackGraphicsHint(state)); + using GraphicsHint smooth = new GraphicsHint(context.Graphics, palette.GetBackGraphicsHint(state)); // Cache commonly used values Image? backImage = palette.GetBackImage(state); PaletteImageStyle backImageStyle = palette.GetBackImageStyle(state); @@ -1063,11 +1063,11 @@ public override Size GetContentPreferredSize([DisallowNull] ViewLayoutContext co } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); // Provide a maximum sized rectangle for placing content into, in // order to work out how much of the space is actually allocated - Rectangle displayRect = new(Point.Empty, new Size(int.MaxValue, int.MaxValue)); + Rectangle displayRect = new Rectangle(Point.Empty, new Size(int.MaxValue, int.MaxValue)); // Track the allocated space in each grid position var allocation = new Size[3, 3] { { Size.Empty, Size.Empty, Size.Empty }, @@ -1075,7 +1075,7 @@ public override Size GetContentPreferredSize([DisallowNull] ViewLayoutContext co { Size.Empty, Size.Empty, Size.Empty } }; // Create a memento for storing calculations - using StandardContentMemento memento = new(); + using StandardContentMemento memento = new StandardContentMemento(); // Cache the size of a spacing gap var spacingGap = palette.GetContentAdjacentGap(state); @@ -1163,7 +1163,7 @@ public override IDisposable LayoutContent([DisallowNull] ViewLayoutContext conte } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); // Remember the original value, for use later Rectangle cacheDisplayRect = availableRect; @@ -1205,7 +1205,7 @@ public override IDisposable LayoutContent([DisallowNull] ViewLayoutContext conte { Size.Empty, Size.Empty, Size.Empty } }; // Create a memento to return to caller - StandardContentMemento memento = new(); + StandardContentMemento memento = new StandardContentMemento(); // Cache the size of a spacing gap var spacingGap = palette.GetContentAdjacentGap(state); @@ -1322,7 +1322,7 @@ public override void DrawContent([DisallowNull] RenderContext context, } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); // Cast the incoming memento to the correct type StandardContentMemento standard = (StandardContentMemento)memento; @@ -1341,7 +1341,7 @@ public override void DrawContent([DisallowNull] RenderContext context, if (standard.DrawShortText) { - using GraphicsTextHint hint = new(context.Graphics, standard.ShortTextHint); + using GraphicsTextHint hint = new GraphicsTextHint(context.Graphics, standard.ShortTextHint); // Get the rectangle to use when dealing with gradients Rectangle gradientRect = context.GetAlignedRectangle(palette.GetContentShortTextColorAlign(state), standard.ShortTextRect); @@ -1420,7 +1420,7 @@ public override void DrawContent([DisallowNull] RenderContext context, if (standard.DrawLongText) { - using GraphicsTextHint hint = new(context.Graphics, standard.LongTextHint); + using GraphicsTextHint hint = new GraphicsTextHint(context.Graphics, standard.LongTextHint); // Get the rectangle to use when dealing with gradients Rectangle gradientRect = context.GetAlignedRectangle(palette.GetContentLongTextColorAlign(state), standard.LongTextRect); @@ -1887,7 +1887,7 @@ public override GraphicsPath GetTabBorderPath([DisallowNull] RenderContext conte } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); // Use helper to create a border path in middle of the pen return CreateTabBorderBackPath(context.Control.RightToLeft, state, false, rect, @@ -1928,7 +1928,7 @@ public override GraphicsPath GetTabBackPath([DisallowNull] RenderContext context } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); // Use helper to create a border path in middle of the pen return CreateTabBorderBackPath(context.Control.RightToLeft, state, false, rect, @@ -1968,13 +1968,13 @@ public override void DrawTabBorder([DisallowNull] RenderContext context, } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); // Is there anything to actually draw? if (rect is { Width: > 0, Height: > 0 }) { // Decide if we need to use anti aliasing for a smoother looking visual - using GraphicsHint hint = new(context.Graphics, palette.GetBorderGraphicsHint(state)); + using GraphicsHint hint = new GraphicsHint(context.Graphics, palette.GetBorderGraphicsHint(state)); // Cache commonly used values var borderWidth = palette.GetBorderWidth(state); @@ -1996,7 +1996,7 @@ public override void DrawTabBorder([DisallowNull] RenderContext context, palette.GetBorderColorAngle(state), orientation)) { - using (Pen borderPen = new(borderBrush, borderWidth)) + using (Pen borderPen = new Pen(borderBrush, borderWidth)) { context.Graphics.DrawPath(borderPen, borderPath); } @@ -2014,7 +2014,8 @@ public override void DrawTabBorder([DisallowNull] RenderContext context, PaletteImageStyle borderImageStyle = palette.GetBorderImageStyle(state); // Use standard helper routine to create appropriate image brush - using Pen borderPen = new(CreateImageBrush(imageRect, borderImage, borderImageStyle), borderWidth); + using Pen borderPen = new Pen(CreateImageBrush(imageRect, borderImage, borderImageStyle), + borderWidth); context.Graphics.DrawPath(borderPen, borderPath); } } @@ -2057,7 +2058,7 @@ public override void DrawTabBorder([DisallowNull] RenderContext context, // Do nothing break; case PaletteRibbonColorStyle.Solid: - using (SolidBrush backBrush = new(palette.GetRibbonBackColor1(state))) + using (SolidBrush backBrush = new SolidBrush(palette.GetRibbonBackColor1(state))) { context.Graphics.FillRectangle(backBrush, rect); } @@ -2231,7 +2232,7 @@ public override void DrawRibbonClusterEdge(PaletteRibbonShape shape, Debug.Assert(paletteBack != null); // Draw inside of the border edge in a lighter version of the border - using SolidBrush drawBrush = new(paletteBack.GetBackColor1(state)); + using SolidBrush drawBrush = new SolidBrush(paletteBack.GetBackColor1(state)); context.Graphics.FillRectangle(drawBrush, displayRect); } #endregion @@ -2278,7 +2279,7 @@ public override void DrawSeparator([DisallowNull] RenderContext context, } Debug.Assert(context.Control != null); - Debug.Assert(!context.Control!.IsDisposed); + Debug.Assert(!context.Control.IsDisposed); // Do we need to draw the background? if (paletteBack.GetBackDraw(state) == InheritBool.True) @@ -2616,8 +2617,8 @@ public override void DrawInputControlNumericUpGlyph([DisallowNull] RenderContext var xStart = cellRect.Left + ((cellRect.Right - cellRect.Left - 4) / 2); var yStart = cellRect.Top + ((cellRect.Bottom - cellRect.Top - 3) / 2); - using Pen darkPen = new(c1), - lightPen = new(c2); + using Pen darkPen = new Pen(c1), + lightPen = new Pen(c2); context.Graphics.DrawLine(darkPen, xStart, yStart + 3, xStart + 4, yStart + 3); context.Graphics.DrawLine(darkPen, xStart + 1, yStart + 2, xStart + 3, yStart + 2); context.Graphics.DrawLine(darkPen, xStart + 2, yStart + 2, xStart + 2, yStart + 1); @@ -2659,8 +2660,8 @@ public override void DrawInputControlNumericDownGlyph([DisallowNull] RenderConte var xStart = cellRect.Left + ((cellRect.Right - cellRect.Left - 4) / 2); var yStart = cellRect.Top + ((cellRect.Bottom - cellRect.Top - 3) / 2); - using Pen darkPen = new(c1), - lightPen = new(c2); + using Pen darkPen = new Pen(c1), + lightPen = new Pen(c2); context.Graphics.DrawLine(darkPen, xStart, yStart, xStart + 4, yStart); context.Graphics.DrawLine(darkPen, xStart + 1, yStart + 1, xStart + 3, yStart + 1); context.Graphics.DrawLine(darkPen, xStart + 2, yStart + 2, xStart + 2, yStart + 1); @@ -2702,8 +2703,8 @@ public override void DrawInputControlDropDownGlyph([DisallowNull] RenderContext var xStart = cellRect.Left + ((cellRect.Right - cellRect.Left - 4) / 2); var yStart = cellRect.Top + ((cellRect.Bottom - cellRect.Top - 3) / 2); - using Pen darkPen = new(c1), - lightPen = new(c2); + using Pen darkPen = new Pen(c1), + lightPen = new Pen(c2); context.Graphics.DrawLine(darkPen, xStart, yStart, xStart + 4, yStart); context.Graphics.DrawLine(darkPen, xStart + 1, yStart + 1, xStart + 3, yStart + 1); context.Graphics.DrawLine(darkPen, xStart + 2, yStart + 2, xStart + 2, yStart + 1); @@ -2744,8 +2745,8 @@ public override void DrawRibbonDialogBoxLauncher(PaletteRibbonShape shape, { default: case PaletteRibbonShape.Office2007: - using (Pen darkPen = new(paletteGeneral.GetRibbonGroupDialogDark(state)), - lightPen = new(paletteGeneral.GetRibbonGroupDialogLight(state))) + using (Pen darkPen = new Pen(paletteGeneral.GetRibbonGroupDialogDark(state)), + lightPen = new Pen(paletteGeneral.GetRibbonGroupDialogLight(state))) { context.Graphics.DrawLine(darkPen, displayRect.Left, displayRect.Top + 5, displayRect.Left, displayRect.Top); context.Graphics.DrawLine(darkPen, displayRect.Left, displayRect.Top, displayRect.Left + 5, displayRect.Top); @@ -2762,12 +2763,12 @@ public override void DrawRibbonDialogBoxLauncher(PaletteRibbonShape shape, } break; case PaletteRibbonShape.Office2010: - LinearGradientBrush dialogBrush = new(new RectangleF(displayRect.X - 1, displayRect.Y - 1, displayRect.Width + 2, displayRect.Height + 2), - paletteGeneral.GetRibbonGroupDialogLight(state), - paletteGeneral.GetRibbonGroupDialogDark(state), - 45f); + LinearGradientBrush dialogBrush = new LinearGradientBrush( + new RectangleF(displayRect.X - 1, displayRect.Y - 1, displayRect.Width + 2, + displayRect.Height + 2), paletteGeneral.GetRibbonGroupDialogLight(state), + paletteGeneral.GetRibbonGroupDialogDark(state), 45f); - using (Pen dialogPen = new(dialogBrush)) + using (Pen dialogPen = new Pen(dialogBrush)) { context.Graphics.DrawLine(dialogPen, displayRect.Left, displayRect.Top + 5, displayRect.Left, displayRect.Top); context.Graphics.DrawLine(dialogPen, displayRect.Left, displayRect.Top, displayRect.Left + 5, displayRect.Top); @@ -2820,8 +2821,8 @@ public override void DrawRibbonDropArrow(PaletteRibbonShape shape, { default: case PaletteRibbonShape.Office2007: - using (Pen darkPen = new(darkColor), - lightPen = new(lightColor)) + using (Pen darkPen = new Pen(darkColor), + lightPen = new Pen(lightColor)) { context.Graphics.DrawLine(darkPen, displayRect.Left, displayRect.Top, displayRect.Left + 4, displayRect.Top); context.Graphics.DrawLine(darkPen, displayRect.Left + 1, displayRect.Top + 1, displayRect.Left + 3, displayRect.Top + 1); @@ -2831,12 +2832,14 @@ public override void DrawRibbonDropArrow(PaletteRibbonShape shape, } break; case PaletteRibbonShape.Office2010: - using (LinearGradientBrush fillBrush = new(new RectangleF(displayRect.X - 1, displayRect.Y - 1, displayRect.Width + 2, displayRect.Height + 2), - lightColor, darkColor, 45f)) - { - context.Graphics.FillPolygon(fillBrush, new Point[]{ new(displayRect.Left - 1, displayRect.Top - 1), - new(displayRect.Left + 2, displayRect.Top + 3), - new(displayRect.Left + 5, displayRect.Top) }); + using (LinearGradientBrush fillBrush = new LinearGradientBrush( + new RectangleF(displayRect.X - 1, displayRect.Y - 1, displayRect.Width + 2, + displayRect.Height + 2), lightColor, darkColor, 45f)) + { + context.Graphics.FillPolygon(fillBrush, new Point[]{ + new Point(displayRect.Left - 1, displayRect.Top - 1), + new Point(displayRect.Left + 2, displayRect.Top + 3), + new Point(displayRect.Left + 5, displayRect.Top) }); } break; } @@ -2881,8 +2884,8 @@ public override void DrawRibbonContextArrow(PaletteRibbonShape shape, c2 = CommonHelper.ColorToBlackAndWhite(c2); } - using Pen darkPen = new(c1), - lightPen = new(c2); + using Pen darkPen = new Pen(c1), + lightPen = new Pen(c2); // TODO: WagnerP - please provide a better way of doing this for Various themes and dpi's if (shape == PaletteRibbonShape.Office2010) { @@ -2947,8 +2950,8 @@ public override void DrawRibbonOverflow(PaletteRibbonShape shape, c2 = CommonHelper.ColorToBlackAndWhite(c2); } - using Pen darkPen = new(c1), - lightPen = new(c2); + using Pen darkPen = new Pen(c1), + lightPen = new Pen(c2); // TODO: WagnerP - please provide a better way of doing this for Various themes and dpi's context.Graphics.DrawLine(darkPen, displayRect.Left, displayRect.Top + 1, displayRect.Left, displayRect.Top + 3); context.Graphics.DrawLine(darkPen, displayRect.Left + 1, displayRect.Top + 2, displayRect.Left, displayRect.Top + 3); @@ -2998,21 +3001,27 @@ public override void DrawRibbonGroupSeparator(PaletteRibbonShape shape, { default: case PaletteRibbonShape.Office2007: - using (Pen darkPen = new(darkColor), - lightPen = new(lightColor)) + using (Pen darkPen = new Pen(darkColor), + lightPen = new Pen(lightColor)) { context.Graphics.DrawLine(lightPen, x, displayRect.Top + 2, x, displayRect.Bottom - 3); context.Graphics.DrawLine(darkPen, x + 1, displayRect.Top + 2, x + 1, displayRect.Bottom - 3); } break; case PaletteRibbonShape.Office2010: - using (LinearGradientBrush darkBrush = new(new RectangleF(displayRect.X, displayRect.Y - 1, displayRect.Width, displayRect.Height + 2), Color.FromArgb(72, darkColor), darkColor, 90f), - lightBrush = new(new RectangleF(displayRect.X - 1, displayRect.Y - 1, displayRect.Width + 2, displayRect.Height + 2), Color.FromArgb(128, lightColor), lightColor, 90f)) + using (LinearGradientBrush darkBrush = + new LinearGradientBrush( + new RectangleF(displayRect.X, displayRect.Y - 1, displayRect.Width, + displayRect.Height + 2), Color.FromArgb(72, darkColor), darkColor, 90f), + lightBrush = new LinearGradientBrush( + new RectangleF(displayRect.X - 1, displayRect.Y - 1, + displayRect.Width + 2, displayRect.Height + 2), + Color.FromArgb(128, lightColor), lightColor, 90f)) { darkBrush.SetSigmaBellShape(0.5f); lightBrush.SetSigmaBellShape(0.5f); - using (Pen darkPen = new(darkBrush)) + using (Pen darkPen = new Pen(darkBrush)) { context.Graphics.FillRectangle(lightBrush, x, displayRect.Top, 3, displayRect.Height); context.Graphics.DrawLine(darkPen, x + 1, displayRect.Top, x + 1, displayRect.Bottom - 1); @@ -3056,9 +3065,9 @@ public override Rectangle DrawGridSortGlyph([DisallowNull] RenderContext context Color imageColor = paletteContent.GetContentShortTextColor1(state); // Draw the image with remapping the image color to the foreground color - using (ImageAttributes attribs = new()) + using (ImageAttributes attribs = new ImageAttributes()) { - ColorMap cm = new() + ColorMap cm = new ColorMap { OldColor = Color.Black, NewColor = CommonHelper.MergeColors(imageColor, 0.75f, Color.Transparent, 0.25f) @@ -3136,9 +3145,9 @@ public override Rectangle DrawGridRowGlyph([DisallowNull] RenderContext context, Color imageColor = paletteContent.GetContentShortTextColor1(state); // Draw the image with remapping the image color to the foreground color - using (ImageAttributes attribs = new()) + using (ImageAttributes attribs = new ImageAttributes()) { - ColorMap cm = new() + ColorMap cm = new ColorMap { OldColor = Color.Black, NewColor = CommonHelper.MergeColors(imageColor, 0.75f, Color.Transparent, 0.25f) @@ -3224,12 +3233,12 @@ public override void DrawDragDropSolidGlyph([DisallowNull] RenderContext context Debug.Assert(context != null); Debug.Assert(dragDropPalette != null); - using (SolidBrush backBrush = new(dragDropPalette.GetDragDropSolidBack())) + using (SolidBrush backBrush = new SolidBrush(dragDropPalette.GetDragDropSolidBack())) { context.Graphics.FillRectangle(backBrush, drawRect); } - using (Pen borderPen = new(dragDropPalette.GetDragDropSolidBorder())) + using (Pen borderPen = new Pen(dragDropPalette.GetDragDropSolidBorder())) { context.Graphics.DrawRectangle(borderPen, drawRect); } @@ -3409,7 +3418,7 @@ public override void DrawTrackTicksGlyph(RenderContext context, } float range = maximum - minimum; - using Pen tickPen = new(elementPalette.GetElementColor1(state)); + using Pen tickPen = new Pen(elementPalette.GetElementColor1(state)); if (orientation == Orientation.Horizontal) { // Reduce area by half the position indicator on each side @@ -3511,52 +3520,48 @@ public override void DrawTrackGlyph(RenderContext context, drawRect.Inflate(0, -1); } - using Pen border1Pen = new(elementPalette.GetElementColor1(state)), - border2Pen = new(elementPalette.GetElementColor2(state)); - using SolidBrush insideBrush = new(elementPalette.GetElementColor3(state)); + using Pen border1Pen = new Pen(elementPalette.GetElementColor1(state)), + border2Pen = new Pen(elementPalette.GetElementColor2(state)); + using SolidBrush insideBrush = new SolidBrush(elementPalette.GetElementColor3(state)); if (!volumeControl) { context.Graphics.FillRectangle(insideBrush, drawRect.X + 1, drawRect.Y + 1, drawRect.Width - 2, drawRect.Height - 2); - context.Graphics.DrawLines(border1Pen, new Point[]{ new(drawRect.Right - 1, drawRect.Y), - new(drawRect.X, drawRect.Y), - new(drawRect.X, drawRect.Bottom - 1)}); + context.Graphics.DrawLines(border1Pen, new Point[]{ + new Point(drawRect.Right - 1, drawRect.Y), new Point(drawRect.X, drawRect.Y), + new Point(drawRect.X, drawRect.Bottom - 1)}); - context.Graphics.DrawLines(border2Pen, new Point[]{ new(drawRect.Right - 1, drawRect.Y + 1), - new(drawRect.Right - 1, drawRect.Bottom - 1), - new(drawRect.X + 1, drawRect.Bottom - 1)}); + context.Graphics.DrawLines(border2Pen, new Point[]{ + new Point(drawRect.Right - 1, drawRect.Y + 1), new Point(drawRect.Right - 1, drawRect.Bottom - 1), + new Point(drawRect.X + 1, drawRect.Bottom - 1)}); } else { if (orientation == Orientation.Horizontal) { - using AntiAlias aa = new(context.Graphics); - context.Graphics.FillPolygon(insideBrush, new Point[]{ new(drawRect.X, drawRect.Bottom - 2), - new(drawRect.Right - 1, drawRect.Y), - new(drawRect.Right - 1, drawRect.Bottom - 1), - new(drawRect.X, drawRect.Bottom - 1), - new(drawRect.X, drawRect.Bottom - 2)}); + using AntiAlias aa = new AntiAlias(context.Graphics); + context.Graphics.FillPolygon(insideBrush, new Point[]{ + new Point(drawRect.X, drawRect.Bottom - 2), new Point(drawRect.Right - 1, drawRect.Y), + new Point(drawRect.Right - 1, drawRect.Bottom - 1), new Point(drawRect.X, drawRect.Bottom - 1), + new Point(drawRect.X, drawRect.Bottom - 2)}); - context.Graphics.DrawLines(border1Pen, new Point[]{ new(drawRect.Right - 1, drawRect.Y), - new(drawRect.Right - 1, drawRect.Bottom - 1), - new(drawRect.X, drawRect.Bottom - 1), - new(drawRect.X, drawRect.Bottom - 2), - new(drawRect.Right - 1, drawRect.Y)}); + context.Graphics.DrawLines(border1Pen, new Point[]{ + new Point(drawRect.Right - 1, drawRect.Y), new Point(drawRect.Right - 1, drawRect.Bottom - 1), + new Point(drawRect.X, drawRect.Bottom - 1), new Point(drawRect.X, drawRect.Bottom - 2), + new Point(drawRect.Right - 1, drawRect.Y)}); } else { - using AntiAlias aa = new(context.Graphics); - context.Graphics.FillPolygon(insideBrush, new Point[]{ new(drawRect.X + 1, drawRect.Bottom - 1), - new(drawRect.Right - 1, drawRect.Y + 1), - new(drawRect.X, drawRect.Y + 1), - new(drawRect.X, drawRect.Bottom - 1), - new(drawRect.X + 1, drawRect.Bottom - 1)}); + using AntiAlias aa = new AntiAlias(context.Graphics); + context.Graphics.FillPolygon(insideBrush, new Point[]{ + new Point(drawRect.X + 1, drawRect.Bottom - 1), new Point(drawRect.Right - 1, drawRect.Y + 1), + new Point(drawRect.X, drawRect.Y + 1), new Point(drawRect.X, drawRect.Bottom - 1), + new Point(drawRect.X + 1, drawRect.Bottom - 1)}); - context.Graphics.DrawLines(border1Pen, new Point[]{ new(drawRect.Right - 1, drawRect.Y + 1), - new(drawRect.X, drawRect.Y + 1), - new(drawRect.X, drawRect.Bottom - 1), - new(drawRect.X + 1, drawRect.Bottom - 1), - new(drawRect.Right - 1, drawRect.Y + 1)}); + context.Graphics.DrawLines(border1Pen, new Point[]{ + new Point(drawRect.Right - 1, drawRect.Y + 1), new Point(drawRect.X, drawRect.Y + 1), + new Point(drawRect.X, drawRect.Bottom - 1), new Point(drawRect.X + 1, drawRect.Bottom - 1), + new Point(drawRect.Right - 1, drawRect.Y + 1)}); } } } @@ -3619,24 +3624,22 @@ public override void DrawTrackPositionGlyph(RenderContext context, && (inside != null) ) { - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { - using (Pen outsidePen = new(elementPalette.GetElementColor1(state)), - borderPen = new(elementPalette.GetElementColor2(state))) + using (Pen outsidePen = new Pen(elementPalette.GetElementColor1(state)), + borderPen = new Pen(elementPalette.GetElementColor2(state))) { context.Graphics.DrawPath(outsidePen, outside); - using (SolidBrush insideBrush = new(elementPalette.GetElementColor3(state))) + using (SolidBrush insideBrush = new SolidBrush(elementPalette.GetElementColor3(state))) { context.Graphics.FillPath(insideBrush, border); } context.Graphics.DrawPath(borderPen, border); - using (LinearGradientBrush innerBrush = new(inside.GetBounds(), - elementPalette.GetElementColor4(state), - elementPalette.GetElementColor5(state), - 90f)) + using (LinearGradientBrush innerBrush = new LinearGradientBrush(inside.GetBounds(), + elementPalette.GetElementColor4(state), elementPalette.GetElementColor5(state), 90f)) { context.Graphics.FillPath(innerBrush, inside); } @@ -3664,16 +3667,14 @@ private void CreatePositionPathsBoth(Rectangle drawRect, private GraphicsPath CreatePositionPathsBoth(Rectangle drawRect) { - GraphicsPath path = new(); - path.AddLines(new PointF[]{ new(drawRect.X + 0.75f, drawRect.Y), - new(drawRect.Right - 1.75f, drawRect.Y), - new(drawRect.Right - 1.0f, drawRect.Y + 0.75f), - new(drawRect.Right - 1.0f, drawRect.Bottom - 2.0f), - new(drawRect.Right - 2.0f, drawRect.Bottom - 1.0f), - new(drawRect.X + 1.0f, drawRect.Bottom - 1.0f), - new(drawRect.X, drawRect.Bottom - 2.0f), - new(drawRect.X, drawRect.Y + 0.75f), - new(drawRect.X + 0.75f, drawRect.Y)}); + GraphicsPath path = new GraphicsPath(); + path.AddLines(new PointF[]{ + new PointF(drawRect.X + 0.75f, drawRect.Y), new PointF(drawRect.Right - 1.75f, drawRect.Y), + new PointF(drawRect.Right - 1.0f, drawRect.Y + 0.75f), + new PointF(drawRect.Right - 1.0f, drawRect.Bottom - 2.0f), + new PointF(drawRect.Right - 2.0f, drawRect.Bottom - 1.0f), + new PointF(drawRect.X + 1.0f, drawRect.Bottom - 1.0f), new PointF(drawRect.X, drawRect.Bottom - 2.0f), + new PointF(drawRect.X, drawRect.Y + 0.75f), new PointF(drawRect.X + 0.75f, drawRect.Y)}); return path; } @@ -3696,15 +3697,13 @@ private GraphicsPath CreatePositionPathsBottom(Rectangle drawRect) { var half = ((float)drawRect.Width / 2) - 0.5f; - GraphicsPath path = new(); - path.AddLines(new PointF[]{ new(drawRect.X + half, drawRect.Y), - new(drawRect.Right - 1.0f, drawRect.Y + + half), - new(drawRect.Right - 1.0f, drawRect.Bottom - 2.0f), - new(drawRect.Right - 2.0f, drawRect.Bottom - 1.0f), - new(drawRect.X + 1.0f, drawRect.Bottom - 1.0f), - new(drawRect.X, drawRect.Bottom - 2.0f), - new(drawRect.X, drawRect.Y + half), - new(drawRect.X + half, drawRect.Y)}); + GraphicsPath path = new GraphicsPath(); + path.AddLines(new PointF[]{ + new PointF(drawRect.X + half, drawRect.Y), new PointF(drawRect.Right - 1.0f, drawRect.Y + +half), + new PointF(drawRect.Right - 1.0f, drawRect.Bottom - 2.0f), + new PointF(drawRect.Right - 2.0f, drawRect.Bottom - 1.0f), + new PointF(drawRect.X + 1.0f, drawRect.Bottom - 1.0f), new PointF(drawRect.X, drawRect.Bottom - 2.0f), + new PointF(drawRect.X, drawRect.Y + half), new PointF(drawRect.X + half, drawRect.Y)}); return path; } @@ -3725,15 +3724,14 @@ private GraphicsPath CreatePositionPathsTop(Rectangle drawRect) { var half = ((float)drawRect.Width / 2) - 0.5f; - GraphicsPath path = new(); - path.AddLines(new PointF[]{ new(drawRect.X + 0.75f, drawRect.Y), - new(drawRect.Right - 1.75f, drawRect.Y), - new(drawRect.Right - 1.0f, drawRect.Y + 0.75f), - new(drawRect.Right - 1.0f, drawRect.Bottom - half - 1.0f), - new(drawRect.X + half, drawRect.Bottom - 1.0f), - new(drawRect.X, drawRect.Bottom - half - 1.0f), - new(drawRect.X, drawRect.Y + 0.75f), - new(drawRect.X + 0.75f, drawRect.Y)}); + GraphicsPath path = new GraphicsPath(); + path.AddLines(new PointF[]{ + new PointF(drawRect.X + 0.75f, drawRect.Y), new PointF(drawRect.Right - 1.75f, drawRect.Y), + new PointF(drawRect.Right - 1.0f, drawRect.Y + 0.75f), + new PointF(drawRect.Right - 1.0f, drawRect.Bottom - half - 1.0f), + new PointF(drawRect.X + half, drawRect.Bottom - 1.0f), + new PointF(drawRect.X, drawRect.Bottom - half - 1.0f), new PointF(drawRect.X, drawRect.Y + 0.75f), + new PointF(drawRect.X + 0.75f, drawRect.Y)}); return path; } @@ -3754,15 +3752,13 @@ private GraphicsPath CreatePositionPathsRight(Rectangle drawRect) { var half = ((float)drawRect.Height / 2) - 0.5f; - GraphicsPath path = new(); - path.AddLines(new PointF[]{ new(drawRect.X + 0.75f, drawRect.Y), - new(drawRect.Right - half - 1.0f, drawRect.Y), - new(drawRect.Right - 1.0f, drawRect.Y + half), - new(drawRect.Right - half - 1.0f, drawRect.Bottom - 1.0f), - new(drawRect.X + 1.0f, drawRect.Bottom - 1.0f), - new(drawRect.X, drawRect.Bottom - 2.0f), - new(drawRect.X, drawRect.Y + 0.75f), - new(drawRect.X + 0.75f, drawRect.Y)}); + GraphicsPath path = new GraphicsPath(); + path.AddLines(new PointF[]{ + new PointF(drawRect.X + 0.75f, drawRect.Y), new PointF(drawRect.Right - half - 1.0f, drawRect.Y), + new PointF(drawRect.Right - 1.0f, drawRect.Y + half), + new PointF(drawRect.Right - half - 1.0f, drawRect.Bottom - 1.0f), + new PointF(drawRect.X + 1.0f, drawRect.Bottom - 1.0f), new PointF(drawRect.X, drawRect.Bottom - 2.0f), + new PointF(drawRect.X, drawRect.Y + 0.75f), new PointF(drawRect.X + 0.75f, drawRect.Y)}); return path; } @@ -3784,15 +3780,14 @@ private GraphicsPath CreatePositionPathsLeft(Rectangle drawRect) { var half = ((float)drawRect.Height / 2) - 0.5f; - GraphicsPath path = new(); - path.AddLines(new PointF[]{ new(drawRect.Right - 1.75f, drawRect.Y), - new(drawRect.Right - 1.0f, drawRect.Y + 0.75f), - new(drawRect.Right - 1.0f, drawRect.Bottom - 2.0f), - new(drawRect.Right - 2.0f, drawRect.Bottom - 1.0f), - new(drawRect.X + half, drawRect.Bottom - 1.0f), - new(drawRect.X, drawRect.Bottom - half - 1.0f), - new(drawRect.X + half, drawRect.Y), - new(drawRect.Right - 1.75f, drawRect.Y)}); + GraphicsPath path = new GraphicsPath(); + path.AddLines(new PointF[]{ + new PointF(drawRect.Right - 1.75f, drawRect.Y), new PointF(drawRect.Right - 1.0f, drawRect.Y + 0.75f), + new PointF(drawRect.Right - 1.0f, drawRect.Bottom - 2.0f), + new PointF(drawRect.Right - 2.0f, drawRect.Bottom - 1.0f), + new PointF(drawRect.X + half, drawRect.Bottom - 1.0f), + new PointF(drawRect.X, drawRect.Bottom - half - 1.0f), new PointF(drawRect.X + half, drawRect.Y), + new PointF(drawRect.Right - 1.75f, drawRect.Y)}); return path; } @@ -3808,7 +3803,7 @@ private static GraphicsPath CreateBorderBackPath(bool forBorder, bool smoothing, int variant) { - GraphicsPath borderPath = new(); + GraphicsPath borderPath = new GraphicsPath(); // A zero size rectangle cannot be drawn, so return a null path if (rect is { Width: > 0, Height: > 0 }) @@ -3934,7 +3929,7 @@ private static void CreateAllBorderBackPath(bool middle, else { // We create the path using a floating point rectangle - RectangleF rectF = new(rect.X, rect.Y, rect.Width, rect.Height); + RectangleF rectF = new RectangleF(rect.X, rect.Y, rect.Width, rect.Height); // If trying to get the outside edge then perform some offsetting so that // when converted to a region it draws nicely inside the path outline @@ -4056,7 +4051,7 @@ private static void CreateBorderBackPathOnly(bool middle, rect.Height -= 1; // We create the path using a floating point rectangle - RectangleF rectF = new(rect.X, rect.Y, rect.Width, rect.Height); + RectangleF rectF = new RectangleF(rect.X, rect.Y, rect.Width, rect.Height); // If trying to get the outside edge then perform some offsetting so that // when converted to a region it draws nicely inside the path outline @@ -4166,7 +4161,7 @@ private static void CreateBorderBackPathOnlyClosed(bool middle, rect.Height--; // We create the path using a floating point rectangle - RectangleF rectF = new(rect.X, rect.Y, rect.Width, rect.Height); + RectangleF rectF = new RectangleF(rect.X, rect.Y, rect.Width, rect.Height); // If trying to get the outside edge then perform some offsetting so that // when converted to a region it draws nicely inside the path outline @@ -4252,7 +4247,7 @@ private static void CreateBorderBackPathComplete(bool middle, float arcLength) { // We create the path using a floating point rectangle - RectangleF rectF = new(rect.X, rect.Y, rect.Width, rect.Height); + RectangleF rectF = new RectangleF(rect.X, rect.Y, rect.Width, rect.Height); // If trying to get the outside edge then perform some offsetting so that // when converted to a region it draws nicely inside the path outline @@ -4361,7 +4356,7 @@ private static GraphicsPath CreateTabBorderBackPath(RightToLeft rtl, VisualOrientation orientation, bool smoothing) { - GraphicsPath borderPath = new(); + GraphicsPath borderPath = new GraphicsPath(); // A zero size rectangle cannot be drawn, so return a null path if (rect is { Width: > 0, Height: > 0 }) @@ -5030,13 +5025,11 @@ private static void AddSmoothPath(GraphicsPath borderPath, var x2T = rect.Width / 2; var x6T = rect.Width / 6; - borderPath.AddCurve(new Point[]{new(rect.Left, rect.Bottom), - new(rect.Left + indentW, rect.Top + 5), - new(rect.Left + x6T, rect.Top + 2), - new(rect.Left + x2T, rect.Top), - new(rect.Right - x6T, rect.Top + 2), - new(rect.Right - indentW, rect.Top + 5), - new(rect.Right, rect.Bottom)}, tension); + borderPath.AddCurve(new Point[]{ + new Point(rect.Left, rect.Bottom), new Point(rect.Left + indentW, rect.Top + 5), + new Point(rect.Left + x6T, rect.Top + 2), new Point(rect.Left + x2T, rect.Top), + new Point(rect.Right - x6T, rect.Top + 2), new Point(rect.Right - indentW, rect.Top + 5), + new Point(rect.Right, rect.Bottom)}, tension); } break; case VisualOrientation.Bottom: @@ -5056,13 +5049,11 @@ private static void AddSmoothPath(GraphicsPath borderPath, var x2B = rect.Width / 2; var x6B = rect.Width / 6; - borderPath.AddCurve(new Point[]{new(rect.Left, rect.Top), - new(rect.Left + indentW, rect.Bottom - 5), - new(rect.Left + x6B, rect.Bottom - 2), - new(rect.Left + x2B, rect.Bottom), - new(rect.Right - x6B, rect.Bottom - 2), - new(rect.Right - indentW, rect.Bottom - 5), - new(rect.Right, rect.Top)}, tension); + borderPath.AddCurve(new Point[]{ + new Point(rect.Left, rect.Top), new Point(rect.Left + indentW, rect.Bottom - 5), + new Point(rect.Left + x6B, rect.Bottom - 2), new Point(rect.Left + x2B, rect.Bottom), + new Point(rect.Right - x6B, rect.Bottom - 2), + new Point(rect.Right - indentW, rect.Bottom - 5), new Point(rect.Right, rect.Top)}, tension); } break; case VisualOrientation.Left: @@ -5082,13 +5073,11 @@ private static void AddSmoothPath(GraphicsPath borderPath, var y2L = rect.Height / 2; var y6L = rect.Height / 6; - borderPath.AddCurve(new Point[]{new(rect.Right, rect.Bottom), - new(rect.Left + 5, rect.Bottom - indentH), - new(rect.Left + 2, rect.Bottom - y6L), - new(rect.Left, rect.Bottom - y2L), - new(rect.Left + 2, rect.Top + y6L), - new(rect.Left + 5, rect.Top + indentH), - new(rect.Right, rect.Top)}, tension); + borderPath.AddCurve(new Point[]{ + new Point(rect.Right, rect.Bottom), new Point(rect.Left + 5, rect.Bottom - indentH), + new Point(rect.Left + 2, rect.Bottom - y6L), new Point(rect.Left, rect.Bottom - y2L), + new Point(rect.Left + 2, rect.Top + y6L), new Point(rect.Left + 5, rect.Top + indentH), + new Point(rect.Right, rect.Top)}, tension); } break; case VisualOrientation.Right: @@ -5108,13 +5097,11 @@ private static void AddSmoothPath(GraphicsPath borderPath, var y2R = rect.Height / 2; var y6R = rect.Height / 6; - borderPath.AddCurve(new Point[]{new(rect.Left, rect.Bottom), - new(rect.Right - 5, rect.Bottom - indentH), - new(rect.Right - 2, rect.Bottom - y6R), - new(rect.Right, rect.Bottom - y2R), - new(rect.Right - 2, rect.Top + y6R), - new(rect.Right - 5, rect.Top + indentH), - new(rect.Left, rect.Top)}, tension); + borderPath.AddCurve(new Point[]{ + new Point(rect.Left, rect.Bottom), new Point(rect.Right - 5, rect.Bottom - indentH), + new Point(rect.Right - 2, rect.Bottom - y6R), new Point(rect.Right, rect.Bottom - y2R), + new Point(rect.Right - 2, rect.Top + y6R), new Point(rect.Right - 5, rect.Top + indentH), + new Point(rect.Left, rect.Top)}, tension); } break; } @@ -5160,7 +5147,7 @@ private static Brush CreateColorBrush(Rectangle rect, } // Otherwise we always create a linear brush using provided colors and angle - LinearGradientBrush brush = new(rect, color1, color2, angle); + LinearGradientBrush brush = new LinearGradientBrush(rect, color1, color2, angle); switch (gradientStyle) { @@ -5226,7 +5213,7 @@ private static Brush CreateImageBrush(Rectangle rect, PaletteImageStyle imageStyle) { // Create brush based on the provided image - TextureBrush brush = new(image); + TextureBrush brush = new TextureBrush(image); // Create appropriate wrapping mode from image style switch (imageStyle) @@ -5304,7 +5291,7 @@ private void DrawBackSolidInside(RenderContext context, GraphicsPath path) { // Clip to prevent drawing outside the path - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Get the rectangle that encloses the path RectangleF rectF = path.GetBounds(); @@ -5381,7 +5368,7 @@ private void DrawBackOneNote(RenderContext context, break; } - using (Clipping clip = new(context.Graphics, path)) + using (Clipping clip = new Clipping(context.Graphics, path)) { // Draw the second color as the offset background using (Brush backBrush = CreateColorBrush(gradientRect, @@ -5406,9 +5393,9 @@ private void DrawBackSolidLine(RenderContext context, PaletteColorStyle style, GraphicsPath path) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Draw entire background in second color - using (SolidBrush brushColor2 = new(backColor2)) + using (SolidBrush brushColor2 = new SolidBrush(backColor2)) { context.Graphics.FillRectangle(brushColor2, rect); } @@ -5439,7 +5426,7 @@ private void DrawBackSolidLine(RenderContext context, } // Draw the second color as a solid block - using (SolidBrush brushColor2 = new(backColor1)) + using (SolidBrush brushColor2 = new SolidBrush(backColor1)) { context.Graphics.FillRectangle(brushColor2, rect); } @@ -5455,7 +5442,7 @@ private void DrawBackRoundedTopLeftWhite(RenderContext context, VisualOrientation orientation, GraphicsPath path) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Draw entire background in white context.Graphics.FillRectangle(Brushes.White, rect); @@ -5487,9 +5474,9 @@ private void DrawBackRoundedTopLight(RenderContext context, VisualOrientation orientation, GraphicsPath path) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Draw entire background in white - using (SolidBrush lightBrush = new(ControlPaint.LightLight(backColor1))) + using (SolidBrush lightBrush = new SolidBrush(ControlPaint.LightLight(backColor1))) { context.Graphics.FillRectangle(lightBrush, rect); } @@ -5535,7 +5522,7 @@ private void DrawBackRounded4(RenderContext context, VisualOrientation orientation, GraphicsPath path) { - using Clipping clip = new(context.Graphics, path); + using Clipping clip = new Clipping(context.Graphics, path); // Use standard helper routine to create appropriate color brush using (Brush backBrush = CreateColorBrush(gradientRect, backColor1, backColor2, backColorStyle, backColorAngle, orientation)) @@ -5543,7 +5530,7 @@ private void DrawBackRounded4(RenderContext context, context.Graphics.FillPath(backBrush, path); } - using (Pen linePen = new(backColor1)) + using (Pen linePen = new Pen(backColor1)) { // Adjust angle for the orientation switch (orientation) @@ -5578,7 +5565,7 @@ private void DrawBackRounding5(RenderContext context, rect.Inflate(-1, -1); // Prevent drawing over that ourside edge - using Clipping clip = new(context.Graphics, rect); + using Clipping clip = new Clipping(context.Graphics, rect); // Use standard helper routine to create appropriate color brush using Brush backBrush = CreateColorBrush(gradientRect, backColor1, backColor2, PaletteColorStyle.Rounding5, backColorAngle, @@ -5597,7 +5584,7 @@ private void DrawBackLinearShadow(RenderContext context, GraphicsPath path) { // Prevent drawing over that ourside edge - using Clipping clip = new(context.Graphics, rect); + using Clipping clip = new Clipping(context.Graphics, rect); // Use standard helper routine to create appropriate color brush using (Brush backBrush = CreateColorBrush(gradientRect, backColor1, backColor2, PaletteColorStyle.Linear, backColorAngle, @@ -5607,7 +5594,7 @@ private void DrawBackLinearShadow(RenderContext context, } // Use path gradient to give the outside of the area a shadow effect - using (PathGradientBrush borderBrush = new(path)) + using (PathGradientBrush borderBrush = new PathGradientBrush(path)) { borderBrush.Blend = _linearShadowBlend; borderBrush.CenterColor = backColor1; @@ -6159,7 +6146,7 @@ private static void PositionAlignContent([DisallowNull] StandardContentMemento m int spacingGap) { // Create client rectangle covering cell size - Rectangle cellRect = new(cellX, cellY, cellWidth, cellHeight); + Rectangle cellRect = new Rectangle(cellX, cellY, cellWidth, cellHeight); PaletteRelativeAlign drawHImage = paletteContent.GetContentImageH(state); PaletteRelativeAlign drawVImage = paletteContent.GetContentImageV(state); @@ -6504,30 +6491,31 @@ private void DrawDragDockingRoundedMiddle(RenderContext context, { Color borderColor = dragData.ActiveMiddle ? active : border; Color insideColor = dragData.ActiveMiddle ? active : inside; - using AntiAlias aa = new(context.Graphics); - using GraphicsPath borderPath = new(), - insidePath = new(); + using AntiAlias aa = new AntiAlias(context.Graphics); + using GraphicsPath borderPath = new GraphicsPath(), + insidePath = new GraphicsPath(); // Generate the graphics paths for the border and the inside area which is just inside the border Rectangle rect = dragData.RectMiddle; - Rectangle rectInside = new(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 4); + Rectangle rectInside = new Rectangle(rect.X + 2, rect.Y + 2, rect.Width - 4, rect.Height - 4); DrawDragDockingMiddleLines(borderPath, dragData.RectMiddle, 13); DrawDragDockingMiddleLines(insidePath, rectInside, 9); // Fill the entire border area - using (SolidBrush borderBrush = new(Color.FromArgb(196, Color.White))) + using (SolidBrush borderBrush = new SolidBrush(Color.FromArgb(196, Color.White))) { context.Graphics.FillPath(borderBrush, borderPath); } // Fill with gradient the area inside the border - RectangleF rectBoundsF = new(rect.X - 1, rect.Y - 1, rect.Width + 2, rect.Height + 2); - using (LinearGradientBrush insideBrush = new(rectBoundsF, Color.FromArgb(196, Color.White), insideColor, 90)) + RectangleF rectBoundsF = new RectangleF(rect.X - 1, rect.Y - 1, rect.Width + 2, rect.Height + 2); + using (LinearGradientBrush insideBrush = + new LinearGradientBrush(rectBoundsF, Color.FromArgb(196, Color.White), insideColor, 90)) { insideBrush.Blend = _dragRoundedInsideBlend; context.Graphics.FillPath(insideBrush, insidePath); } - using (Pen borderPen = new(borderColor)) + using (Pen borderPen = new Pen(borderColor)) { // Finally draw the actual border context.Graphics.DrawPath(borderPen, borderPath); @@ -6541,18 +6529,13 @@ private void DrawDragDockingRoundedMiddle(RenderContext context, private void DrawDragDockingMiddleLines(GraphicsPath path, Rectangle rect, int tabExtend) { - path.AddLines(new Point[] { new(rect.X, rect.Bottom - 2), - new(rect.X, rect.Y + 1), - new(rect.X + 1, rect.Y), - new(rect.Right - 1, rect.Y), - new(rect.Right, rect.Y + 1), - new(rect.Right, rect.Bottom - 6), - new(rect.Right - 2, rect.Bottom - 4), - new(rect.X + tabExtend, rect.Bottom - 4), - new(rect.X + tabExtend, rect.Bottom - 2), - new(rect.X + tabExtend - 1, rect.Bottom - 1), - new(rect.X + 1, rect.Bottom - 1), - new(rect.X, rect.Bottom - 2)}); + path.AddLines(new Point[] { + new Point(rect.X, rect.Bottom - 2), new Point(rect.X, rect.Y + 1), new Point(rect.X + 1, rect.Y), + new Point(rect.Right - 1, rect.Y), new Point(rect.Right, rect.Y + 1), + new Point(rect.Right, rect.Bottom - 6), new Point(rect.Right - 2, rect.Bottom - 4), + new Point(rect.X + tabExtend, rect.Bottom - 4), new Point(rect.X + tabExtend, rect.Bottom - 2), + new Point(rect.X + tabExtend - 1, rect.Bottom - 1), new Point(rect.X + 1, rect.Bottom - 1), + new Point(rect.X, rect.Bottom - 2)}); } private void DrawDragDockingRoundedRect(RenderContext context, @@ -6561,23 +6544,26 @@ private void DrawDragDockingRoundedRect(RenderContext context, Rectangle drawRect, int rounding) { - using AntiAlias aa = new(context.Graphics); - RectangleF rectBoundsF = new(drawRect.X - 1, drawRect.Y - 1, drawRect.Width + 2, drawRect.Height + 1); - Rectangle rectInside = new(drawRect.X + 2, drawRect.Y + 2, drawRect.Width - 4, drawRect.Height - 4); + using AntiAlias aa = new AntiAlias(context.Graphics); + RectangleF rectBoundsF = + new RectangleF(drawRect.X - 1, drawRect.Y - 1, drawRect.Width + 2, drawRect.Height + 1); + Rectangle rectInside = + new Rectangle(drawRect.X + 2, drawRect.Y + 2, drawRect.Width - 4, drawRect.Height - 4); using GraphicsPath borderPath = CreateBorderBackPath(true, true, drawRect, PaletteDrawBorders.All, 1, rounding, true, 0), insidePath = CreateBorderBackPath(true, true, rectInside, PaletteDrawBorders.All, 1, rounding - 1, true, 0); - using (SolidBrush borderBrush = new(Color.FromArgb(196, Color.White))) + using (SolidBrush borderBrush = new SolidBrush(Color.FromArgb(196, Color.White))) { context.Graphics.FillPath(borderBrush, borderPath); } - using (LinearGradientBrush insideBrush = new(rectBoundsF, Color.FromArgb(196, Color.White), inside, 90)) + using (LinearGradientBrush insideBrush = + new LinearGradientBrush(rectBoundsF, Color.FromArgb(196, Color.White), inside, 90)) { insideBrush.Blend = _dragRoundedInsideBlend; context.Graphics.FillPath(insideBrush, insidePath); } - using (Pen borderPen = new(border)) + using (Pen borderPen = new Pen(border)) { context.Graphics.DrawPath(borderPen, borderPath); } @@ -6588,7 +6574,7 @@ private void DrawDragDockingArrow(RenderContext context, Rectangle rect, VisualOrientation orientation) { - using GraphicsPath innerPath = new(); + using GraphicsPath innerPath = new GraphicsPath(); var angle = 0f; switch (orientation) { @@ -6597,18 +6583,18 @@ private void DrawDragDockingArrow(RenderContext context, rect.Y + ((rect.Height - DRAG_ARROW_WIDTH) / 2), DRAG_ARROW_HEIGHT, DRAG_ARROW_WIDTH); - innerPath.AddLines(new Point[] { new(rect.X + 1, rect.Top + 6), - new(rect.Right - 1, rect.Top + 1), - new(rect.Right - 1, rect.Bottom - 2)}); + innerPath.AddLines(new Point[] { + new Point(rect.X + 1, rect.Top + 6), new Point(rect.Right - 1, rect.Top + 1), + new Point(rect.Right - 1, rect.Bottom - 2)}); break; case VisualOrientation.Right: rect = new Rectangle(rect.Left + DRAG_ARROW_GAP, rect.Y + ((rect.Height - DRAG_ARROW_WIDTH) / 2), DRAG_ARROW_HEIGHT, DRAG_ARROW_WIDTH); - innerPath.AddLines(new Point[] { new(rect.X + 1, rect.Top + 1), - new(rect.X + 1, rect.Bottom - 2), - new(rect.Right - 1, rect.Top + 6) }); + innerPath.AddLines(new Point[] { + new Point(rect.X + 1, rect.Top + 1), new Point(rect.X + 1, rect.Bottom - 2), + new Point(rect.Right - 1, rect.Top + 6) }); angle = 180f; break; case VisualOrientation.Top: @@ -6616,9 +6602,9 @@ private void DrawDragDockingArrow(RenderContext context, rect.Bottom - DRAG_ARROW_HEIGHT - DRAG_ARROW_GAP - 1, DRAG_ARROW_WIDTH, DRAG_ARROW_HEIGHT); - innerPath.AddLines(new Point[] { new(rect.X + 1, rect.Bottom), - new(rect.Right - 1, rect.Bottom), - new(rect.X + 6, rect.Top + 1) }); + innerPath.AddLines(new Point[] { + new Point(rect.X + 1, rect.Bottom), new Point(rect.Right - 1, rect.Bottom), + new Point(rect.X + 6, rect.Top + 1) }); angle = 90f; break; case VisualOrientation.Bottom: @@ -6626,21 +6612,22 @@ private void DrawDragDockingArrow(RenderContext context, rect.Top + DRAG_ARROW_GAP, DRAG_ARROW_WIDTH, DRAG_ARROW_HEIGHT); - innerPath.AddLines(new Point[] { new(rect.X + 2, rect.Top + 1), - new(rect.Right - 2, rect.Top + 1), - new(rect.X + 6, rect.Bottom - 1) }); + innerPath.AddLines(new Point[] { + new Point(rect.X + 2, rect.Top + 1), new Point(rect.Right - 2, rect.Top + 1), + new Point(rect.X + 6, rect.Bottom - 1) }); angle = 270f; break; } // Draw background in white top highlight the arrow - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { context.Graphics.FillPath(Brushes.White, innerPath); } // Draw the actual arrow itself - using (LinearGradientBrush innerBrush = new(rect, ControlPaint.Dark(active), ControlPaint.Light(active), angle)) + using (LinearGradientBrush innerBrush = + new LinearGradientBrush(rect, ControlPaint.Dark(active), ControlPaint.Light(active), angle)) { context.Graphics.FillPath(innerBrush, innerPath); } @@ -6687,43 +6674,55 @@ private void DrawDragDockingSquaresBackground(Graphics? g, Color border, RenderDragDockingData dragData) { - if (g == null) throw new ArgumentNullException(nameof(g)); - if (dragData == null) throw new ArgumentNullException(nameof(dragData)); + if (g == null) + { + throw new ArgumentNullException(nameof(g)); + } + + if (dragData == null) + { + throw new ArgumentNullException(nameof(dragData)); + } Color start = Color.FromArgb(190, 190, 190); - using Pen borderPen = new(border); - using SolidBrush insideBrush = new(inside); - using LinearGradientBrush gradientLL = new(new Rectangle(-1, -1, 5, 5), start, inside, 0f), - gradientTL = new(new Rectangle(-1, 23, 5, 5), start, inside, 90f), - gradientCC = new(new Rectangle(24, 25, 5, 5), start, inside, 45f), - gradientLT = new(new Rectangle(28, -1, 5, 5), start, inside, 0f), - gradientML = new(new Rectangle(22, -1, 5, 5), start, inside, 0f), - gradientMT = new(new Rectangle(-1, 22, 5, 5), start, inside, 90f), - gradientTT = new(new Rectangle(-1, -1, 5, 5), start, inside, 90f); + using Pen borderPen = new Pen(border); + using SolidBrush insideBrush = new SolidBrush(inside); + using LinearGradientBrush gradientLL = + new LinearGradientBrush(new Rectangle(-1, -1, 5, 5), start, inside, 0f), + gradientTL = new LinearGradientBrush(new Rectangle(-1, 23, 5, 5), start, inside, 90f), + gradientCC = new LinearGradientBrush(new Rectangle(24, 25, 5, 5), start, inside, 45f), + gradientLT = new LinearGradientBrush(new Rectangle(28, -1, 5, 5), start, inside, 0f), + gradientML = new LinearGradientBrush(new Rectangle(22, -1, 5, 5), start, inside, 0f), + gradientMT = new LinearGradientBrush(new Rectangle(-1, 22, 5, 5), start, inside, 90f), + gradientTT = new LinearGradientBrush(new Rectangle(-1, -1, 5, 5), start, inside, 90f); // Draw all the background cross? if (dragData.ShowBack) { // Create points for a polygon - Point[] pts = {new(0, 29), new(23, 29), - new(29, 23), new(29, 0), - new(57, 0), new(57, 23), - new(63, 29), new(87, 29), - new(87, 57), new(63, 57), - new(57, 63), new(57, 87), - new(29, 87), new(29, 63), - new(23, 57), new(0, 57)}; + Point[] pts = { + new Point(0, 29), new Point(23, 29), new Point(29, 23), new Point(29, 0), new Point(57, 0), + new Point(57, 23), new Point(63, 29), new Point(87, 29), new Point(87, 57), new Point(63, 57), + new Point(57, 63), new Point(57, 87), new Point(29, 87), new Point(29, 63), new Point(23, 57), + new Point(0, 57)}; // Fill this area with a solid colour g.FillPolygon(insideBrush, pts); // Draw shadow at some of the box edges - g.FillPolygon(gradientLL, new Point[] { new(1, 57), new(1, 30), new(4, 33), new(4, 57) }); - g.FillPolygon(gradientTL, new Point[] { new(1, 30), new(25, 30), new(27, 33), new(3, 33) }); - g.FillPolygon(gradientCC, new Point[] { new(23, 30), new(30, 23), new(33, 26), new(26, 33) }); - g.FillPolygon(gradientLT, new Point[] { new(30, 1), new(30, 24), new(33, 26), new(33, 4) }); - g.FillPolygon(gradientTT, new Point[] { new(30, 1), new(57, 1), new(57, 4), new(33, 4) }); - g.FillPolygon(gradientLT, new Point[] { new(30, 63), new(30, 87), new(33, 87), new(33, 66) }); - g.FillPolygon(gradientTL, new Point[] { new(63, 30), new(87, 30), new(87, 33), new(66, 33) }); + g.FillPolygon(gradientLL, new Point[] { new Point(1, 57), new Point(1, 30), new Point(4, 33), + new Point(4, 57) }); + g.FillPolygon(gradientTL, new Point[] { new Point(1, 30), new Point(25, 30), new Point(27, 33), + new Point(3, 33) }); + g.FillPolygon(gradientCC, new Point[] { new Point(23, 30), new Point(30, 23), new Point(33, 26), + new Point(26, 33) }); + g.FillPolygon(gradientLT, new Point[] { new Point(30, 1), new Point(30, 24), new Point(33, 26), + new Point(33, 4) }); + g.FillPolygon(gradientTT, new Point[] { new Point(30, 1), new Point(57, 1), new Point(57, 4), + new Point(33, 4) }); + g.FillPolygon(gradientLT, new Point[] { new Point(30, 63), new Point(30, 87), new Point(33, 87), + new Point(33, 66) }); + g.FillPolygon(gradientTL, new Point[] { new Point(63, 30), new Point(87, 30), new Point(87, 33), + new Point(66, 33) }); // Draw outline in darker colour g.DrawPolygon(borderPen, pts); @@ -6731,22 +6730,25 @@ private void DrawDragDockingSquaresBackground(Graphics? g, else if (dragData is { ShowLeft: true, ShowRight: true }) { // Create points for a polygon - Point[] pts = {new(0, 29), new(23, 29), - new(29, 23), new(57, 23), - new(63, 29), new(87, 29), - new(87, 57), new(63, 57), - new(57, 63), new(29, 63), - new(23, 57), new(0, 57)}; + Point[] pts = { + new Point(0, 29), new Point(23, 29), new Point(29, 23), new Point(57, 23), new Point(63, 29), + new Point(87, 29), new Point(87, 57), new Point(63, 57), new Point(57, 63), new Point(29, 63), + new Point(23, 57), new Point(0, 57)}; // Fill this area with a solid colour g.FillPolygon(insideBrush, pts); // Draw shadow at some of the box edges - g.FillPolygon(gradientLL, new Point[] { new(1, 57), new(1, 30), new(4, 33), new(4, 57) }); - g.FillPolygon(gradientTL, new Point[] { new(1, 30), new(25, 30), new(27, 33), new(3, 33) }); - g.FillPolygon(gradientCC, new Point[] { new(23, 30), new(30, 23), new(33, 26), new(26, 33) }); - g.FillPolygon(gradientMT, new Point[] { new(30, 24), new(57, 24), new(60, 27), new(33, 27) }); - g.FillPolygon(gradientTL, new Point[] { new(63, 30), new(87, 30), new(87, 33), new(66, 33) }); + g.FillPolygon(gradientLL, new Point[] { new Point(1, 57), new Point(1, 30), new Point(4, 33), + new Point(4, 57) }); + g.FillPolygon(gradientTL, new Point[] { new Point(1, 30), new Point(25, 30), new Point(27, 33), + new Point(3, 33) }); + g.FillPolygon(gradientCC, new Point[] { new Point(23, 30), new Point(30, 23), new Point(33, 26), + new Point(26, 33) }); + g.FillPolygon(gradientMT, new Point[] { new Point(30, 24), new Point(57, 24), new Point(60, 27), + new Point(33, 27) }); + g.FillPolygon(gradientTL, new Point[] { new Point(63, 30), new Point(87, 30), new Point(87, 33), + new Point(66, 33) }); // Draw outline in darker colour g.DrawPolygon(borderPen, pts); @@ -6766,21 +6768,24 @@ private void DrawDragDockingSquaresBackground(Graphics? g, else if (dragData is { ShowTop: true, ShowBottom: true }) { // Create points for a polygon - Point[] pts = {new(23, 29), new(29, 23), - new(29, 0), new(57, 0), - new(57, 23), new(63, 29), - new(63, 57), new(57, 63), - new(57, 87), new(29, 87), - new(29, 63), new(23, 57)}; + Point[] pts = { + new Point(23, 29), new Point(29, 23), new Point(29, 0), new Point(57, 0), new Point(57, 23), + new Point(63, 29), new Point(63, 57), new Point(57, 63), new Point(57, 87), new Point(29, 87), + new Point(29, 63), new Point(23, 57)}; // Fill this area with a solid colour g.FillPolygon(insideBrush, pts); - g.FillPolygon(gradientLT, new Point[] { new(30, 1), new(30, 24), new(33, 26), new(33, 4) }); - g.FillPolygon(gradientTT, new Point[] { new(30, 1), new(57, 1), new(57, 4), new(33, 4) }); - g.FillPolygon(gradientCC, new Point[] { new(23, 30), new(30, 23), new(33, 26), new(26, 33) }); - g.FillPolygon(gradientML, new Point[] { new(24, 57), new(24, 30), new(27, 33), new(27, 60) }); - g.FillPolygon(gradientLT, new Point[] { new(30, 63), new(30, 87), new(33, 87), new(33, 66) }); + g.FillPolygon(gradientLT, new Point[] { new Point(30, 1), new Point(30, 24), new Point(33, 26), + new Point(33, 4) }); + g.FillPolygon(gradientTT, new Point[] { new Point(30, 1), new Point(57, 1), new Point(57, 4), + new Point(33, 4) }); + g.FillPolygon(gradientCC, new Point[] { new Point(23, 30), new Point(30, 23), new Point(33, 26), + new Point(26, 33) }); + g.FillPolygon(gradientML, new Point[] { new Point(24, 57), new Point(24, 30), new Point(27, 33), + new Point(27, 60) }); + g.FillPolygon(gradientLT, new Point[] { new Point(30, 63), new Point(30, 87), new Point(33, 87), + new Point(33, 66) }); // Draw outline in darker colour g.DrawPolygon(borderPen, pts); @@ -6800,10 +6805,9 @@ private void DrawDragDockingSquaresBackground(Graphics? g, else if (dragData.ShowMiddle) { // Only draw the background for the middle square - Point[] pts = {new(23, 29), new(29, 23), - new(57, 23), new(63, 29), - new(63, 57), new(57, 63), - new(29, 63), new(23, 57)}; + Point[] pts = { + new Point(23, 29), new Point(29, 23), new Point(57, 23), new Point(63, 29), new Point(63, 57), + new Point(57, 63), new Point(29, 63), new Point(23, 57)}; g.FillPolygon(insideBrush, pts); g.DrawPolygon(borderPen, pts); @@ -6815,20 +6819,28 @@ private void DrawDragDockingSquaresLeft(Graphics? g, Color inactiveColor, RenderDragDockingData dragData) { - if (g == null) throw new ArgumentNullException(nameof(g)); + if (g == null) + { + throw new ArgumentNullException(nameof(g)); + } Color borderColour = ControlPaint.Dark(activeColor); // Draw border around the window square - using Pen borderPen = new(borderColour), - dashPen = new(borderColour), - shadow1Pen = new(_190), - shadow2Pen = new(_218); + using Pen borderPen = new Pen(borderColour), + dashPen = new Pen(borderColour), + shadow1Pen = new Pen(_190), + shadow2Pen = new Pen(_218); // Draw the caption area at top of window - using LinearGradientBrush middleBrush = new(new Rectangle(4, 33, 23, 1), ControlPaint.LightLight(inactiveColor), activeColor, 0f), - bottomBrush = new(new Rectangle(4, 34, 23, 1), ControlPaint.Light(activeColor), activeColor, 0f), - positionBrush = new(new Rectangle(4, 35, 11, 1), Color.FromArgb(160, inactiveColor), Color.FromArgb(64, inactiveColor), 0f), - arrowBrush = new(new Rectangle(18, 40, 5, 8), borderColour, Color.FromArgb(175, borderColour), 0f); + using LinearGradientBrush middleBrush = + new LinearGradientBrush(new Rectangle(4, 33, 23, 1), ControlPaint.LightLight(inactiveColor), + activeColor, 0f), + bottomBrush = new LinearGradientBrush(new Rectangle(4, 34, 23, 1), ControlPaint.Light(activeColor), + activeColor, 0f), + positionBrush = new LinearGradientBrush(new Rectangle(4, 35, 11, 1), Color.FromArgb(160, inactiveColor), + Color.FromArgb(64, inactiveColor), 0f), + arrowBrush = new LinearGradientBrush(new Rectangle(18, 40, 5, 8), borderColour, + Color.FromArgb(175, borderColour), 0f); // Draw border g.DrawLine(borderPen, 4, 33, 4, 53); g.DrawLine(borderPen, 27, 33, 27, 53); @@ -6856,7 +6868,8 @@ private void DrawDragDockingSquaresLeft(Graphics? g, g.DrawLine(dashPen, 15, 37, 15, 52); // Draw the direction arrow - g.FillPolygon(arrowBrush, new Point[] { new(19, 44), new(23, 40), new(23, 48), new(19, 44) }); + g.FillPolygon(arrowBrush, new Point[] { new Point(19, 44), new Point(23, 40), new Point(23, 48), + new Point(19, 44) }); // If active, then draw highlighted border if (dragData.ActiveLeft) @@ -6875,15 +6888,20 @@ private void DrawDragDockingSquaresRight(Graphics? g, Color borderColour = ControlPaint.Dark(activeColor); // Draw border around the window square - using Pen borderPen = new(borderColour), - dashPen = new(borderColour), - shadow1Pen = new(_190), - shadow2Pen = new(_218); + using Pen borderPen = new Pen(borderColour), + dashPen = new Pen(borderColour), + shadow1Pen = new Pen(_190), + shadow2Pen = new Pen(_218); // Draw the caption area at top of window - using LinearGradientBrush middleBrush = new(new Rectangle(60, 33, 23, 1), ControlPaint.LightLight(inactiveColor), activeColor, 0f), - bottomBrush = new(new Rectangle(60, 34, 23, 1), ControlPaint.Light(activeColor), activeColor, 0f), - positionBrush = new(new Rectangle(71, 35, 11, 1), Color.FromArgb(160, inactiveColor), Color.FromArgb(64, inactiveColor), 180f), - arrowBrush = new(new Rectangle(68, 40, 5, 8), borderColour, Color.FromArgb(175, borderColour), 180f); + using LinearGradientBrush middleBrush = + new LinearGradientBrush(new Rectangle(60, 33, 23, 1), ControlPaint.LightLight(inactiveColor), + activeColor, 0f), + bottomBrush = new LinearGradientBrush(new Rectangle(60, 34, 23, 1), ControlPaint.Light(activeColor), + activeColor, 0f), + positionBrush = new LinearGradientBrush(new Rectangle(71, 35, 11, 1), + Color.FromArgb(160, inactiveColor), Color.FromArgb(64, inactiveColor), 180f), + arrowBrush = new LinearGradientBrush(new Rectangle(68, 40, 5, 8), borderColour, + Color.FromArgb(175, borderColour), 180f); // Draw border g.DrawLine(borderPen, 60, 33, 60, 53); g.DrawLine(borderPen, 83, 33, 83, 53); @@ -6911,7 +6929,8 @@ private void DrawDragDockingSquaresRight(Graphics? g, g.DrawLine(dashPen, 72, 37, 72, 52); // Draw the direction arrow - g.FillPolygon(arrowBrush, new Point[] { new(69, 44), new(65, 40), new(65, 48), new(69, 44) }); + g.FillPolygon(arrowBrush, new Point[] { new Point(69, 44), new Point(65, 40), new Point(65, 48), + new Point(69, 44) }); // If active, then draw highlighted border if (dragData.ActiveRight) @@ -6930,15 +6949,20 @@ private void DrawDragDockingSquaresTop(Graphics? g, Color borderColour = ControlPaint.Dark(activeColor); // Draw border around the window square - using Pen borderPen = new(borderColour), - dashPen = new(borderColour), - shadow1Pen = new(_190), - shadow2Pen = new(_218); + using Pen borderPen = new Pen(borderColour), + dashPen = new Pen(borderColour), + shadow1Pen = new Pen(_190), + shadow2Pen = new Pen(_218); // Draw the caption area at top of window - using LinearGradientBrush middleBrush = new(new Rectangle(33, 5, 20, 1), ControlPaint.LightLight(inactiveColor), activeColor, 0f), - bottomBrush = new(new Rectangle(33, 6, 20, 1), ControlPaint.Light(activeColor), activeColor, 0f), - positionBrush = new(new Rectangle(34, 6, 19, 10), Color.FromArgb(160, inactiveColor), Color.FromArgb(64, inactiveColor), 90f), - arrowBrush = new(new Rectangle(39, 40, 8, 4), borderColour, Color.FromArgb(175, borderColour), 90f); + using LinearGradientBrush middleBrush = + new LinearGradientBrush(new Rectangle(33, 5, 20, 1), ControlPaint.LightLight(inactiveColor), + activeColor, 0f), + bottomBrush = new LinearGradientBrush(new Rectangle(33, 6, 20, 1), ControlPaint.Light(activeColor), + activeColor, 0f), + positionBrush = new LinearGradientBrush(new Rectangle(34, 6, 19, 10), + Color.FromArgb(160, inactiveColor), Color.FromArgb(64, inactiveColor), 90f), + arrowBrush = new LinearGradientBrush(new Rectangle(39, 40, 8, 4), borderColour, + Color.FromArgb(175, borderColour), 90f); // Draw border g.DrawLine(borderPen, 33, 4, 53, 4); g.DrawLine(borderPen, 53, 4, 53, 27); @@ -6966,7 +6990,8 @@ private void DrawDragDockingSquaresTop(Graphics? g, g.DrawLine(dashPen, 35, 15, 53, 15); // Draw the direction arrow - g.FillPolygon(arrowBrush, new Point[] { new(43, 18), new(47, 23), new(39, 23), new(43, 18) }); + g.FillPolygon(arrowBrush, new Point[] { new Point(43, 18), new Point(47, 23), new Point(39, 23), + new Point(43, 18) }); // If active, then draw highlighted border if (dragData.ActiveTop) @@ -6985,15 +7010,20 @@ private void DrawDragDockingSquaresBottom(Graphics? g, Color borderColour = ControlPaint.Dark(activeColor); // Draw border around the window square - using Pen borderPen = new(borderColour), - dashPen = new(borderColour), - shadow1Pen = new(_190), - shadow2Pen = new(_218); + using Pen borderPen = new Pen(borderColour), + dashPen = new Pen(borderColour), + shadow1Pen = new Pen(_190), + shadow2Pen = new Pen(_218); // Draw the caption area at top of window - using LinearGradientBrush middleBrush = new(new Rectangle(33, 61, 20, 1), ControlPaint.LightLight(inactiveColor), activeColor, 0f), - bottomBrush = new(new Rectangle(33, 62, 20, 1), ControlPaint.Light(activeColor), activeColor, 0f), - positionBrush = new(new Rectangle(34, 72, 19, 11), Color.FromArgb(160, inactiveColor), Color.FromArgb(64, inactiveColor), 270f), - arrowBrush = new(new Rectangle(39, 66, 8, 4), borderColour, Color.FromArgb(175, borderColour), 270f); + using LinearGradientBrush middleBrush = + new LinearGradientBrush(new Rectangle(33, 61, 20, 1), ControlPaint.LightLight(inactiveColor), + activeColor, 0f), + bottomBrush = new LinearGradientBrush(new Rectangle(33, 62, 20, 1), ControlPaint.Light(activeColor), + activeColor, 0f), + positionBrush = new LinearGradientBrush(new Rectangle(34, 72, 19, 11), + Color.FromArgb(160, inactiveColor), Color.FromArgb(64, inactiveColor), 270f), + arrowBrush = new LinearGradientBrush(new Rectangle(39, 66, 8, 4), borderColour, + Color.FromArgb(175, borderColour), 270f); // Draw border g.DrawLine(borderPen, 33, 60, 53, 60); g.DrawLine(borderPen, 53, 60, 53, 83); @@ -7021,7 +7051,8 @@ private void DrawDragDockingSquaresBottom(Graphics? g, g.DrawLine(dashPen, 35, 73, 53, 73); // Draw the direction arrow - g.FillPolygon(arrowBrush, new Point[] { new(43, 71), new(47, 67), new(40, 67), new(43, 71) }); + g.FillPolygon(arrowBrush, new Point[] { new Point(43, 71), new Point(47, 67), new Point(40, 67), + new Point(43, 71) }); // If active, then draw highlighted border if (dragData.ActiveBottom) @@ -7040,13 +7071,16 @@ private void DrawDragDockingSquaresMiddle(Graphics? g, Color borderColour = ControlPaint.Dark(activeColor); // Draw border around the window square - using Pen borderPen = new(borderColour), - dashPen = new(borderColour), - shadow1Pen = new(_190), - shadow2Pen = new(_218); + using Pen borderPen = new Pen(borderColour), + dashPen = new Pen(borderColour), + shadow1Pen = new Pen(_190), + shadow2Pen = new Pen(_218); // Draw the caption area at top of window - using (LinearGradientBrush middleBrush = new(new Rectangle(32, 34, 21, 1), ControlPaint.LightLight(inactiveColor), activeColor, 0f), - bottomBrush = new(new Rectangle(32, 35, 21, 1), ControlPaint.Light(activeColor), activeColor, 0f)) + using (LinearGradientBrush middleBrush = + new LinearGradientBrush(new Rectangle(32, 34, 21, 1), ControlPaint.LightLight(inactiveColor), + activeColor, 0f), + bottomBrush = new LinearGradientBrush(new Rectangle(32, 35, 21, 1), ControlPaint.Light(activeColor), + activeColor, 0f)) { // Draw border g.DrawLine(borderPen, 32, 32, 54, 32); @@ -7077,7 +7111,7 @@ private void DrawDragDockingSquaresMiddle(Graphics? g, g.FillRectangle(SystemBrushes.Window, 49, 51, 5, 3); // Fill the inner indicator area - using (SolidBrush innerBrush = new(Color.FromArgb(64, inactiveColor))) + using (SolidBrush innerBrush = new SolidBrush(Color.FromArgb(64, inactiveColor))) { g.FillRectangle(innerBrush, 34, 36, 19, 13); g.FillRectangle(innerBrush, 34, 49, 7, 3); @@ -7162,10 +7196,10 @@ protected virtual IDisposable DrawRibbonGroupAreaBorder1And2(RenderContext conte // Dispose of existing values cache.Dispose(); - GraphicsPath outsidePath = new(); - GraphicsPath insidePathN = new(); - GraphicsPath insidePathL = new(); - GraphicsPath shadowPath = new(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePathN = new GraphicsPath(); + GraphicsPath insidePathL = new GraphicsPath(); + GraphicsPath shadowPath = new GraphicsPath(); // Create path for the entire border outsidePath.AddLine(rect.Left + 2, rect.Top, rect.Right - 3, rect.Top); @@ -7191,12 +7225,12 @@ protected virtual IDisposable DrawRibbonGroupAreaBorder1And2(RenderContext conte shadowPath.AddLine(rect.Right - 4, rect.Bottom, rect.Right, rect.Bottom - 3); shadowPath.AddLine(rect.Right, rect.Bottom - 3, rect.Right, rect.Top + 3); - LinearGradientBrush insideBrush = new(rect, Color.Transparent, c2, 95f); + LinearGradientBrush insideBrush = new LinearGradientBrush(rect, Color.Transparent, c2, 95f); cache.InsidePen = new Pen(insideBrush); - Rectangle rectGradient = new(rect.Left - 1, rect.Top, rect.Width + 2, rect.Height + 1); - LinearGradientBrush shadowBrushN = new(rectGradient, _darken8, _darken38, 90f); - LinearGradientBrush shadowBrushL = new(rectGradient, _darken8, _darken18, 90f); + Rectangle rectGradient = new Rectangle(rect.Left - 1, rect.Top, rect.Width + 2, rect.Height + 1); + LinearGradientBrush shadowBrushN = new LinearGradientBrush(rectGradient, _darken8, _darken38, 90f); + LinearGradientBrush shadowBrushL = new LinearGradientBrush(rectGradient, _darken8, _darken18, 90f); cache.ShadowPenN = new Pen(shadowBrushN); cache.ShadowPenL = new Pen(shadowBrushL); @@ -7219,12 +7253,12 @@ protected virtual IDisposable DrawRibbonGroupAreaBorder1And2(RenderContext conte context.Graphics.FillPath(cache.FillBrush, cache.OutsidePath); // Clip drawing to the outside border - using (Clipping clip = new(context.Graphics, cache.OutsidePath)) + using (Clipping clip = new Clipping(context.Graphics, cache.OutsidePath)) { context.Graphics.FillPath(cache.FillTopBrush, cache.OutsidePath); } - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { // Draw the outside of the entire border line context.Graphics.DrawPath(cache.OutsidePen, cache.OutsidePath); @@ -7290,7 +7324,9 @@ protected virtual IDisposable DrawRibbonGroupAreaBorder3And4(RenderContext conte innerRect.Height -= 3; var halfHeight = innerRect.Height / 2; cache.BorderRect = innerRect; - cache.BorderPoints = new Point[] { new(innerRect.X, rect.Y), new(innerRect.X, innerRect.Bottom), new(innerRect.Right, innerRect.Bottom), new(innerRect.Right, innerRect.Top) }; + cache.BorderPoints = new Point[] { new Point(innerRect.X, rect.Y), + new Point(innerRect.X, innerRect.Bottom), new Point(innerRect.Right, innerRect.Bottom), + new Point(innerRect.Right, innerRect.Top) }; cache.BackRect1 = new Rectangle(innerRect.X, innerRect.Y, rect.Width, halfHeight); cache.BackRect2 = new Rectangle(innerRect.X, innerRect.Y + halfHeight, innerRect.Width, innerRect.Height - halfHeight); cache.BackBrush1 = new LinearGradientBrush(new RectangleF(cache.BackRect1.X - 1, cache.BackRect1.Y - 1, cache.BackRect1.Width + 2, cache.BackRect1.Height + 1), c3, c4, 90f); @@ -7364,9 +7400,9 @@ protected virtual IDisposable DrawRibbonGroupAreaBorderContext(RenderContext con // Dispose of existing values cache.Dispose(); - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); - GraphicsPath shadowPath = new(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); + GraphicsPath shadowPath = new GraphicsPath(); // Create path for the entire border outsidePath.AddLine(rect.Left + 2, rect.Top, rect.Right - 3, rect.Top); @@ -7391,11 +7427,11 @@ protected virtual IDisposable DrawRibbonGroupAreaBorderContext(RenderContext con shadowPath.AddLine(rect.Right - 4, rect.Bottom, rect.Right, rect.Bottom - 3); shadowPath.AddLine(rect.Right, rect.Bottom - 3, rect.Right, rect.Top + 3); - LinearGradientBrush insideBrush = new(rect, Color.Transparent, c2, 95f); + LinearGradientBrush insideBrush = new LinearGradientBrush(rect, Color.Transparent, c2, 95f); cache.InsidePen = new Pen(insideBrush); - Rectangle rectGradient = new(rect.Left - 1, rect.Top, rect.Width + 2, rect.Height + 1); - LinearGradientBrush shadowBrush = new(rectGradient, _darken8, _darken38, 90f); + Rectangle rectGradient = new Rectangle(rect.Left - 1, rect.Top, rect.Width + 2, rect.Height + 1); + LinearGradientBrush shadowBrush = new LinearGradientBrush(rectGradient, _darken8, _darken38, 90f); cache.ShadowPen = new Pen(shadowBrush); cache.FillBrush = new LinearGradientBrush(rect, Color.White, _242, 90f) @@ -7416,12 +7452,12 @@ protected virtual IDisposable DrawRibbonGroupAreaBorderContext(RenderContext con context.Graphics.FillPath(cache.FillBrush, cache.OutsidePath); // Clip drawing to the outside border - using (Clipping clip = new(context.Graphics, cache.OutsidePath)) + using (Clipping clip = new Clipping(context.Graphics, cache.OutsidePath)) { context.Graphics.FillPath(cache.FillTopBrush, cache.OutsidePath); } - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { // Draw the outside of the entire border line context.Graphics.DrawPath(cache.OutsidePen, cache.OutsidePath); @@ -7516,7 +7552,7 @@ protected virtual IDisposable DrawRibbonTabTracking2007(PaletteRibbonShape shape } // Draw the actual border - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { context.Graphics.DrawPath(cache.OutsidePen, cache.OutsidePath); } @@ -7551,7 +7587,7 @@ protected virtual void DrawRibbonTabTrackingTop2007(Rectangle rect, MementoRibbonTabTracking2007 cache) { // Create path for a curved border around the tab - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); outsidePath.AddLine(rect.Left + 1, rect.Bottom - 2, rect.Left + 1, rect.Top + 1.5f); outsidePath.AddLine(rect.Left + 1, rect.Top + 1.5f, rect.Left + 3, rect.Top); outsidePath.AddLine(rect.Left + 3, rect.Top, rect.Right - 4, rect.Top); @@ -7559,7 +7595,7 @@ protected virtual void DrawRibbonTabTrackingTop2007(Rectangle rect, outsidePath.AddLine(rect.Right - 2, rect.Top + 1.5f, rect.Right - 2, rect.Bottom - 2); // Create path for the top hightlight line - GraphicsPath topPath = new(); + GraphicsPath topPath = new GraphicsPath(); topPath.AddLine(rect.Left + 3, rect.Top + 2, rect.Left + 4, rect.Top + 1); topPath.AddLine(rect.Left + 4, rect.Top + 1, rect.Right - 5, rect.Top + 1); topPath.AddLine(rect.Right - 5, rect.Top + 1, rect.Right - 4, rect.Top + 2); @@ -7570,8 +7606,9 @@ protected virtual void DrawRibbonTabTrackingTop2007(Rectangle rect, var half2 = full - half1; cache.Half1Rect = new Rectangle(rect.Left + 3, rect.Top + 2, rect.Width - 6, half1); cache.Half2Rect = new Rectangle(rect.Left + 3, rect.Top + 2 + half1, rect.Width - 6, half2); - Rectangle fullRect = new(rect.Left + 3, rect.Top + 2, rect.Width - 6, half1 + half2); - RectangleF half1RectF = new(cache.Half1Rect.Left - 1, cache.Half1Rect.Top - 0.5f, cache.Half1Rect.Width + 2, cache.Half1Rect.Height + 1); + Rectangle fullRect = new Rectangle(rect.Left + 3, rect.Top + 2, rect.Width - 6, half1 + half2); + RectangleF half1RectF = new RectangleF(cache.Half1Rect.Left - 1, cache.Half1Rect.Top - 0.5f, + cache.Half1Rect.Width + 2, cache.Half1Rect.Height + 1); cache.Half2RectF = new RectangleF(cache.Half2Rect.Left - 1, cache.Half2Rect.Top - 0.5f, cache.Half2Rect.Width + 2, cache.Half2Rect.Height + 1); cache.Half1LeftBrush = new LinearGradientBrush(half1RectF, Color.FromArgb(85, c2), Color.Transparent, 0f) @@ -7589,7 +7626,7 @@ protected virtual void DrawRibbonTabTrackingTop2007(Rectangle rect, cache.EllipseRect = new RectangleF(fullRect.Left - (fullRect.Width / 8), fullRect.Top, fullRect.Width * 1.25f, fullRect.Height); // Cannot draw a path that contains a zero sized element - GraphicsPath ellipsePath = new(); + GraphicsPath ellipsePath = new GraphicsPath(); if (cache.EllipseRect is { Width: > 0, Height: > 0 }) { ellipsePath.AddEllipse(cache.EllipseRect); @@ -7597,13 +7634,14 @@ protected virtual void DrawRibbonTabTrackingTop2007(Rectangle rect, { CenterColor = Color.FromArgb(92, Color.White) }; - PointF centerPoint = new(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); + PointF centerPoint = new PointF(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), + cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); cache.EllipseBrush.CenterPoint = centerPoint; cache.EllipseBrush.SurroundColors = new[] { Color.Transparent }; } - RectangleF vertRectF = new(rect.Left - 1, rect.Top + 2, rect.Width + 2, rect.Height - 2); - RectangleF horzRectF = new(rect.Left + 1, rect.Top, rect.Width - 2, rect.Height); + RectangleF vertRectF = new RectangleF(rect.Left - 1, rect.Top + 2, rect.Width + 2, rect.Height - 2); + RectangleF horzRectF = new RectangleF(rect.Left + 1, rect.Top, rect.Width - 2, rect.Height); cache.OutsideBrush = new LinearGradientBrush(vertRectF, Color.Transparent, _whiten128, 90f) { Blend = _ribbonOutBlend @@ -7645,7 +7683,7 @@ protected virtual void DrawRibbonTabTrackingLeft2007(Rectangle rect, MementoRibbonTabTracking2007 cache) { // Create path for a curved border around the tab - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); outsidePath.AddLine(rect.Right - 2, rect.Bottom - 2, rect.Left + 1.5f, rect.Bottom - 2); outsidePath.AddLine(rect.Left + 1.5f, rect.Bottom - 2, rect.Left, rect.Bottom - 4); outsidePath.AddLine(rect.Left, rect.Bottom - 4, rect.Left, rect.Top + 3); @@ -7653,7 +7691,7 @@ protected virtual void DrawRibbonTabTrackingLeft2007(Rectangle rect, outsidePath.AddLine(rect.Left + 1.5f, rect.Top + 1, rect.Right - 2, rect.Top + 1); // Create path for the top hightlight line - GraphicsPath topPath = new(); + GraphicsPath topPath = new GraphicsPath(); topPath.AddLine(rect.Left + 2, rect.Bottom - 4, rect.Left + 1, rect.Bottom - 5); topPath.AddLine(rect.Left + 1, rect.Bottom - 5, rect.Left + 1, rect.Top + 4); topPath.AddLine(rect.Left + 1, rect.Top + 4, rect.Left + 2, rect.Top + 3); @@ -7664,8 +7702,9 @@ protected virtual void DrawRibbonTabTrackingLeft2007(Rectangle rect, var half2 = full - half1; cache.Half1Rect = new Rectangle(rect.Left + 2, rect.Top + 3, half1, rect.Height - 6); cache.Half2Rect = new Rectangle(rect.Left + 2 + half1, rect.Top + 3, half2, rect.Height - 6); - Rectangle fullRect = new(rect.Left + 2, rect.Top + 3, half1 + half2, rect.Height - 6); - RectangleF half1RectF = new(cache.Half1Rect.Left - 0.5f, cache.Half1Rect.Top - 1f, cache.Half1Rect.Width + 1, cache.Half1Rect.Height + 2); + Rectangle fullRect = new Rectangle(rect.Left + 2, rect.Top + 3, half1 + half2, rect.Height - 6); + RectangleF half1RectF = new RectangleF(cache.Half1Rect.Left - 0.5f, cache.Half1Rect.Top - 1f, + cache.Half1Rect.Width + 1, cache.Half1Rect.Height + 2); cache.Half2RectF = new RectangleF(cache.Half2Rect.Left - 0.5f, cache.Half2Rect.Top - 1f, cache.Half2Rect.Width + 1, cache.Half2Rect.Height + 2); cache.Half1LeftBrush = new LinearGradientBrush(half1RectF, Color.FromArgb(85, c2), Color.Transparent, 90f) @@ -7682,7 +7721,7 @@ protected virtual void DrawRibbonTabTrackingLeft2007(Rectangle rect, // Create ellipse information for lightening the bottom hald cache.EllipseRect = new RectangleF(fullRect.Left, fullRect.Top - (fullRect.Width / 8), fullRect.Width, fullRect.Height * 1.25f); - GraphicsPath ellipsePath = new(); + GraphicsPath ellipsePath = new GraphicsPath(); // Cannot draw a path that contains a zero sized element if (cache.EllipseRect is { Width: > 0, Height: > 0 }) { @@ -7691,13 +7730,14 @@ protected virtual void DrawRibbonTabTrackingLeft2007(Rectangle rect, { CenterColor = Color.FromArgb(48, Color.White) }; - PointF centerPoint = new(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); + PointF centerPoint = new PointF(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), + cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); cache.EllipseBrush.CenterPoint = centerPoint; cache.EllipseBrush.SurroundColors = new[] { Color.Transparent }; } - RectangleF vertRectF = new(rect.Left + 2, rect.Top - 1, rect.Width - 2, rect.Height + 2); - RectangleF horzRectF = new(rect.Left, rect.Top + 1, rect.Width, rect.Height - 2); + RectangleF vertRectF = new RectangleF(rect.Left + 2, rect.Top - 1, rect.Width - 2, rect.Height + 2); + RectangleF horzRectF = new RectangleF(rect.Left, rect.Top + 1, rect.Width, rect.Height - 2); cache.OutsideBrush = new LinearGradientBrush(vertRectF, Color.Transparent, _whiten128, 180f) { Blend = _ribbonOutBlend @@ -7739,7 +7779,7 @@ protected virtual void DrawRibbonTabTrackingRight2007(Rectangle rect, MementoRibbonTabTracking2007 cache) { // Create path for a curved border around the tab - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); outsidePath.AddLine(rect.Left + 1, rect.Bottom - 2, rect.Right - 2.5f, rect.Bottom - 2); outsidePath.AddLine(rect.Right - 2.5f, rect.Bottom - 2, rect.Right - 1, rect.Bottom - 4); outsidePath.AddLine(rect.Right - 1, rect.Bottom - 4, rect.Right - 1, rect.Top + 3); @@ -7747,7 +7787,7 @@ protected virtual void DrawRibbonTabTrackingRight2007(Rectangle rect, outsidePath.AddLine(rect.Right - 2.5f, rect.Top + 1, rect.Left + 1, rect.Top + 1); // Create path for the top hightlight line - GraphicsPath topPath = new(); + GraphicsPath topPath = new GraphicsPath(); topPath.AddLine(rect.Right - 3, rect.Bottom - 4, rect.Right - 2, rect.Bottom - 5); topPath.AddLine(rect.Right - 2, rect.Bottom - 5, rect.Right - 2, rect.Top + 4); topPath.AddLine(rect.Right - 2, rect.Top + 4, rect.Right - 3, rect.Top + 3); @@ -7758,8 +7798,10 @@ protected virtual void DrawRibbonTabTrackingRight2007(Rectangle rect, var half2 = full - half1; cache.Half1Rect = new Rectangle(rect.Right - 2 - half1, rect.Top + 3, half1, rect.Height - 6); cache.Half2Rect = new Rectangle(rect.Right - 2 - half1 - half2, rect.Top + 3, half2, rect.Height - 6); - Rectangle fullRect = new(rect.Right - 2 - half1 - half2, rect.Top + 3, half1 + half2, rect.Height - 6); - RectangleF half1RectF = new(cache.Half1Rect.Left - 0.5f, cache.Half1Rect.Top - 1f, cache.Half1Rect.Width + 1, cache.Half1Rect.Height + 2); + Rectangle fullRect = new Rectangle(rect.Right - 2 - half1 - half2, rect.Top + 3, half1 + half2, + rect.Height - 6); + RectangleF half1RectF = new RectangleF(cache.Half1Rect.Left - 0.5f, cache.Half1Rect.Top - 1f, + cache.Half1Rect.Width + 1, cache.Half1Rect.Height + 2); cache.Half2RectF = new RectangleF(cache.Half2Rect.Left - 0.5f, cache.Half2Rect.Top - 1f, cache.Half2Rect.Width + 1, cache.Half2Rect.Height + 2); cache.Half1LeftBrush = new LinearGradientBrush(half1RectF, Color.FromArgb(85, c2), Color.Transparent, 270f) @@ -7776,7 +7818,7 @@ protected virtual void DrawRibbonTabTrackingRight2007(Rectangle rect, // Create ellipse information for lightening the bottom hald cache.EllipseRect = new RectangleF(fullRect.Left, fullRect.Top - (fullRect.Width / 8), fullRect.Width, fullRect.Height * 1.25f); - GraphicsPath ellipsePath = new(); + GraphicsPath ellipsePath = new GraphicsPath(); // Cannot draw a path that contains a zero sized element if (cache.EllipseRect is { Width: > 0, Height: > 0 }) { @@ -7785,13 +7827,14 @@ protected virtual void DrawRibbonTabTrackingRight2007(Rectangle rect, { CenterColor = Color.FromArgb(48, Color.White) }; - PointF centerPoint = new(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); + PointF centerPoint = new PointF(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), + cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); cache.EllipseBrush.CenterPoint = centerPoint; cache.EllipseBrush.SurroundColors = new[] { Color.Transparent }; } - RectangleF vertRectF = new(rect.Left, rect.Top - 1, rect.Width - 2, rect.Height + 2); - RectangleF horzRectF = new(rect.Left, rect.Top + 1, rect.Width, rect.Height - 2); + RectangleF vertRectF = new RectangleF(rect.Left, rect.Top - 1, rect.Width - 2, rect.Height + 2); + RectangleF horzRectF = new RectangleF(rect.Left, rect.Top + 1, rect.Width, rect.Height - 2); cache.OutsideBrush = new LinearGradientBrush(vertRectF, Color.Transparent, _whiten128, 0f) { Blend = _ribbonOutBlend @@ -7833,7 +7876,7 @@ protected virtual void DrawRibbonTabTrackingBottom2007(Rectangle rect, MementoRibbonTabTracking2007 cache) { // Create path for a curved border around the tab - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); outsidePath.AddLine(rect.Left + 1, rect.Top + 1, rect.Left + 1, rect.Bottom - 2.5f); outsidePath.AddLine(rect.Left + 1, rect.Bottom - 2.5f, rect.Left + 3, rect.Bottom - 1); outsidePath.AddLine(rect.Left + 3, rect.Bottom - 1, rect.Right - 4, rect.Bottom - 1); @@ -7841,7 +7884,7 @@ protected virtual void DrawRibbonTabTrackingBottom2007(Rectangle rect, outsidePath.AddLine(rect.Right - 2, rect.Bottom - 2.5f, rect.Right - 2, rect.Top + 1); // Create path for the bottom hightlight line - GraphicsPath topPath = new(); + GraphicsPath topPath = new GraphicsPath(); topPath.AddLine(rect.Left + 3, rect.Bottom - 3, rect.Left + 4, rect.Bottom - 2); topPath.AddLine(rect.Left + 4, rect.Bottom - 2, rect.Right - 5, rect.Bottom - 2); topPath.AddLine(rect.Right - 5, rect.Bottom - 2, rect.Right - 4, rect.Bottom - 3); @@ -7852,8 +7895,10 @@ protected virtual void DrawRibbonTabTrackingBottom2007(Rectangle rect, var half2 = full - half1; cache.Half1Rect = new Rectangle(rect.Left + 3, rect.Bottom - 2 - half1, rect.Width - 6, half1); cache.Half2Rect = new Rectangle(rect.Left + 3, rect.Bottom - 2 - half1 - half2, rect.Width - 6, half2); - Rectangle fullRect = new(rect.Left + 3, rect.Bottom - 2 - half1 - half2, rect.Width - 6, half1 + half2); - RectangleF half1RectF = new(cache.Half1Rect.Left - 1, cache.Half1Rect.Top - 0.5f, cache.Half1Rect.Width + 2, cache.Half1Rect.Height + 1); + Rectangle fullRect = new Rectangle(rect.Left + 3, rect.Bottom - 2 - half1 - half2, rect.Width - 6, + half1 + half2); + RectangleF half1RectF = new RectangleF(cache.Half1Rect.Left - 1, cache.Half1Rect.Top - 0.5f, + cache.Half1Rect.Width + 2, cache.Half1Rect.Height + 1); cache.Half2RectF = new RectangleF(cache.Half2Rect.Left - 1, cache.Half2Rect.Top - 0.5f, cache.Half2Rect.Width + 2, cache.Half2Rect.Height + 1); cache.Half1LeftBrush = new LinearGradientBrush(half1RectF, Color.FromArgb(85, c2), Color.Transparent, 180f) @@ -7870,7 +7915,7 @@ protected virtual void DrawRibbonTabTrackingBottom2007(Rectangle rect, // Create ellipse information for lightening the bottom hald cache.EllipseRect = new RectangleF(fullRect.Left - (fullRect.Width / 8), fullRect.Top, fullRect.Width * 1.25f, fullRect.Height); - GraphicsPath ellipsePath = new(); + GraphicsPath ellipsePath = new GraphicsPath(); // Cannot draw a path that contains a zero sized element if (cache.EllipseRect is { Width: > 0, Height: > 0 }) { @@ -7879,13 +7924,14 @@ protected virtual void DrawRibbonTabTrackingBottom2007(Rectangle rect, { CenterColor = Color.FromArgb(92, Color.White) }; - PointF centerPoint = new(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), cache.EllipseRect.Bottom - (cache.EllipseRect.Height / 2)); + PointF centerPoint = new PointF(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), + cache.EllipseRect.Bottom - (cache.EllipseRect.Height / 2)); cache.EllipseBrush.CenterPoint = centerPoint; cache.EllipseBrush.SurroundColors = new[] { Color.Transparent }; } - RectangleF vertRectF = new(rect.Left - 1, rect.Top, rect.Width + 2, rect.Height - 2); - RectangleF horzRectF = new(rect.Left + 1, rect.Top, rect.Width - 2, rect.Height); + RectangleF vertRectF = new RectangleF(rect.Left - 1, rect.Top, rect.Width + 2, rect.Height - 2); + RectangleF horzRectF = new RectangleF(rect.Left + 1, rect.Top, rect.Width - 2, rect.Height); cache.OutsideBrush = new LinearGradientBrush(vertRectF, Color.Transparent, _whiten128, 270f) { Blend = _ribbonOutBlend @@ -7999,7 +8045,7 @@ protected virtual IDisposable DrawRibbonTabTracking2010(PaletteRibbonShape shape context.Graphics.FillPath(cache.OutsideBrush, cache.OutsidePath); // Draw the border - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { context.Graphics.DrawPath(cache.OutsidePen, cache.BorderPath); } @@ -8018,9 +8064,9 @@ protected virtual void DrawRibbonTabTrackingTop2010(Rectangle rect, Color c3, Color c4, MementoRibbonTabTracking2010 cache) { - GraphicsPath borderPath = new(); - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath borderPath = new GraphicsPath(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a border pen borderPath.AddLine(rect.Left, rect.Bottom - 2, rect.Left, rect.Top + 1.75f); @@ -8065,9 +8111,9 @@ protected virtual void DrawRibbonTabTrackingBottom2010(Rectangle rect, Color c3, Color c4, MementoRibbonTabTracking2010 cache) { - GraphicsPath borderPath = new(); - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath borderPath = new GraphicsPath(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a border pen borderPath.AddLine(rect.Left, rect.Top, rect.Left, rect.Bottom - 2.75f); @@ -8111,9 +8157,9 @@ protected virtual void DrawRibbonTabTrackingLeft2010(Rectangle rect, Color c3, Color c4, MementoRibbonTabTracking2010 cache) { - GraphicsPath borderPath = new(); - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath borderPath = new GraphicsPath(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a border pen borderPath.AddLine(rect.Right - 1, rect.Top, rect.Left + 1.75f, rect.Top); @@ -8158,9 +8204,9 @@ protected virtual void DrawRibbonTabTrackingRight2010(Rectangle rect, Color c3, Color c4, MementoRibbonTabTracking2010 cache) { - GraphicsPath borderPath = new(); - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath borderPath = new GraphicsPath(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a border pen borderPath.AddLine(rect.Left, rect.Top, rect.Right - 2.75f, rect.Top); @@ -8271,7 +8317,7 @@ protected virtual IDisposable DrawRibbonTabFocus2010(PaletteRibbonShape shape, context.Graphics.FillPath(cache.OutsideBrush, cache.OutsidePath); // Draw the border - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { context.Graphics.DrawPath(cache.OutsidePen, cache.BorderPath); } @@ -8290,9 +8336,9 @@ protected virtual void DrawRibbonTabFocusTop2010(Rectangle rect, Color c3, Color c4, MementoRibbonTabTracking2010 cache) { - GraphicsPath borderPath = new(); - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath borderPath = new GraphicsPath(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a border pen borderPath.AddLine(rect.Left, rect.Bottom - 1, rect.Left + 1, rect.Bottom - 2); @@ -8343,9 +8389,9 @@ protected virtual void DrawRibbonTabFocusBottom2010(Rectangle rect, Color c3, Color c4, MementoRibbonTabTracking2010 cache) { - GraphicsPath borderPath = new(); - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath borderPath = new GraphicsPath(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a border pen borderPath.AddLine(rect.Left, rect.Top, rect.Left + 1, rect.Top + 1); @@ -8395,9 +8441,9 @@ protected virtual void DrawRibbonTabFocusLeft2010(Rectangle rect, Color c3, Color c4, MementoRibbonTabTracking2010 cache) { - GraphicsPath borderPath = new(); - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath borderPath = new GraphicsPath(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a border pen borderPath.AddLine(rect.Right - 1, rect.Top - 1, rect.Right - 2, rect.Top); @@ -8446,9 +8492,9 @@ protected virtual void DrawRibbonTabFocusRight2010(Rectangle rect, Color c3, Color c4, MementoRibbonTabTracking2010 cache) { - GraphicsPath borderPath = new(); - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath borderPath = new GraphicsPath(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a border pen borderPath.AddLine(rect.Left, rect.Top - 1, rect.Left + 1, rect.Top); @@ -8562,7 +8608,7 @@ protected virtual IDisposable DrawRibbonTabGlowing(PaletteRibbonShape shape, } // Draw the border over the edge of the inside color - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { context.Graphics.DrawPath(cache.OutsidePen, cache.OutsidePath); } @@ -8587,9 +8633,9 @@ protected virtual void DrawRibbonTabGlowingTop(Rectangle rect, Color c1, Color c2, Color insideColor, MementoRibbonTabGlowing cache) { - GraphicsPath outsidePath = new(); - GraphicsPath topPath = new(); - GraphicsPath ellipsePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath topPath = new GraphicsPath(); + GraphicsPath ellipsePath = new GraphicsPath(); // Create path for a curved border around the tab outsidePath.AddLine(rect.Left, rect.Bottom - 2, rect.Left, rect.Top + 1.5f); @@ -8608,7 +8654,7 @@ protected virtual void DrawRibbonTabGlowingTop(Rectangle rect, topPath.AddLine(rect.Right - 2, rect.Top + 2 + q4, rect.Right - 2, rect.Top + 2); topPath.AddLine(rect.Right - 2, rect.Top + 2, rect.Right - 3, rect.Top + 1); - RectangleF topRectF = new(rect.Left, rect.Top, rect.Width, q4 + 5); + RectangleF topRectF = new RectangleF(rect.Left, rect.Top, rect.Width, q4 + 5); cache.TopBrush = new LinearGradientBrush(topRectF, c1, Color.Transparent, 90f); var ellipseWidth = (int)(rect.Width * 1.2f); @@ -8624,7 +8670,8 @@ protected virtual void DrawRibbonTabGlowingTop(Rectangle rect, { CenterColor = c2 }; - PointF centerPoint = new(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); + PointF centerPoint = new PointF(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), + cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); cache.EllipseBrush.CenterPoint = centerPoint; cache.EllipseBrush.SurroundColors = new[] { Color.Transparent }; } @@ -8644,9 +8691,9 @@ protected virtual void DrawRibbonTabGlowingLeft(Rectangle rect, Color c1, Color c2, Color insideColor, MementoRibbonTabGlowing cache) { - GraphicsPath outsidePath = new(); - GraphicsPath topPath = new(); - GraphicsPath ellipsePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath topPath = new GraphicsPath(); + GraphicsPath ellipsePath = new GraphicsPath(); // Create path for a curved border around the tab outsidePath.AddLine(rect.Right - 2, rect.Bottom - 1, rect.Left + 1.5f, rect.Bottom - 1); @@ -8665,7 +8712,7 @@ protected virtual void DrawRibbonTabGlowingLeft(Rectangle rect, topPath.AddLine(rect.Left + 2 + q4, rect.Top + 1, rect.Left + 2, rect.Top + 2); topPath.AddLine(rect.Left + 2, rect.Top + 2, rect.Left + 1, rect.Top + 2); - RectangleF topRectF = new(rect.Left, rect.Top, q4 + 5, rect.Height); + RectangleF topRectF = new RectangleF(rect.Left, rect.Top, q4 + 5, rect.Height); cache.TopBrush = new LinearGradientBrush(topRectF, c1, Color.Transparent, 0f); var ellipseWidth = (int)(rect.Width * 0.4f); @@ -8681,7 +8728,8 @@ protected virtual void DrawRibbonTabGlowingLeft(Rectangle rect, { CenterColor = c2 }; - PointF centerPoint = new(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); + PointF centerPoint = new PointF(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), + cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); cache.EllipseBrush.CenterPoint = centerPoint; cache.EllipseBrush.SurroundColors = new[] { Color.Transparent }; } @@ -8701,9 +8749,9 @@ protected virtual void DrawRibbonTabGlowingRight(Rectangle rect, Color c1, Color c2, Color insideColor, MementoRibbonTabGlowing cache) { - GraphicsPath outsidePath = new(); - GraphicsPath topPath = new(); - GraphicsPath ellipsePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath topPath = new GraphicsPath(); + GraphicsPath ellipsePath = new GraphicsPath(); // Create path for a curved border around the tab outsidePath.AddLine(rect.Left + 1, rect.Bottom - 1, rect.Right - 2.5f, rect.Bottom - 1); @@ -8722,7 +8770,7 @@ protected virtual void DrawRibbonTabGlowingRight(Rectangle rect, topPath.AddLine(rect.Right - 2 - q4, rect.Top + 1, rect.Right - 2, rect.Top + 2); topPath.AddLine(rect.Right - 2, rect.Top + 2, rect.Right - 1, rect.Top + 2); - RectangleF topRectF = new(rect.Right - q4 - 5, rect.Top, q4 + 5, rect.Height); + RectangleF topRectF = new RectangleF(rect.Right - q4 - 5, rect.Top, q4 + 5, rect.Height); cache.TopBrush = new LinearGradientBrush(topRectF, c1, Color.Transparent, 180f); var ellipseWidth = (int)(rect.Width * 0.4f); @@ -8738,7 +8786,8 @@ protected virtual void DrawRibbonTabGlowingRight(Rectangle rect, { CenterColor = c2 }; - PointF centerPoint = new(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); + PointF centerPoint = new PointF(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), + cache.EllipseRect.Top + (cache.EllipseRect.Height / 2)); cache.EllipseBrush.CenterPoint = centerPoint; cache.EllipseBrush.SurroundColors = new[] { Color.Transparent }; } @@ -8758,9 +8807,9 @@ protected virtual void DrawRibbonTabGlowingBottom(Rectangle rect, Color c1, Color c2, Color insideColor, MementoRibbonTabGlowing cache) { - GraphicsPath outsidePath = new(); - GraphicsPath topPath = new(); - GraphicsPath ellipsePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath topPath = new GraphicsPath(); + GraphicsPath ellipsePath = new GraphicsPath(); // Create path for a curved border around the tab outsidePath.AddLine(rect.Left, rect.Top + 1, rect.Left, rect.Bottom - 2.5f); @@ -8779,7 +8828,7 @@ protected virtual void DrawRibbonTabGlowingBottom(Rectangle rect, topPath.AddLine(rect.Right - 2, rect.Bottom - 2 - q4, rect.Right - 2, rect.Bottom - 2); topPath.AddLine(rect.Right - 2, rect.Bottom - 2, rect.Right - 3, rect.Bottom - 1); - RectangleF topRectF = new(rect.Left, rect.Bottom - 6 - q4, rect.Width, q4 + 5); + RectangleF topRectF = new RectangleF(rect.Left, rect.Bottom - 6 - q4, rect.Width, q4 + 5); cache.TopBrush = new LinearGradientBrush(topRectF, c1, Color.Transparent, 270f); var ellipseWidth = (int)(rect.Width * 1.2f); @@ -8795,7 +8844,8 @@ protected virtual void DrawRibbonTabGlowingBottom(Rectangle rect, { CenterColor = c2 }; - PointF centerPoint = new(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), cache.EllipseRect.Bottom - 1 - (cache.EllipseRect.Height / 2)); + PointF centerPoint = new PointF(cache.EllipseRect.Left + (cache.EllipseRect.Width / 2), + cache.EllipseRect.Bottom - 1 - (cache.EllipseRect.Height / 2)); cache.EllipseBrush.CenterPoint = centerPoint; cache.EllipseBrush.SurroundColors = new[] { Color.Transparent }; } @@ -8876,7 +8926,7 @@ protected virtual IDisposable DrawRibbonTabSelected2007(RenderContext context, context.Graphics.FillPath(cache.InsideBrush, cache.OutsidePath); // Draw the actual border - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { context.Graphics.DrawPath(cache.OutsidePen, cache.OutsidePath); } @@ -8911,7 +8961,7 @@ protected virtual void DrawRibbonTabSelectedTop2007(Rectangle rect, Color c4, Color c5, MementoRibbonTabSelected2007 cache) { - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Left, rect.Bottom - 2, rect.Left + 1, rect.Bottom - 3); @@ -8923,7 +8973,8 @@ protected virtual void DrawRibbonTabSelectedTop2007(Rectangle rect, outsidePath.AddLine(rect.Right - 2, rect.Bottom - 3, rect.Right - 1, rect.Bottom - 2); cache.CenterRect = new Rectangle(rect.Left + 4, rect.Top + 4, rect.Width - 8, rect.Height - 4); - RectangleF centerRectF = new(cache.CenterRect.Left - 1, cache.CenterRect.Top - 1, cache.CenterRect.Width + 2, cache.CenterRect.Height + 2); + RectangleF centerRectF = new RectangleF(cache.CenterRect.Left - 1, cache.CenterRect.Top - 1, + cache.CenterRect.Width + 2, cache.CenterRect.Height + 2); cache.CenterBrush = new LinearGradientBrush(centerRectF, c4, c5, 90f); cache.OutsidePath = outsidePath; } @@ -8940,7 +8991,7 @@ protected virtual void DrawRibbonTabSelectedTopDraw2007(Rectangle rect, g.DrawLine(cache.InsidePen, rect.Left + 2, rect.Bottom - 2, rect.Right - 3, rect.Bottom - 2); g.DrawLine(cache.CenterPen, rect.Left + 3, rect.Bottom - 1, rect.Right - 4, rect.Bottom - 1); - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); // Draw a line on the inside of the left and right border edges g.DrawLine(cache.MiddlePen, rect.Left + 0.5f, rect.Bottom - 1, rect.Left + 2, rect.Bottom - 3); g.DrawLine(cache.MiddlePen, rect.Left + 2, rect.Bottom - 3, rect.Left + 2, rect.Top + 2); @@ -8961,7 +9012,7 @@ protected virtual void DrawRibbonTabSelectedLeft2007(Rectangle rect, Color c4, Color c5, MementoRibbonTabSelected2007 cache) { - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Right - 2, rect.Bottom - 1, rect.Right - 3, rect.Bottom - 2); @@ -8973,7 +9024,8 @@ protected virtual void DrawRibbonTabSelectedLeft2007(Rectangle rect, outsidePath.AddLine(rect.Right - 3, rect.Top + 1, rect.Right - 1, rect.Top); cache.CenterRect = new Rectangle(rect.Left + 4, rect.Top + 4, rect.Width - 4, rect.Height - 8); - RectangleF centerRectF = new(cache.CenterRect.Left - 1, cache.CenterRect.Top - 1, cache.CenterRect.Width + 2, cache.CenterRect.Height + 2); + RectangleF centerRectF = new RectangleF(cache.CenterRect.Left - 1, cache.CenterRect.Top - 1, + cache.CenterRect.Width + 2, cache.CenterRect.Height + 2); cache.CenterBrush = new LinearGradientBrush(centerRectF, c4, c5, 0f); cache.OutsidePath = outsidePath; } @@ -8990,7 +9042,7 @@ protected virtual void DrawRibbonTabSelectedLeftDraw2007(Rectangle rect, g.DrawLine(cache.InsidePen, rect.Right - 2, rect.Bottom - 3, rect.Right - 2, rect.Top + 2); g.DrawLine(cache.CenterPen, rect.Right - 1, rect.Bottom - 4, rect.Right - 1, rect.Top + 3); - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); // Draw a line on the inside of the left and right border edges g.DrawLine(cache.MiddlePen, rect.Right - 1, rect.Bottom - 1.5f, rect.Right - 3, rect.Bottom - 3); g.DrawLine(cache.MiddlePen, rect.Right - 3, rect.Bottom - 3, rect.Left + 2, rect.Bottom - 3); @@ -9011,7 +9063,7 @@ protected virtual void DrawRibbonTabSelectedRight2007(Rectangle rect, Color c4, Color c5, MementoRibbonTabSelected2007 cache) { - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Left + 1, rect.Bottom - 1, rect.Left + 2, rect.Bottom - 2); @@ -9023,7 +9075,8 @@ protected virtual void DrawRibbonTabSelectedRight2007(Rectangle rect, outsidePath.AddLine(rect.Left + 2, rect.Top + 1, rect.Left, rect.Top); cache.CenterRect = new Rectangle(rect.Left, rect.Top + 4, rect.Width - 4, rect.Height - 8); - RectangleF centerRectF = new(cache.CenterRect.Left - 1, cache.CenterRect.Top - 1, cache.CenterRect.Width + 2, cache.CenterRect.Height + 2); + RectangleF centerRectF = new RectangleF(cache.CenterRect.Left - 1, cache.CenterRect.Top - 1, + cache.CenterRect.Width + 2, cache.CenterRect.Height + 2); cache.CenterBrush = new LinearGradientBrush(centerRectF, c4, c5, 180f); cache.OutsidePath = outsidePath; } @@ -9040,7 +9093,7 @@ protected virtual void DrawRibbonTabSelectedRightDraw2007(Rectangle rect, g.DrawLine(cache.InsidePen, rect.Left + 1, rect.Bottom - 3, rect.Left + 1, rect.Top + 2); g.DrawLine(cache.CenterPen, rect.Left, rect.Bottom - 4, rect.Left, rect.Top + 3); - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); // Draw a line on the inside of the left and right border edges g.DrawLine(cache.MiddlePen, rect.Left, rect.Bottom - 1.5f, rect.Left + 2, rect.Bottom - 3); g.DrawLine(cache.MiddlePen, rect.Left + 2, rect.Bottom - 3, rect.Right - 3, rect.Bottom - 3); @@ -9061,7 +9114,7 @@ protected virtual void DrawRibbonTabSelectedBottom2007(Rectangle rect, Color c4, Color c5, MementoRibbonTabSelected2007 cache) { - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Left, rect.Top + 1, rect.Left + 1, rect.Top + 2); @@ -9073,7 +9126,8 @@ protected virtual void DrawRibbonTabSelectedBottom2007(Rectangle rect, outsidePath.AddLine(rect.Right - 2, rect.Top + 2, rect.Right - 1, rect.Top + 1); cache.CenterRect = new Rectangle(rect.Left + 4, rect.Top, rect.Width - 8, rect.Height - 4); - RectangleF centerRectF = new(cache.CenterRect.Left - 1, cache.CenterRect.Top - 1, cache.CenterRect.Width + 2, cache.CenterRect.Height + 2); + RectangleF centerRectF = new RectangleF(cache.CenterRect.Left - 1, cache.CenterRect.Top - 1, + cache.CenterRect.Width + 2, cache.CenterRect.Height + 2); cache.CenterBrush = new LinearGradientBrush(centerRectF, c4, c5, 270f); cache.OutsidePath = outsidePath; } @@ -9090,7 +9144,7 @@ protected virtual void DrawRibbonTabSelectedBottomDraw2007(Rectangle rect, g.DrawLine(cache.InsidePen, rect.Left + 2, rect.Top + 1, rect.Right - 3, rect.Top + 1); g.DrawLine(cache.CenterPen, rect.Left + 3, rect.Top, rect.Right - 4, rect.Top); - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); // Draw a line on the inside of the left and right border edges g.DrawLine(cache.MiddlePen, rect.Left + 0.5f, rect.Top, rect.Left + 2, rect.Top + 2); g.DrawLine(cache.MiddlePen, rect.Left + 2, rect.Top + 2, rect.Left + 2, rect.Bottom - 3); @@ -9184,7 +9238,7 @@ protected virtual IDisposable DrawRibbonTabSelected2010(RenderContext context, context.Graphics.FillPath(cache.InsideBrush, cache.InsidePath); } - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { context.Graphics.DrawPath(cache.OutsidePen, cache.OutsidePath); } @@ -9216,8 +9270,8 @@ protected virtual void DrawRibbonTabSelectedTop2010(Rectangle rect, Color c2, Color c3, Color c5, MementoRibbonTabSelected2010 cache) { - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Left, rect.Bottom - 2, rect.Left + 1, rect.Bottom - 3); @@ -9228,7 +9282,7 @@ protected virtual void DrawRibbonTabSelectedTop2010(Rectangle rect, outsidePath.AddLine(rect.Right - 2, rect.Top + 1, rect.Right - 2, rect.Bottom - 3); outsidePath.AddLine(rect.Right - 2, rect.Bottom - 3, rect.Right - 1, rect.Bottom - 2); - RectangleF centerRectF = new(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); + RectangleF centerRectF = new RectangleF(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); cache.CenterBrush = new LinearGradientBrush(centerRectF, c2, c3, 90f) { Blend = _ribbonTabSelected1Blend @@ -9250,7 +9304,7 @@ protected virtual void DrawRibbonTabSelectedTop2010(Rectangle rect, insidePath.AddLine(rect.Right - 2, rect.Top + 1, rect.Right - 2, rect.Bottom - 3); insidePath.AddLine(rect.Right - 2, rect.Bottom - 3, rect.Right - 1, rect.Bottom - 2); - RectangleF insideRectF = new(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); + RectangleF insideRectF = new RectangleF(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); cache.InsideBrush = new LinearGradientBrush(insideRectF, Color.FromArgb(32, c5), Color.Transparent, 90f) { Blend = _ribbonTabSelected2Blend @@ -9269,7 +9323,7 @@ protected virtual void DrawRibbonTabSelectedTopDraw2010(Rectangle rect, g.DrawLine(cache.CenterPen, rect.Left + 2, rect.Bottom - 2, rect.Right - 3, rect.Bottom - 2); g.DrawLine(cache.CenterPen, rect.Left + 1, rect.Bottom - 1, rect.Right - 2, rect.Bottom - 1); - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); // Draw shadow lines on the outside of the left and right edges g.DrawLine(_mediumShadowPen, rect.Left, rect.Bottom - 3, rect.Left, rect.Top + 2); g.DrawLine(_mediumShadowPen, rect.Right - 1, rect.Bottom - 3, rect.Right - 1, rect.Top + 2); @@ -9282,8 +9336,8 @@ protected virtual void DrawRibbonTabSelectedLeft2010(Rectangle rect, Color c2, Color c3, Color c5, MementoRibbonTabSelected2010 cache) { - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Right - 2, rect.Bottom - 1, rect.Right - 2, rect.Bottom - 2); @@ -9294,7 +9348,7 @@ protected virtual void DrawRibbonTabSelectedLeft2010(Rectangle rect, outsidePath.AddLine(rect.Left + 1, rect.Top + 1, rect.Right - 2, rect.Top + 1); outsidePath.AddLine(rect.Right - 2, rect.Top + 1, rect.Right - 2, rect.Top); - RectangleF centerRectF = new(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); + RectangleF centerRectF = new RectangleF(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); cache.CenterBrush = new LinearGradientBrush(centerRectF, c2, c3, 0f) { Blend = _ribbonTabSelected1Blend @@ -9316,7 +9370,7 @@ protected virtual void DrawRibbonTabSelectedLeft2010(Rectangle rect, insidePath.AddLine(rect.Left + 1, rect.Top + 1, rect.Right - 2, rect.Top + 1); insidePath.AddLine(rect.Right - 2, rect.Top + 1, rect.Right - 2, rect.Top); - RectangleF insideRectF = new(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); + RectangleF insideRectF = new RectangleF(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); cache.InsideBrush = new LinearGradientBrush(insideRectF, Color.FromArgb(32, c5), Color.Transparent, 0f) { Blend = _ribbonTabSelected2Blend @@ -9335,7 +9389,7 @@ protected virtual void DrawRibbonTabSelectedLeftDraw2010(Rectangle rect, g.DrawLine(cache.CenterPen, rect.Right - 2, rect.Bottom - 3, rect.Right - 2, rect.Top + 2); g.DrawLine(cache.CenterPen, rect.Right - 1, rect.Bottom - 2, rect.Right - 1, rect.Top + 1); - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); // Draw shadow lines on the outside of the top and bottom edges g.DrawLine(_mediumShadowPen, rect.Right - 3, rect.Bottom - 1, rect.Left + 3, rect.Bottom - 1); g.DrawLine(_mediumShadowPen, rect.Right - 3, rect.Top, rect.Left + 3, rect.Top); @@ -9348,8 +9402,8 @@ protected virtual void DrawRibbonTabSelectedRight2010(Rectangle rect, Color c2, Color c3, Color c5, MementoRibbonTabSelected2010 cache) { - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Left + 1, rect.Bottom - 1, rect.Left + 1, rect.Bottom - 2); @@ -9360,7 +9414,7 @@ protected virtual void DrawRibbonTabSelectedRight2010(Rectangle rect, outsidePath.AddLine(rect.Right - 2, rect.Top + 1, rect.Left + 1, rect.Top + 1); outsidePath.AddLine(rect.Left + 1, rect.Top + 1, rect.Left + 1, rect.Top); - RectangleF centerRectF = new(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); + RectangleF centerRectF = new RectangleF(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); cache.CenterBrush = new LinearGradientBrush(centerRectF, c2, c3, 180f) { Blend = _ribbonTabSelected1Blend @@ -9381,7 +9435,7 @@ protected virtual void DrawRibbonTabSelectedRight2010(Rectangle rect, insidePath.AddLine(rect.Right - 2, rect.Top + 1, rect.Left + 1, rect.Top + 1); insidePath.AddLine(rect.Left + 1, rect.Top + 1, rect.Left + 1, rect.Top); - RectangleF insideRectF = new(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); + RectangleF insideRectF = new RectangleF(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); cache.InsideBrush = new LinearGradientBrush(insideRectF, Color.FromArgb(32, c5), Color.Transparent, 180f) { Blend = _ribbonTabSelected2Blend @@ -9401,7 +9455,7 @@ protected virtual void DrawRibbonTabSelectedRightDraw2010(Rectangle rect, g.DrawLine(cache.CenterPen, rect.Left + 1, rect.Bottom - 3, rect.Left + 1, rect.Top + 2); g.DrawLine(cache.CenterPen, rect.Left, rect.Bottom - 2, rect.Left, rect.Top + 1); - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); // Draw shadow lines on the outside of the top and bottom edges g.DrawLine(_mediumShadowPen, rect.Left + 2, rect.Bottom - 1, rect.Right - 4, rect.Bottom - 1); g.DrawLine(_mediumShadowPen, rect.Left + 2, rect.Top, rect.Right - 4, rect.Top); @@ -9414,8 +9468,8 @@ protected virtual void DrawRibbonTabSelectedBottom2010(Rectangle rect, Color c2, Color c3, Color c5, MementoRibbonTabSelected2010 cache) { - GraphicsPath outsidePath = new(); - GraphicsPath insidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Left, rect.Top + 1, rect.Left + 1, rect.Top + 1); @@ -9426,7 +9480,7 @@ protected virtual void DrawRibbonTabSelectedBottom2010(Rectangle rect, outsidePath.AddLine(rect.Right - 2, rect.Bottom - 3, rect.Right - 2, rect.Top + 1); outsidePath.AddLine(rect.Right - 2, rect.Top + 1, rect.Right - 1, rect.Top + 1); - RectangleF centerRectF = new(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); + RectangleF centerRectF = new RectangleF(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); cache.CenterBrush = new LinearGradientBrush(centerRectF, c2, c3, 270f) { Blend = _ribbonTabSelected1Blend @@ -9447,7 +9501,7 @@ protected virtual void DrawRibbonTabSelectedBottom2010(Rectangle rect, insidePath.AddLine(rect.Right - 2, rect.Bottom - 3, rect.Right - 2, rect.Top + 1); insidePath.AddLine(rect.Right - 2, rect.Top + 1, rect.Right - 1, rect.Top + 1); - RectangleF insideRectF = new(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); + RectangleF insideRectF = new RectangleF(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); cache.InsideBrush = new LinearGradientBrush(insideRectF, Color.FromArgb(32, c5), Color.Transparent, 270f) { Blend = _ribbonTabSelected2Blend @@ -9466,7 +9520,7 @@ protected virtual void DrawRibbonTabSelectedBottomDraw2010(Rectangle rect, g.DrawLine(cache.CenterPen, rect.Left + 2, rect.Top + 1, rect.Right - 3, rect.Top + 1); g.DrawLine(cache.CenterPen, rect.Left + 1, rect.Top, rect.Right - 2, rect.Top); - using AntiAlias aa = new(g); + using AntiAlias aa = new AntiAlias(g); // Draw shadow lines on the outside of the left and right edges g.DrawLine(_mediumShadowPen, rect.Left, rect.Top + 2, rect.Left, rect.Bottom - 4); g.DrawLine(_mediumShadowPen, rect.Right - 1, rect.Top + 2, rect.Right - 1, rect.Bottom - 4); @@ -9540,7 +9594,7 @@ protected virtual IDisposable DrawRibbonTabContextSelected(PaletteRibbonShape sh context.Graphics.FillRectangle(cache.InsideBrush, cache.InteriorRect); // Draw the actual border - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { context.Graphics.DrawPath(cache.OutsidePen, cache.OutsidePath); } @@ -9572,7 +9626,7 @@ protected virtual void DrawRibbonTabContextSelectedTop(Rectangle rect, Color c2, MementoRibbonTabContextSelected cache) { - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Left, rect.Bottom - 2, rect.Left + 1, rect.Bottom - 3); @@ -9583,8 +9637,10 @@ protected virtual void DrawRibbonTabContextSelectedTop(Rectangle rect, outsidePath.AddLine(rect.Right - 2, rect.Top + 1.5f, rect.Right - 2, rect.Bottom - 3); outsidePath.AddLine(rect.Right - 2, rect.Bottom - 3, rect.Right - 1, rect.Bottom - 2); - LinearGradientBrush leftBrush = new(rect, Color.FromArgb(125, c2), Color.FromArgb(67, c2), 90f); - LinearGradientBrush rightBrush = new(rect, Color.FromArgb(16, c2), Color.FromArgb(67, c2), 90f); + LinearGradientBrush leftBrush = + new LinearGradientBrush(rect, Color.FromArgb(125, c2), Color.FromArgb(67, c2), 90f); + LinearGradientBrush rightBrush = + new LinearGradientBrush(rect, Color.FromArgb(16, c2), Color.FromArgb(67, c2), 90f); cache.LeftPen = new Pen(leftBrush); cache.RightPen = new Pen(rightBrush); @@ -9627,7 +9683,7 @@ protected virtual void DrawRibbonTabContextSelectedLeft(Rectangle rect, Color c2, MementoRibbonTabContextSelected cache) { - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Right - 2, rect.Bottom - 1, rect.Right - 3, rect.Bottom - 2); @@ -9638,8 +9694,10 @@ protected virtual void DrawRibbonTabContextSelectedLeft(Rectangle rect, outsidePath.AddLine(rect.Left + 1.5f, rect.Top + 1, rect.Right - 3, rect.Top + 1); outsidePath.AddLine(rect.Right - 3, rect.Top + 1, rect.Right - 2, rect.Top); - LinearGradientBrush leftBrush = new(rect, Color.FromArgb(125, c2), Color.FromArgb(67, c2), 0f); - LinearGradientBrush rightBrush = new(rect, Color.FromArgb(16, c2), Color.FromArgb(67, c2), 0f); + LinearGradientBrush leftBrush = + new LinearGradientBrush(rect, Color.FromArgb(125, c2), Color.FromArgb(67, c2), 0f); + LinearGradientBrush rightBrush = + new LinearGradientBrush(rect, Color.FromArgb(16, c2), Color.FromArgb(67, c2), 0f); cache.LeftPen = new Pen(leftBrush); cache.RightPen = new Pen(rightBrush); @@ -9682,7 +9740,7 @@ protected virtual void DrawRibbonTabContextSelectedRight(Rectangle rect, Color c2, MementoRibbonTabContextSelected cache) { - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Left + 1, rect.Bottom - 1, rect.Left + 2, rect.Bottom - 2); @@ -9693,8 +9751,10 @@ protected virtual void DrawRibbonTabContextSelectedRight(Rectangle rect, outsidePath.AddLine(rect.Right - 2.5f, rect.Top + 1, rect.Left + 2, rect.Top + 1); outsidePath.AddLine(rect.Left + 2, rect.Top + 1, rect.Left + 1, rect.Top); - LinearGradientBrush leftBrush = new(rect, Color.FromArgb(125, c2), Color.FromArgb(67, c2), 180f); - LinearGradientBrush rightBrush = new(rect, Color.FromArgb(16, c2), Color.FromArgb(67, c2), 180f); + LinearGradientBrush leftBrush = + new LinearGradientBrush(rect, Color.FromArgb(125, c2), Color.FromArgb(67, c2), 180f); + LinearGradientBrush rightBrush = + new LinearGradientBrush(rect, Color.FromArgb(16, c2), Color.FromArgb(67, c2), 180f); cache.LeftPen = new Pen(leftBrush); cache.RightPen = new Pen(rightBrush); @@ -9737,7 +9797,7 @@ protected virtual void DrawRibbonTabContextSelectedBottom(Rectangle rect, Color c2, MementoRibbonTabContextSelected cache) { - GraphicsPath outsidePath = new(); + GraphicsPath outsidePath = new GraphicsPath(); // Create path for a curved dark border around the tab outsidePath.AddLine(rect.Left, rect.Top + 1, rect.Left + 1, rect.Top + 2); @@ -9748,8 +9808,10 @@ protected virtual void DrawRibbonTabContextSelectedBottom(Rectangle rect, outsidePath.AddLine(rect.Right - 2, rect.Bottom - 2.5f, rect.Right - 2, rect.Top + 2); outsidePath.AddLine(rect.Right - 2, rect.Top + 2, rect.Right - 1, rect.Top + 1); - LinearGradientBrush leftBrush = new(rect, Color.FromArgb(125, c2), Color.FromArgb(67, c2), 270f); - LinearGradientBrush rightBrush = new(rect, Color.FromArgb(16, c2), Color.FromArgb(67, c2), 270f); + LinearGradientBrush leftBrush = + new LinearGradientBrush(rect, Color.FromArgb(125, c2), Color.FromArgb(67, c2), 270f); + LinearGradientBrush rightBrush = + new LinearGradientBrush(rect, Color.FromArgb(16, c2), Color.FromArgb(67, c2), 270f); cache.LeftPen = new Pen(leftBrush); cache.RightPen = new Pen(rightBrush); @@ -9879,8 +9941,8 @@ protected virtual void DrawRibbonTabHighlightTop(Rectangle rect, Color c4, Color c5, MementoRibbonTabHighlight cache) { - RectangleF hF = new(rect.Left - 2, rect.Top - 1, rect.Width + 4, 6); - RectangleF vF = new(rect.Left - 2, rect.Top + 1, rect.Width + 4, rect.Height - 1); + RectangleF hF = new RectangleF(rect.Left - 2, rect.Top - 1, rect.Width + 4, 6); + RectangleF vF = new RectangleF(rect.Left - 2, rect.Top + 1, rect.Width + 4, rect.Height - 1); cache.TopBorderBrush = new LinearGradientBrush(hF, Color.FromArgb(48, c5), Color.FromArgb(64, c5), 90f); cache.BorderVertBrush = new LinearGradientBrush(vF, c5, c4, 90f); cache.OutsideVertBrush = new LinearGradientBrush(vF, Color.FromArgb(48, c5), c5, 90f); @@ -9928,8 +9990,8 @@ protected virtual void DrawRibbonTabHighlightLeft(Rectangle rect, Color c4, Color c5, MementoRibbonTabHighlight cache) { - RectangleF hF = new(rect.Left - 1, rect.Top - 2, 6, rect.Height - 4); - RectangleF vF = new(rect.Left + 1, rect.Top - 2, rect.Width - 1, rect.Height - 4); + RectangleF hF = new RectangleF(rect.Left - 1, rect.Top - 2, 6, rect.Height - 4); + RectangleF vF = new RectangleF(rect.Left + 1, rect.Top - 2, rect.Width - 1, rect.Height - 4); cache.TopBorderBrush = new LinearGradientBrush(hF, Color.FromArgb(48, c5), Color.FromArgb(64, c5), 0f); cache.BorderVertBrush = new LinearGradientBrush(vF, c5, c4, 0f); cache.OutsideVertBrush = new LinearGradientBrush(vF, Color.FromArgb(48, c5), c5, 0f); @@ -9977,8 +10039,8 @@ protected virtual void DrawRibbonTabHighlightRight(Rectangle rect, Color c4, Color c5, MementoRibbonTabHighlight cache) { - RectangleF hF = new(rect.Right - 6, rect.Top - 2, 6, rect.Height - 4); - RectangleF vF = new(rect.Left, rect.Top - 2, rect.Width - 1, rect.Height - 4); + RectangleF hF = new RectangleF(rect.Right - 6, rect.Top - 2, 6, rect.Height - 4); + RectangleF vF = new RectangleF(rect.Left, rect.Top - 2, rect.Width - 1, rect.Height - 4); cache.TopBorderBrush = new LinearGradientBrush(hF, Color.FromArgb(48, c5), Color.FromArgb(64, c5), 180f); cache.BorderVertBrush = new LinearGradientBrush(vF, c5, c4, 180f); cache.OutsideVertBrush = new LinearGradientBrush(vF, Color.FromArgb(48, c5), c5, 180f); @@ -10026,8 +10088,8 @@ protected virtual void DrawRibbonTabHighlightBottom(Rectangle rect, Color c4, Color c5, MementoRibbonTabHighlight cache) { - RectangleF hF = new(rect.Left - 2, rect.Bottom - 6, rect.Width + 4, 6); - RectangleF vF = new(rect.Left - 2, rect.Top, rect.Width + 4, rect.Height - 1); + RectangleF hF = new RectangleF(rect.Left - 2, rect.Bottom - 6, rect.Width + 4, 6); + RectangleF vF = new RectangleF(rect.Left - 2, rect.Top, rect.Width + 4, rect.Height - 1); cache.TopBorderBrush = new LinearGradientBrush(hF, Color.FromArgb(48, c5), Color.FromArgb(64, c5), 270f); cache.BorderVertBrush = new LinearGradientBrush(vF, c5, c4, 270f); cache.OutsideVertBrush = new LinearGradientBrush(vF, Color.FromArgb(48, c5), c5, 270f); @@ -10105,16 +10167,17 @@ protected virtual IDisposable DrawRibbonTabContext(RenderContext context, // Dispose of existing values cache.Dispose(); - Rectangle borderRect = new(rect.X - 1, rect.Y - 1, rect.Width + 2, rect.Height + 2); + Rectangle borderRect = new Rectangle(rect.X - 1, rect.Y - 1, rect.Width + 2, rect.Height + 2); cache.FillRect = new Rectangle(rect.X + 1, rect.Y, rect.Width - 2, rect.Height - 1); - LinearGradientBrush borderBrush = new(borderRect, c1, Color.Transparent, 270f) + LinearGradientBrush borderBrush = new LinearGradientBrush(borderRect, c1, Color.Transparent, 270f) { Blend = _ribbonGroup5Blend }; cache.BorderPen = new Pen(borderBrush); - LinearGradientBrush underlineBrush = new(borderRect, Color.Transparent, Color.FromArgb(200, c2), 0f) + LinearGradientBrush underlineBrush = + new LinearGradientBrush(borderRect, Color.Transparent, Color.FromArgb(200, c2), 0f) { Blend = _ribbonGroup7Blend }; @@ -10210,7 +10273,7 @@ protected virtual IDisposable DrawRibbonAppButton(PaletteRibbonShape shape, cache.BrushLower = new LinearGradientBrush(cache.RectLower, Color.Transparent, Color.Transparent, LinearGradientMode.Horizontal); } - using AntiAlias aa = new(context.Graphics); + using AntiAlias aa = new AntiAlias(context.Graphics); DrawRibbonAppButtonBorder1(context.Graphics, cache); DrawRibbonAppButtonUpperHalf(context.Graphics, cache, state, topDark, bottomDark, topLight, topMedium, trackBorderAsPressed); DrawRibbonAppButtonLowerHalf(context.Graphics, cache, state, bottomDark, bottomLight, bottomMedium); @@ -10259,7 +10322,7 @@ protected virtual void DrawRibbonAppButtonUpperHalf(Graphics? g, Color[] colorsUpperHalf = { topDark, topMedium, topLight, topLight, topMedium, topDark }; float[] posUpperHalf = { 0.0f, 0.2f, 0.4f, 0.6f, 0.8f, 1.0f }; - ColorBlend blendUpperHalf = new() + ColorBlend blendUpperHalf = new ColorBlend { Colors = colorsUpperHalf, Positions = posUpperHalf @@ -10284,7 +10347,8 @@ protected virtual void DrawRibbonAppButtonUpperHalf(Graphics? g, c2 = topDark; } - using LinearGradientBrush brushUpper2 = new(memento.Rect, c1, c2, LinearGradientMode.Vertical); + using LinearGradientBrush brushUpper2 = + new LinearGradientBrush(memento.Rect, c1, c2, LinearGradientMode.Vertical); g.FillPie(brushUpper2, memento.Rect.X, memento.Rect.Y, memento.Rect.Width, memento.Rect.Height, 180, 180); } @@ -10304,7 +10368,7 @@ protected virtual void DrawRibbonAppButtonLowerHalf(Graphics? g, ? new[] { 0.0f, 0.3f, 0.5f, 0.5f, 0.7f, 1.0f } : new[] { 0.0f, 0.2f, 0.4f, 0.6f, 0.8f, 1.0f }; - ColorBlend blendLowerHalf = new() + ColorBlend blendLowerHalf = new ColorBlend { Colors = colorsLowerHalf, Positions = posLowerHalf @@ -10323,7 +10387,8 @@ protected virtual void DrawRibbonAppButtonGlowCenter(Graphics? g, Color topLight, Color bottomLight) { - using LinearGradientBrush brushBottomGlow = new(memento.RectBottomGlow, Color.FromArgb(50, Color.White), Color.FromArgb(30, Color.White), LinearGradientMode.Vertical); + using LinearGradientBrush brushBottomGlow = new LinearGradientBrush(memento.RectBottomGlow, + Color.FromArgb(50, Color.White), Color.FromArgb(30, Color.White), LinearGradientMode.Vertical); RectangleF rectBottomGlow = memento.RectBottomGlow; rectBottomGlow.X = memento.Rect.X + ((memento.Rect.Width - rectBottomGlow.Width) / 2); rectBottomGlow.Y = memento.Rect.Y + (memento.Rect.Height - rectBottomGlow.Height - 2); @@ -10340,9 +10405,9 @@ protected virtual void DrawRibbonAppButtonGlowCenter(Graphics? g, rectBottomGlow.X = memento.Rect.X + ((memento.Rect.Width - rectBottomGlow.Width) / 2); rectBottomGlow.Y = memento.Rect.Y + (memento.Rect.Height - rectBottomGlow.Height); - using GraphicsPath path = new(); + using GraphicsPath path = new GraphicsPath(); path.AddEllipse(rectBottomGlow); - using PathGradientBrush pathGradient = new(path); + using PathGradientBrush pathGradient = new PathGradientBrush(path); pathGradient.CenterColor = topLight; pathGradient.SurroundColors = new[] { Color.FromArgb(100, bottomLight) }; g.FillEllipse(pathGradient, rectBottomGlow); @@ -10368,7 +10433,8 @@ protected virtual void DrawRibbonAppButtonGlowUpperBottom(Graphics? g, mediumTransparency = 200; } - using LinearGradientBrush brushUpperGlow = new(memento.RectUpperGlow, Color.Transparent, Color.Transparent, LinearGradientMode.Horizontal); + using LinearGradientBrush brushUpperGlow = new LinearGradientBrush(memento.RectUpperGlow, Color.Transparent, + Color.Transparent, LinearGradientMode.Horizontal); Color[] colorsUpperGlow = { Color.FromArgb(180, bottomDark), Color.FromArgb(mediumTransparency, bottomMedium), Color.FromArgb(lightTransparency, bottomLight), @@ -10378,7 +10444,7 @@ protected virtual void DrawRibbonAppButtonGlowUpperBottom(Graphics? g, float[] posUpperGlow = { 0.0f, 0.2f, 0.4f, 0.6f, 0.8f, 1.0f }; - ColorBlend blendUpperGlow = new() + ColorBlend blendUpperGlow = new ColorBlend { Colors = colorsUpperGlow, Positions = posUpperGlow @@ -10421,12 +10487,12 @@ protected virtual void DrawRibbonAppButtonBorder2(Graphics? g, borderGlowColor = _whiten120; } - using (Pen p = new(borderGlowColor)) + using (Pen p = new Pen(borderGlowColor)) { g.DrawEllipse(p, memento.BorderMain1); } - using (Pen p = new(Color.FromArgb(100, 52, 59, 64))) + using (Pen p = new Pen(Color.FromArgb(100, 52, 59, 64))) { g.DrawEllipse(p, memento.Rect); } @@ -10434,12 +10500,12 @@ protected virtual void DrawRibbonAppButtonBorder2(Graphics? g, if (pressed) { borderGlowColor = _whiten60; - using Pen p = new(borderGlowColor); + using Pen p = new Pen(borderGlowColor); g.DrawEllipse(p, memento.BorderMain3); } borderGlowColor = pressed ? _whiten50 : _whiten80; - using (Pen p = new(borderGlowColor)) + using (Pen p = new Pen(borderGlowColor)) { g.DrawArc(p, memento.BorderMain2, 180, 180); } @@ -10447,13 +10513,13 @@ protected virtual void DrawRibbonAppButtonBorder2(Graphics? g, if (!pressed) { borderGlowColor = _whiten30; - using Pen p = new(borderGlowColor); + using Pen p = new Pen(borderGlowColor); g.DrawArc(p, memento.BorderMain4, 180, 180); } if (tracking && !pressed) { - using Pen p = new(Color.FromArgb(100, borderGlowColor)); + using Pen p = new Pen(Color.FromArgb(100, borderGlowColor)); g.DrawEllipse(p, memento.Rect); } } @@ -10548,7 +10614,7 @@ protected virtual IDisposable DrawRibbonAppTab(PaletteRibbonShape shape, context.Graphics.FillPath(cache.BorderBrush, cache.BorderFillPath); // Draw the outside border - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { context.Graphics.DrawPath(cache.BorderPen, cache.BorderPath); } @@ -10557,7 +10623,7 @@ protected virtual IDisposable DrawRibbonAppTab(PaletteRibbonShape shape, context.Graphics.FillPath(cache.InsideFillBrush, cache.InsideFillPath); // Draw highlight over bottom half - using (Clipping clip = new(context.Graphics, cache.InsideFillPath)) + using (Clipping clip = new Clipping(context.Graphics, cache.InsideFillPath)) { context.Graphics.FillPath(cache.HighlightBrush, cache.HighlightPath); } @@ -10610,7 +10676,7 @@ protected virtual IDisposable DrawRibbonGroupNormal(bool showingInPopup, // Dispose of existing values cache.Dispose(); - GraphicsPath trackingPath = new(); + GraphicsPath trackingPath = new GraphicsPath(); trackingPath.AddEllipse(new Rectangle(rect.X, rect.Y + (rect.Height / 2), rect.Width - 3, rect.Height)); cache.TrackHighlightBrush = new PathGradientBrush(trackingPath) { @@ -10691,10 +10757,10 @@ protected virtual IDisposable DrawRibbonGroupNormal(bool showingInPopup, // Dispose of existing values cache.Dispose(); - GraphicsPath solidPath = new(); - GraphicsPath insidePath = new(); - GraphicsPath outsidePath = new(); - GraphicsPath lightPath = new(); + GraphicsPath solidPath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); + GraphicsPath outsidePath = new GraphicsPath(); + GraphicsPath lightPath = new GraphicsPath(); // Create the rounded complete border solidPath.AddLine(rect.Left + 2, rect.Top, rect.Right - 4, rect.Top); @@ -10726,8 +10792,8 @@ protected virtual IDisposable DrawRibbonGroupNormal(bool showingInPopup, lightPath.AddLine(rect.Left + 1, rect.Bottom - 4, rect.Left + 1, rect.Top + 2); lightPath.AddLine(rect.Left + 1, rect.Top + 2, rect.Left + 2, rect.Top + 1); - RectangleF solidRectF = new(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); - LinearGradientBrush solidBrush = new(solidRectF, c1, c2, 90f); + RectangleF solidRectF = new RectangleF(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); + LinearGradientBrush solidBrush = new LinearGradientBrush(solidRectF, c1, c2, 90f); cache.SolidPen = new Pen(solidBrush); cache.BackRect = new Rectangle(rect.Left + 2, rect.Top + 1, rect.Width - 4, rect.Height - 4); @@ -10743,7 +10809,7 @@ protected virtual IDisposable DrawRibbonGroupNormal(bool showingInPopup, context.Graphics.FillRectangle(lightInside ? _whitenLightLBrush : _whitenLightBrush, cache.BackRect); } - using (AntiAlias aa = new(context.Graphics)) + using (AntiAlias aa = new AntiAlias(context.Graphics)) { // Draw the solid border context.Graphics.DrawPath(cache.SolidPen, cache.SolidPath); @@ -10811,7 +10877,7 @@ protected virtual IDisposable DrawRibbonGroupNormalBorderSep(bool showingInPopup // Dispose of existing values cache.Dispose(); - RectangleF rectF = new(rect.X - 1, rect.Y - 1, rect.Width + 2, rect.Height + 2); + RectangleF rectF = new RectangleF(rect.X - 1, rect.Y - 1, rect.Width + 2, rect.Height + 2); cache.TotalBrush = new LinearGradientBrush(rectF, c2, c1, 90f); cache.InnerBrush = new LinearGradientBrush(rectF, c4, c3, 90f); @@ -10890,7 +10956,7 @@ protected virtual IDisposable DrawRibbonGroupNormalTitle(RenderContext context, // Dispose of existing values cache.Dispose(); - GraphicsPath titlePath = new(); + GraphicsPath titlePath = new GraphicsPath(); // Create the rounded bottom edge to fit inside a group border titlePath.AddLine(rect.Left, rect.Top, rect.Right - 1, rect.Top); @@ -10900,7 +10966,8 @@ protected virtual IDisposable DrawRibbonGroupNormalTitle(RenderContext context, titlePath.AddLine(rect.Left + 2, rect.Bottom - 1, rect.Left, rect.Bottom - 3); titlePath.AddLine(rect.Left, rect.Bottom - 3, rect.Left, rect.Top); - RectangleF rectF = new(rect.Left - 0.5f, rect.Top - 0.5f, rect.Width + 1, rect.Height + 1); + RectangleF rectF = new RectangleF(rect.Left - 0.5f, rect.Top - 0.5f, rect.Width + 1, + rect.Height + 1); cache.TitleBrush = new LinearGradientBrush(rectF, c1, c2, 90f); cache.TitlePath = titlePath; } @@ -10952,8 +11019,8 @@ protected virtual IDisposable DrawRibbonGroupCollapsedBorder(RenderContext conte // Dispose of existing values cache.Dispose(); - GraphicsPath solidPath = new(); - GraphicsPath insidePath = new(); + GraphicsPath solidPath = new GraphicsPath(); + GraphicsPath insidePath = new GraphicsPath(); // Create the rounded complete border solidPath.AddLine(rect.Left + 1.25f, rect.Top, rect.Right - 2, rect.Top); @@ -10975,11 +11042,11 @@ protected virtual IDisposable DrawRibbonGroupCollapsedBorder(RenderContext conte insidePath.AddLine(rect.Left + 1, rect.Bottom - 3, rect.Left + 1, rect.Top + 2); insidePath.AddLine(rect.Left + 1, rect.Top + 2, rect.Left + 2, rect.Top + 1); - RectangleF solidRectF = new(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); - RectangleF insideRectF = new(rect.Left, rect.Top, rect.Width, rect.Height); + RectangleF solidRectF = new RectangleF(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); + RectangleF insideRectF = new RectangleF(rect.Left, rect.Top, rect.Width, rect.Height); - LinearGradientBrush solidBrush = new(solidRectF, c1, c2, 90f); - LinearGradientBrush insideBrush = new(insideRectF, c3, c4, 90f); + LinearGradientBrush solidBrush = new LinearGradientBrush(solidRectF, c1, c2, 90f); + LinearGradientBrush insideBrush = new LinearGradientBrush(insideRectF, c3, c4, 90f); cache.SolidPath = solidPath; cache.InsidePath = insidePath; @@ -10988,7 +11055,7 @@ protected virtual IDisposable DrawRibbonGroupCollapsedBorder(RenderContext conte } // Perform actual drawing using the cache values - using AntiAlias aa = new(context.Graphics); + using AntiAlias aa = new AntiAlias(context.Graphics); context.Graphics.DrawPath(cache.SolidPen, cache.SolidPath); context.Graphics.DrawPath(cache.InsidePen, cache.InsidePath); } @@ -11033,7 +11100,7 @@ protected virtual IDisposable DrawRibbonGroupCollapsedFrameBorder(RenderContext // Dispose of existing values cache.Dispose(); - GraphicsPath solidPath = new(); + GraphicsPath solidPath = new GraphicsPath(); // Create the rounded complete border solidPath.AddLine(rect.Left + 2, rect.Top, rect.Right - 3, rect.Top); @@ -11051,10 +11118,11 @@ protected virtual IDisposable DrawRibbonGroupCollapsedFrameBorder(RenderContext } // Perform actual drawing using the cache values - Rectangle titleRect = new(rect.Left + 1, rect.Bottom - GROUP_FRAME_TITLE_HEIGHT, rect.Width - 2, GROUP_FRAME_TITLE_HEIGHT - 1); + Rectangle titleRect = new Rectangle(rect.Left + 1, rect.Bottom - GROUP_FRAME_TITLE_HEIGHT, + rect.Width - 2, GROUP_FRAME_TITLE_HEIGHT - 1); context.Graphics.FillRectangle(cache.TitleBrush, titleRect); - using AntiAlias aa = new(context.Graphics); + using AntiAlias aa = new AntiAlias(context.Graphics); context.Graphics.DrawPath(cache.SolidPen, cache.SolidPath); } @@ -11098,7 +11166,7 @@ protected virtual IDisposable DrawRibbonGroupGradientOne(RenderContext context, // Dispose of existing values cache.Dispose(); - RectangleF rectF = new(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); + RectangleF rectF = new RectangleF(rect.Left - 1, rect.Top - 1, rect.Width + 2, rect.Height + 2); cache.Brush = new LinearGradientBrush(rectF, c1, c2, 90f) { Blend = _ribbonGroup8Blend @@ -11153,10 +11221,12 @@ protected virtual IDisposable DrawRibbonGroupGradientTwo(RenderContext context, cache.Dispose(); var topHeight = (int)(rect.Height * percent); - Rectangle topRect = new(rect.Left, rect.Top, rect.Width, topHeight); - Rectangle bottomRect = new(rect.Left, topRect.Bottom, rect.Width, rect.Height - topHeight); - RectangleF topRectF = new(topRect.Left - 1, topRect.Top - 1, topRect.Width + 2, topRect.Height + 2); - RectangleF bottomRectF = new(bottomRect.Left - 1, bottomRect.Top - 1, bottomRect.Width + 2, bottomRect.Height + 2); + Rectangle topRect = new Rectangle(rect.Left, rect.Top, rect.Width, topHeight); + Rectangle bottomRect = new Rectangle(rect.Left, topRect.Bottom, rect.Width, rect.Height - topHeight); + RectangleF topRectF = new RectangleF(topRect.Left - 1, topRect.Top - 1, topRect.Width + 2, + topRect.Height + 2); + RectangleF bottomRectF = new RectangleF(bottomRect.Left - 1, bottomRect.Top - 1, + bottomRect.Width + 2, bottomRect.Height + 2); cache.TopBrush = new LinearGradientBrush(topRectF, c1, c2, 90f); cache.BottomBrush = new LinearGradientBrush(bottomRectF, c3, c4, 90f); @@ -11213,9 +11283,9 @@ protected virtual IDisposable DrawRibbonQATMinibarSingle(RenderContext context, // Dispose of existing values cache.Dispose(); - GraphicsPath borderPath = new(); - GraphicsPath topRight1 = new(); - GraphicsPath bottomLeft1 = new(); + GraphicsPath borderPath = new GraphicsPath(); + GraphicsPath topRight1 = new GraphicsPath(); + GraphicsPath bottomLeft1 = new GraphicsPath(); // Find values needed for drawing the main border var left = rect.X + 1; @@ -11271,7 +11341,7 @@ protected virtual IDisposable DrawRibbonQATMinibarSingle(RenderContext context, cache.WhitenPen = new Pen(c5); } - using AntiAlias aa = new(context.Graphics); + using AntiAlias aa = new AntiAlias(context.Graphics); if (!composition) { // Draw the light borders @@ -11339,9 +11409,9 @@ protected virtual IDisposable DrawRibbonQATMinibarDouble(RenderContext context, // Dispose of existing values cache.Dispose(); - GraphicsPath borderPath = new(); - GraphicsPath topRight1 = new(); - GraphicsPath bottomLeft1 = new(); + GraphicsPath borderPath = new GraphicsPath(); + GraphicsPath topRight1 = new GraphicsPath(); + GraphicsPath bottomLeft1 = new GraphicsPath(); // Find values needed for drawing the main border var left = rect.X + 1; @@ -11398,7 +11468,7 @@ protected virtual IDisposable DrawRibbonQATMinibarDouble(RenderContext context, cache.WhitenPen = new Pen(c5); } - using AntiAlias aa = new(context.Graphics); + using AntiAlias aa = new AntiAlias(context.Graphics); if (!composition) { // Draw the light borders @@ -11507,7 +11577,7 @@ protected virtual IDisposable DrawRibbonLinearBorder(RenderContext context, cache.LinearPen = new Pen(cache.LinearBrush); // Create the rounded complete border - GraphicsPath borderPath = new(); + GraphicsPath borderPath = new GraphicsPath(); borderPath.AddLine(rect.Left + 2, rect.Top, rect.Right - 3, rect.Top); borderPath.AddLine(rect.Right - 3, rect.Top, rect.Right - 1, rect.Top + 2); borderPath.AddLine(rect.Right - 1, rect.Top + 2, rect.Right - 1, rect.Bottom - 3); @@ -11683,9 +11753,9 @@ protected virtual IDisposable DrawRibbonQATFullbarRound(RenderContext context, cache.InnerBrush = new LinearGradientBrush(rect, c1, c2, 90f); cache.DarkPen = new Pen(c3); - GraphicsPath darkPath = new(); - GraphicsPath lightPath1 = new(); - GraphicsPath lightPath2 = new(); + GraphicsPath darkPath = new GraphicsPath(); + GraphicsPath lightPath1 = new GraphicsPath(); + GraphicsPath lightPath2 = new GraphicsPath(); // Create the dark border darkPath.AddLine(rect.Left, rect.Top + 0.75f, rect.Left + 1, rect.Top); @@ -11714,7 +11784,7 @@ protected virtual IDisposable DrawRibbonQATFullbarRound(RenderContext context, context.Graphics.FillRectangle(cache.InnerBrush, cache.InnerRect); // Draw the dark/light lines - using AntiAlias aa = new(context.Graphics); + using AntiAlias aa = new AntiAlias(context.Graphics); context.Graphics.DrawPath(cache.DarkPen, cache.DarkPath); context.Graphics.DrawPath(_light1Pen, cache.LightPath1); context.Graphics.DrawPath(_light2Pen, cache.LightPath2); @@ -11825,17 +11895,14 @@ protected virtual IDisposable DrawRibbonQATOverflow(PaletteRibbonShape shape, // Draw a gradient for the inside of the area context.Graphics.FillRectangle(cache.BackBrush, rect); - using AntiAlias aa = new(context.Graphics); + using AntiAlias aa = new AntiAlias(context.Graphics); if (shape == PaletteRibbonShape.Office2010) { - context.Graphics.DrawPolygon(cache.BorderPen, new Point[]{ new(rect.Left + 1, rect.Top), - new(rect.Right - 2, rect.Top), - new(rect.Right - 1, rect.Top + 1), - new(rect.Right - 1, rect.Bottom - 2), - new(rect.Right - 2, rect.Bottom - 1), - new(rect.Left + 1, rect.Bottom - 1), - new(rect.Left, rect.Bottom - 2), - new(rect.Left, rect.Top + 1) }); + context.Graphics.DrawPolygon(cache.BorderPen, new Point[]{ + new Point(rect.Left + 1, rect.Top), new Point(rect.Right - 2, rect.Top), + new Point(rect.Right - 1, rect.Top + 1), new Point(rect.Right - 1, rect.Bottom - 2), + new Point(rect.Right - 2, rect.Bottom - 1), new Point(rect.Left + 1, rect.Bottom - 1), + new Point(rect.Left, rect.Bottom - 2), new Point(rect.Left, rect.Top + 1) }); } else { diff --git a/Source/Krypton Components/Krypton.Toolkit/Rendering/ThemeManager.cs b/Source/Krypton Components/Krypton.Toolkit/Rendering/ThemeManager.cs index d8d37c6f4..b76077d07 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Rendering/ThemeManager.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Rendering/ThemeManager.cs @@ -23,7 +23,8 @@ public class ThemeManager /// [Localizable(true)] // TODO: This should use the list from Z:\GitHub\Krypton-Suite\Standard-Toolkit\Source\Krypton Components\Krypton.Toolkit\Converters\PaletteModeConverter.cs - private static readonly BiDictionary _supportedThemes = new(new Dictionary + private static readonly BiDictionary _supportedThemes = + new BiDictionary(new Dictionary { { KryptonLanguageManager.ModeStrings.Professional, PaletteMode.ProfessionalSystem }, { KryptonLanguageManager.ModeStrings.Professional2003, PaletteMode.ProfessionalOffice2003 }, @@ -63,8 +64,14 @@ public class ThemeManager { KryptonLanguageManager.ModeStrings.Microsoft365BlueDarkMode, PaletteMode.Microsoft365BlueDarkMode }, { KryptonLanguageManager.ModeStrings.Microsoft365BlueLightMode, PaletteMode.Microsoft365BlueLightMode }, { KryptonLanguageManager.ModeStrings.Microsoft365Silver, PaletteMode.Microsoft365Silver }, - { KryptonLanguageManager.ModeStrings.Microsoft365SilverDarkMode, PaletteMode.Microsoft365SilverDarkMode }, - { KryptonLanguageManager.ModeStrings.Microsoft365SilverLightMode, PaletteMode.Microsoft365SilverLightMode }, + { + KryptonLanguageManager.ModeStrings.Microsoft365SilverDarkMode, + PaletteMode.Microsoft365SilverDarkMode + }, + { + KryptonLanguageManager.ModeStrings.Microsoft365SilverLightMode, + PaletteMode.Microsoft365SilverLightMode + }, { KryptonLanguageManager.ModeStrings.Microsoft365White, PaletteMode.Microsoft365White }, { KryptonLanguageManager.ModeStrings.Microsoft365Black, PaletteMode.Microsoft365Black }, { KryptonLanguageManager.ModeStrings.Microsoft365BlackDarkMode, PaletteMode.Microsoft365BlackDarkMode }, @@ -199,7 +206,7 @@ public static void LoadCustomTheme(KryptonCustomPaletteBase palette, KryptonMana /// public static string? ReturnPaletteModeAsString(PaletteMode paletteMode) { - PaletteModeConverter modeConverter = new(); + PaletteModeConverter modeConverter = new PaletteModeConverter(); return modeConverter.ConvertToString(paletteMode); } diff --git a/Source/Krypton Components/Krypton.Toolkit/ShellDialogs/FileDialogWrapper.cs b/Source/Krypton Components/Krypton.Toolkit/ShellDialogs/FileDialogWrapper.cs index 9440f0dcc..e2ffb5bbb 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ShellDialogs/FileDialogWrapper.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ShellDialogs/FileDialogWrapper.cs @@ -125,7 +125,7 @@ public abstract class FileDialogWrapper : ShellDialogWrapper /// Occurs when the user clicks on the Open or Save button on a file dialog box. [Description("Occurs when the user clicks on the Open or Save button on a file dialog box.")] - public abstract event CancelEventHandler FileOk; + public abstract event CancelEventHandler? FileOk; /// Gets the custom places collection for this instance. /// The custom places collection for this instance. diff --git a/Source/Krypton Components/Krypton.Toolkit/ShellDialogs/ShellBrowserDialogTFM.cs b/Source/Krypton Components/Krypton.Toolkit/ShellDialogs/ShellBrowserDialogTFM.cs index c23c69557..f8e8a812d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/ShellDialogs/ShellBrowserDialogTFM.cs +++ b/Source/Krypton Components/Krypton.Toolkit/ShellDialogs/ShellBrowserDialogTFM.cs @@ -16,7 +16,7 @@ namespace Krypton.Toolkit { internal class ShellBrowserDialogTFM : ShellDialogWrapper, IDisposable { - private readonly OpenFileDialog _internalOpenFileDialog = new();// { AutoUpgradeEnabled = true }; + private readonly OpenFileDialog _internalOpenFileDialog = new OpenFileDialog();// { AutoUpgradeEnabled = true }; private static readonly Type _ofd = typeof(OpenFileDialog); [Flags] diff --git a/Source/Krypton Components/Krypton.Toolkit/Tooling/ExceptionHandler.cs b/Source/Krypton Components/Krypton.Toolkit/Tooling/ExceptionHandler.cs index 839877a12..bc2ce87c1 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Tooling/ExceptionHandler.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Tooling/ExceptionHandler.cs @@ -65,7 +65,7 @@ public static void PrintStackTrace(Exception exception, string fileName) File.Create(fileName); } - StreamWriter writer = new(fileName); + StreamWriter writer = new StreamWriter(fileName); writer.Write(exception.ToString()); @@ -91,7 +91,7 @@ public static void PrintExceptionStackTrace(Exception exception, string fileName File.Create(fileName); } - StreamWriter writer = new(fileName); + StreamWriter writer = new StreamWriter(fileName); writer.Write(exception.StackTrace); diff --git a/Source/Krypton Components/Krypton.Toolkit/Translations/Converters/PaletteModeStrings.cs b/Source/Krypton Components/Krypton.Toolkit/Translations/Converters/PaletteModeStrings.cs index 64efde945..b1cd35b4d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Translations/Converters/PaletteModeStrings.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Translations/Converters/PaletteModeStrings.cs @@ -623,7 +623,7 @@ public static string[] ThemeArray { get { - PaletteModeStrings strings = new(); + PaletteModeStrings strings = new PaletteModeStrings(); return strings._themeArray; } diff --git a/Source/Krypton Components/Krypton.Toolkit/Utilities/BiDictionary.cs b/Source/Krypton Components/Krypton.Toolkit/Utilities/BiDictionary.cs index 081b2c360..db808b7ee 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Utilities/BiDictionary.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Utilities/BiDictionary.cs @@ -48,15 +48,13 @@ public void Add(TFirst first, TSecond second) public TFirst this[TSecond second] => GetBySecond(second)!; - [return: MaybeNull] - public TSecond GetByFirst(TFirst first) + public TSecond? GetByFirst(TFirst first) { _firstToSecond.TryGetValue(first, out var second); return second; } - [return: MaybeNull] - public TFirst GetBySecond(TSecond second) + public TFirst? GetBySecond(TSecond second) { _secondToFirst.TryGetValue(second, out var first); return first; diff --git a/Source/Krypton Components/Krypton.Toolkit/Utilities/GraphicsExtensions.cs b/Source/Krypton Components/Krypton.Toolkit/Utilities/GraphicsExtensions.cs index a823738ef..a09636957 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Utilities/GraphicsExtensions.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Utilities/GraphicsExtensions.cs @@ -21,7 +21,7 @@ public static class GraphicsExtensions /// public static Icon? LoadIcon(IconType type, Size size) { - IntPtr hIcon = ImageNativeMethods.LoadImage(IntPtr.Zero, "#" + (int)type, 1, size.Width, size.Height, 0); + IntPtr hIcon = ImageNativeMethods.LoadImage(IntPtr.Zero, $"#{(int)type}", 1, size.Width, size.Height, 0); return hIcon == IntPtr.Zero ? null : Icon.FromHandle(hIcon); } diff --git a/Source/Krypton Components/Krypton.Toolkit/Utilities/LanguagePackManager.cs b/Source/Krypton Components/Krypton.Toolkit/Utilities/LanguagePackManager.cs index e04affee8..32a23b130 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Utilities/LanguagePackManager.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Utilities/LanguagePackManager.cs @@ -16,7 +16,7 @@ internal class LanguagePackManager : Storage { #region Instance Fields - private readonly ArrayList _installedLanguagesList = new(); + private readonly ArrayList _installedLanguagesList = new ArrayList(); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Utilities/PaletteImageScaler.cs b/Source/Krypton Components/Krypton.Toolkit/Utilities/PaletteImageScaler.cs index 920e52595..a5c93fdd9 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Utilities/PaletteImageScaler.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Utilities/PaletteImageScaler.cs @@ -159,7 +159,7 @@ private static void ScaleButtonSpecImageType(KryptonPaletteButtonSpecTyped bst, { return img; } - using Bitmap tmpBmp = new(img); + using Bitmap tmpBmp = new Bitmap(img); tmpBmp.MakeTransparent(Color.Magenta); return CommonHelper.ScaleImageForSizedDisplay(tmpBmp, img.Width * scaleFactor.Width, img.Height * scaleFactor.Height); } diff --git a/Source/Krypton Components/Krypton.Toolkit/Utilities/RoundedRectangleF.cs b/Source/Krypton Components/Krypton.Toolkit/Utilities/RoundedRectangleF.cs index 42735d97c..0af2bef96 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Utilities/RoundedRectangleF.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Utilities/RoundedRectangleF.cs @@ -32,7 +32,7 @@ public class RoundedRectangleF /// Gets the rectangle. /// The rectangle. - public RectangleF Rect => new (_x, _y, _width, _height); + public RectangleF Rect => new RectangleF(_x, _y, _width, _height); #endregion @@ -59,7 +59,7 @@ public RoundedRectangleF(float width, float height, float radius, float x = 0, f var diameter = radius * 2; var size = new SizeF(diameter, diameter); - RectangleF arc = new (Rect.Location, size); + RectangleF arc = new RectangleF(Rect.Location, size); // The border is made of up a quarter of a circle arc, in each corner // top left arc diff --git a/Source/Krypton Components/Krypton.Toolkit/Values/BlurValues.cs b/Source/Krypton Components/Krypton.Toolkit/Values/BlurValues.cs index 053d57582..f48807e67 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Values/BlurValues.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Values/BlurValues.cs @@ -27,9 +27,9 @@ public class BlurValues : Storage #region Events #pragma warning disable 1591 [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public event EventHandler BlurWhenFocusLostChanged; + public event EventHandler? BlurWhenFocusLostChanged; [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public event EventHandler OpacityChanged; + public event EventHandler? OpacityChanged; #pragma warning restore 1591 #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Values/ButtonValues.cs b/Source/Krypton Components/Krypton.Toolkit/Values/ButtonValues.cs index 0382d4a42..93ab9ae85 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Values/ButtonValues.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Values/ButtonValues.cs @@ -35,7 +35,7 @@ public class ButtonValues : Storage, /// /// Occurs when the value of the Text property changes. /// - public event EventHandler TextChanged; + public event EventHandler? TextChanged; #endregion #region Identity @@ -235,7 +235,7 @@ public void ResetExtraText() /// Create the storage for the image states. /// /// Storage object. - protected virtual ButtonImageStates CreateImageStates() => new(); + protected virtual ButtonImageStates CreateImageStates() => new ButtonImageStates(); #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/Values/ColorButtonValues.cs b/Source/Krypton Components/Krypton.Toolkit/Values/ColorButtonValues.cs index 38c6536dd..e5dbebb09 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Values/ColorButtonValues.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Values/ColorButtonValues.cs @@ -42,7 +42,7 @@ public class ColorButtonValues : Storage, /// /// Occurs when the value of the Text property changes. /// - public event EventHandler TextChanged; + public event EventHandler? TextChanged; #endregion #region Identity @@ -324,7 +324,7 @@ public void ResetRoundedCorners() /// Create the storage for the image states. /// /// Storage object. - protected virtual ButtonImageStates CreateImageStates() => new(); + protected virtual ButtonImageStates CreateImageStates() => new ButtonImageStates(); #endregion @@ -364,7 +364,8 @@ public void ResetRoundedCorners() // Create a copy of the source image Size selectedRectSize = _selectedRect.Size; Size imageSize = image.Size; - Bitmap copyBitmap = new(image, Math.Max(selectedRectSize.Width, imageSize.Width), Math.Max(selectedRectSize.Height, imageSize.Height)); + Bitmap copyBitmap = new Bitmap(image, Math.Max(selectedRectSize.Width, imageSize.Width), + Math.Max(selectedRectSize.Height, imageSize.Height)); // Paint over the image with a color indicator using (Graphics g = Graphics.FromImage(copyBitmap)) @@ -376,13 +377,13 @@ public void ResetRoundedCorners() // Indicate the absence of a color by drawing a border around // the selected color area, thus indicating the area inside the // block is blank/empty. - using Pen borderPen = new(_emptyBorderColor); + using Pen borderPen = new Pen(_emptyBorderColor); DrawRoundedRectangle(g, borderPen, _selectedRect, _roundedCorners); } else { // We have a valid selected color so draw a solid block of color - using SolidBrush colorBrush = new(_selectedColor); + using SolidBrush colorBrush = new SolidBrush(_selectedColor); FillRoundedRectangle(g, colorBrush, _selectedRect, _roundedCorners); } } diff --git a/Source/Krypton Components/Krypton.Toolkit/Values/FixedContentValue.cs b/Source/Krypton Components/Krypton.Toolkit/Values/FixedContentValue.cs index 01e1c7a99..7a14cb54d 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Values/FixedContentValue.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Values/FixedContentValue.cs @@ -33,9 +33,9 @@ public FixedContentValue() /// Initial long text value. /// Initial image value. /// Initial image transparent color value. - public FixedContentValue(string shortText, - string longText, - Image image, + public FixedContentValue(string? shortText, + string? longText, + Image? image, Color imageTransparentColor) { ShortText = shortText; diff --git a/Source/Krypton Components/Krypton.Toolkit/Values/HeaderValuesBase.cs b/Source/Krypton Components/Krypton.Toolkit/Values/HeaderValuesBase.cs index 7b8d456e2..a627f6ecf 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Values/HeaderValuesBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Values/HeaderValuesBase.cs @@ -33,7 +33,7 @@ public abstract class HeaderValuesBase : Storage, /// /// Occurs when the value of the Text property changes. /// - public event EventHandler TextChanged; + public event EventHandler? TextChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Values/IntegratedToolBarValues.cs b/Source/Krypton Components/Krypton.Toolkit/Values/IntegratedToolBarValues.cs index d31edc2f1..77c765289 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Values/IntegratedToolBarValues.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Values/IntegratedToolBarValues.cs @@ -68,20 +68,20 @@ private void SetupIntegratedToolBarButtons() { if (_integratedToolBarItems != null) { - ButtonSpecAny newButtonSpec = new(), - openButtonSpecAny = new(), - saveButtonSpecAny = new(), - saveAsButtonSpecAny = new(), - saveAllButtonSpecAny = new(), - cutButtonSpecAny = new(), - copyButtonSpecAny = new(), - pasteButtonSpecAny = new(), - undoButtonSpecAny = new(), - redoButtonSpecAny = new(), - pageSetupButtonSpecAny = new(), - printPreviewButtonSpecAny = new(), - printButtonSpecAny = new(), - quickPrintButtonSpecAny = new(); + ButtonSpecAny newButtonSpec = new ButtonSpecAny(), + openButtonSpecAny = new ButtonSpecAny(), + saveButtonSpecAny = new ButtonSpecAny(), + saveAsButtonSpecAny = new ButtonSpecAny(), + saveAllButtonSpecAny = new ButtonSpecAny(), + cutButtonSpecAny = new ButtonSpecAny(), + copyButtonSpecAny = new ButtonSpecAny(), + pasteButtonSpecAny = new ButtonSpecAny(), + undoButtonSpecAny = new ButtonSpecAny(), + redoButtonSpecAny = new ButtonSpecAny(), + pageSetupButtonSpecAny = new ButtonSpecAny(), + printPreviewButtonSpecAny = new ButtonSpecAny(), + printButtonSpecAny = new ButtonSpecAny(), + quickPrintButtonSpecAny = new ButtonSpecAny(); // Set up buttons newButtonSpec.Type = PaletteButtonSpecStyle.New; diff --git a/Source/Krypton Components/Krypton.Toolkit/Values/LabelValues.cs b/Source/Krypton Components/Krypton.Toolkit/Values/LabelValues.cs index 69d696cb9..f560f013e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Values/LabelValues.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Values/LabelValues.cs @@ -34,7 +34,7 @@ public class LabelValues : Storage, /// /// Occures when the value of the Text property changes. /// - public event EventHandler TextChanged; + public event EventHandler? TextChanged; #endregion #region Identity diff --git a/Source/Krypton Components/Krypton.Toolkit/Values/ShadowValues.cs b/Source/Krypton Components/Krypton.Toolkit/Values/ShadowValues.cs index 861f63a6d..20685b1d8 100644 --- a/Source/Krypton Components/Krypton.Toolkit/Values/ShadowValues.cs +++ b/Source/Krypton Components/Krypton.Toolkit/Values/ShadowValues.cs @@ -20,7 +20,7 @@ namespace Krypton.Toolkit public class ShadowValues : Storage { #region statics - private static readonly Point _defaultOffset = new(5, 5); + private static readonly Point _defaultOffset = new Point(5, 5); private double _blurDistance; private bool _enableShadows; private Point _offset; @@ -32,15 +32,15 @@ public class ShadowValues : Storage #region Events #pragma warning disable 1591 [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public event EventHandler EnableShadowsChanged; + public event EventHandler? EnableShadowsChanged; [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public event EventHandler MarginsChanged; + public event EventHandler? MarginsChanged; [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public event EventHandler BlurDistanceChanged; + public event EventHandler? BlurDistanceChanged; [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public event EventHandler ColourChanged; + public event EventHandler? ColourChanged; [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] - public event EventHandler OpacityChanged; + public event EventHandler? OpacityChanged; #pragma warning restore 1591 #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewBase.cs b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewBase.cs index 063b2873a..e33b71173 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewBase.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewBase.cs @@ -32,7 +32,7 @@ public abstract class ViewBase : GlobalId, private PaletteState _fixedState; private PaletteState _elementState; - private Control _owningControl; + private Control? _owningControl; private float _factorDpiY; private float _factorDpiX; @@ -110,7 +110,7 @@ protected virtual void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewBase:" + Id; + $@"ViewBase:{Id}"; #endregion @@ -118,9 +118,20 @@ public override string ToString() => /// /// Gets and sets a reference to the control instance that contains this view element. /// - public virtual Control OwningControl + public virtual Control? OwningControl { - get => _owningControl; + get + { + Control? owningCrl = _owningControl; + ViewBase? parent = Parent; + while (owningCrl is null + && parent is not null) + { + owningCrl = parent.OwningControl; + parent = parent.Parent; + } + return owningCrl; + } set => _owningControl = value; } diff --git a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewComposite.cs b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewComposite.cs index fc3c7b335..0f68070f4 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewComposite.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewComposite.cs @@ -58,7 +58,7 @@ protected override void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier with child count - "ViewComposite:" + Id; + $"ViewComposite:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewContextMenuManager.cs b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewContextMenuManager.cs index 8bb2df108..ba053296f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewContextMenuManager.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewContextMenuManager.cs @@ -426,7 +426,7 @@ public bool DoesStackedClientMouseDownBecomeCurrent(Message m, Point pt) => #region Implementation private TargetList ConstructKeyboardTargets(ViewBase root) { - TargetList targets = new(); + TargetList targets = new TargetList(); FindKeyboardTargets(root, targets); return targets; } diff --git a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewControl.cs b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewControl.cs index db9226ebe..93e5569f9 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewControl.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewControl.cs @@ -26,12 +26,12 @@ public class ViewControl : Control /// /// Occurs when the background needs painting. /// - public event PaintEventHandler PaintBackground; + public event PaintEventHandler? PaintBackground; /// /// Occurs when the WM_NCHITTEST occurs. /// - public event EventHandler WndProcHitTest; + public event EventHandler? WndProcHitTest; #endregion #region Instance Fields @@ -157,12 +157,8 @@ protected override void OnPaint(PaintEventArgs e) PaintBackground?.Invoke(this, e); // Create a render context for drawing the view - using RenderContext context = new(GetViewManager(), - this, - RootInstance, - e.Graphics, - e.ClipRectangle, - Renderer); + using RenderContext context = new RenderContext(GetViewManager(), this, RootInstance, e.Graphics, + e.ClipRectangle, Renderer); // Ask the view to paint itself ViewLayoutControl.ChildView.Render(context); } @@ -392,10 +388,10 @@ protected override void WndProc(ref Message m) if (m.Msg == PI.WM_.NCHITTEST) { // Extract the screen point for the hit test - Point screenPoint = new((int)m.LParam.ToInt64()); + Point screenPoint = new Point((int)m.LParam.ToInt64()); // Generate event so message can be processed - ViewControlHitTestArgs args = new(PointToClient(screenPoint)); + ViewControlHitTestArgs args = new ViewControlHitTestArgs(PointToClient(screenPoint)); OnWndProcHitTest(args); if (!args.Cancel) diff --git a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewDecorator.cs b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewDecorator.cs index 30b0f8063..0102f54cd 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewDecorator.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewDecorator.cs @@ -55,7 +55,7 @@ protected override void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDecorator:" + Id; + $"ViewDecorator:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewLeaf.cs b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewLeaf.cs index 6f8db874d..ae71d6c21 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewLeaf.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewLeaf.cs @@ -31,7 +31,7 @@ protected ViewLeaf() /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewLeaf:" + Id; + $@"ViewLeaf:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewManager.cs b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewManager.cs index 16c7a26ff..e3e24072b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Base/ViewManager.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Base/ViewManager.cs @@ -176,11 +176,8 @@ public virtual Size GetPreferredSize(IRenderer? renderer, if (!Control.IsDisposed) { // Create a layout context for calculating size and positioning - using ViewLayoutContext context = new(this, - Control, - AlignControl, - renderer, - proposedSize); + using ViewLayoutContext context = new ViewLayoutContext(this, + Control, AlignControl, renderer, proposedSize); retSize = Root.GetPreferredSize(context); } @@ -217,10 +214,7 @@ public bool EvalTransparentPaint([DisallowNull] IRenderer renderer) } // Create a layout context for calculating size and positioning - using ViewContext context = new(this, - Control, - AlignControl, - renderer); + using ViewContext context = new ViewContext(this, Control, AlignControl, renderer); // Ask the view to perform operation return Root.EvalTransparentPaint(context); } @@ -299,10 +293,7 @@ public virtual void Layout([DisallowNull] IRenderer renderer) if (!Control.IsDisposed) { // Create a layout context for calculating size and positioning - using ViewLayoutContext context = new(this, - Control, - AlignControl, - renderer); + using ViewLayoutContext context = new ViewLayoutContext(this, Control, AlignControl, renderer); Layout(context); } } @@ -389,12 +380,8 @@ public virtual void Paint([DisallowNull] IRenderer renderer, PaintEventArgs e) if (!Control.IsDisposed) { // Create a render context for drawing the view - using RenderContext context = new(this, - Control, - AlignControl, - e.Graphics, - e.ClipRectangle, - renderer); + using RenderContext context = new RenderContext(this, + Control, AlignControl, e.Graphics, e.ClipRectangle, renderer); Paint(context); } } @@ -462,7 +449,7 @@ public virtual void MouseMove([DisallowNull] MouseEventArgs e, Point rawPt) throw new ArgumentNullException(nameof(e)); } - Point pt = new(e.X, e.Y); + Point pt = new Point(e.X, e.Y); // Set the correct active view from the point UpdateViewFromPoint(Control, pt); @@ -487,7 +474,7 @@ public virtual void MouseDown([DisallowNull] MouseEventArgs e, Point rawPt) throw new ArgumentNullException(nameof(e)); } - Point pt = new(e.X, e.Y); + Point pt = new Point(e.X, e.Y); // Set the correct active view from the point UpdateViewFromPoint(Control, pt); @@ -518,7 +505,7 @@ public virtual void MouseUp([DisallowNull] MouseEventArgs e, Point rawPt) throw new ArgumentNullException(nameof(e)); } - Point pt = new(e.X, e.Y); + Point pt = new Point(e.X, e.Y); // Set the correct active view from the point UpdateViewFromPoint(Control, pt); diff --git a/Source/Krypton Components/Krypton.Toolkit/View Decorator/ViewDecoratorFixedSize.cs b/Source/Krypton Components/Krypton.Toolkit/View Decorator/ViewDecoratorFixedSize.cs index 890c0a982..fb58ea902 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Decorator/ViewDecoratorFixedSize.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Decorator/ViewDecoratorFixedSize.cs @@ -31,7 +31,7 @@ public ViewDecoratorFixedSize(ViewBase child, Size fixedSize) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewDecoratorFixedSize:" + Id; + $@"ViewDecoratorFixedSize:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawBorderEdge.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawBorderEdge.cs index 60f6e404d..c22864960 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawBorderEdge.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawBorderEdge.cs @@ -53,7 +53,7 @@ public ViewDrawBorderEdge([DisallowNull] PaletteBorderEdge palette, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawBorderEdge:" + Id; + $"ViewDrawBorderEdge:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawButton.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawButton.cs index e8924fe78..d0f96d919 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawButton.cs @@ -153,7 +153,7 @@ public ViewDrawButton(IPaletteTriple paletteDisabled, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawButton:" + Id; + $"ViewDrawButton:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawCanvas.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawCanvas.cs index b2238b8a1..7d9676f57 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawCanvas.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawCanvas.cs @@ -78,7 +78,7 @@ public ViewDrawCanvas(IPaletteBack paletteBack, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawCanvas:" + Id; + $"ViewDrawCanvas:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawCheckBox.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawCheckBox.cs index 0b1dfde8b..84af62aee 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawCheckBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawCheckBox.cs @@ -40,7 +40,7 @@ public ViewDrawCheckBox([DisallowNull] PaletteBase palette) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawCheckBox:" + Id; + $"ViewDrawCheckBox:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawContent.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawContent.cs index 015bdd0d3..343080525 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawContent.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawContent.cs @@ -80,7 +80,7 @@ public ViewDrawContent(IPaletteContent? paletteContent, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawContent:" + Id; + $"ViewDrawContent:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDateTimeButton.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDateTimeButton.cs index ecec65e41..a7fbcb8a9 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDateTimeButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDateTimeButton.cs @@ -50,12 +50,12 @@ public enum DrawDateTimeGlyph /// /// Occurs when the button is clicked. /// - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the mouse is used to left select the target. /// - public event MouseEventHandler MouseSelect; + public event MouseEventHandler? MouseSelect; #endregion #region Identity @@ -100,7 +100,7 @@ public ViewDrawDateTimeButton(KryptonDateTimePicker dateTimePicker, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawDateTimeButton:" + Id; + $"ViewDrawDateTimeButton:{Id}"; #endregion @@ -119,7 +119,7 @@ public override string ToString() => /// Layout context. public override Size GetPreferredSize(ViewLayoutContext context) => // We want to be as wide as drop down buttons on standard controls - new (SystemInformation.VerticalScrollBarWidth - 2, 0); + new Size(SystemInformation.VerticalScrollBarWidth - 2, 0); /// /// Perform a layout of the elements. diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDateTimeText.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDateTimeText.cs index 86d6747cb..a4e1f4b32 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDateTimeText.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDateTimeText.cs @@ -56,7 +56,7 @@ public FormatHandler(KryptonDateTimePicker dateTimePicker, /// User readable name of the instance. public override string ToString() { - StringBuilder ret = new(); + StringBuilder ret = new StringBuilder(); foreach (FormatFragment fmt in _fragments) { ret.Append(fmt.GetDisplay(DateTime)); @@ -406,7 +406,7 @@ public void InputDigit(char digit) if (!HasActiveFragment) { // Use evnet to show that we are overflowing - CancelEventArgs cea = new(); + CancelEventArgs cea = new CancelEventArgs(); _timeText.OnAutoShiftOverflow(cea); // Event might be cancelled so check we want to overflow @@ -452,7 +452,7 @@ public void InputDigit(char digit) if (!HasActiveFragment) { // Use evnet to show that we are overflowing - CancelEventArgs cea = new(); + CancelEventArgs cea = new CancelEventArgs(); _timeText.OnAutoShiftOverflow(cea); // Event might be cancelled so check we want to overflow @@ -549,7 +549,8 @@ public void Render(RenderContext context, Font font, Rectangle rect, totalWidth = rect.Width; } - Rectangle drawText = new(rect.X + lastTotalWidth, rect.Y, totalWidth - lastTotalWidth, rect.Height); + Rectangle drawText = new Rectangle(rect.X + lastTotalWidth, rect.Y, + totalWidth - lastTotalWidth, rect.Height); if (drawText.Width > 0) { // If we need to draw a focus indication? @@ -566,7 +567,7 @@ public void Render(RenderContext context, Font font, Rectangle rect, } else { - using (SolidBrush fillBrush = new(foreColor)) + using (SolidBrush fillBrush = new SolidBrush(foreColor)) { context.Graphics.FillRectangle(fillBrush, drawText); } @@ -647,7 +648,7 @@ private void MeasureFragments(Graphics? g, Font font, DateTime dt) } // Update format with details of the ranges to measure - StringFormat measureFormat = new(StringFormatFlags.FitBlackBox); + StringFormat measureFormat = new StringFormat(StringFormatFlags.FitBlackBox); measureFormat.SetMeasurableCharacterRanges(charRanges); // Perform measuring using the output of the last fragment (last frag must be the whole output string) @@ -662,7 +663,7 @@ private void MeasureFragments(Graphics? g, Font font, DateTime dt) private FormatFragmentList ParseFormatToFragments(string format) { - FormatFragmentList fragList = new(); + FormatFragmentList fragList = new FormatFragmentList(); // Grab the string used for formatting var length = format.Length; @@ -851,7 +852,7 @@ public string GenerateOutput(DateTime dt) /// /// DateTime to format. /// Display string. - public virtual string GetDisplay(DateTime dt) => FragFormat.Length == 1 ? dt.ToString("\\" + FragFormat) : dt.ToString(FragFormat); + public virtual string GetDisplay(DateTime dt) => FragFormat.Length == 1 ? dt.ToString($"\\{FragFormat}") : dt.ToString(FragFormat); /// /// Increment the current fragment value. @@ -903,7 +904,7 @@ public FormatFragmentChar(int index, string format, char character, int count) /// Output a text representation of the fragment. /// /// String instance. - public override string ToString() => base.ToString() + " (" + _fragFormat + ")"; + public override string ToString() => $"{base.ToString()} ({_fragFormat})"; #endregion @@ -1261,7 +1262,7 @@ private class FormatFragmentList : List { } #endregion #region Static Fields - private static readonly RectangleF _measureRect = new(0, 0, 1000, 1000); + private static readonly RectangleF _measureRect = new RectangleF(0, 0, 1000, 1000); private const TextFormatFlags MEASURE_FLAGS = TextFormatFlags.TextBoxControl | TextFormatFlags.NoPadding | TextFormatFlags.VerticalCenter; private const TextFormatFlags DRAW_LEFT_FLAGS = TextFormatFlags.TextBoxControl | TextFormatFlags.NoPadding | TextFormatFlags.VerticalCenter; @@ -1644,7 +1645,7 @@ public override void Render(RenderContext context) _formatHandler.DateTime = _dateTimePicker.Value; // Ask the format handler to perform actual rendering of the text - using Clipping clipped = new(context.Graphics, ClientRectangle); + using Clipping clipped = new Clipping(context.Graphics, ClientRectangle); _formatHandler.Render(context, GetFont(), ClientRectangle, GetTextColor(), GetBackColor(), _dateTimePicker.Checked); diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDebug.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDebug.cs index bf6726e00..c110afd25 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDebug.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDebug.cs @@ -41,7 +41,7 @@ public ViewDrawDebug(Size preferredSize, Color color) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawDebug:" + Id; + $"ViewDrawDebug:{Id}"; #endregion @@ -89,7 +89,7 @@ public override void RenderBefore([DisallowNull] RenderContext context) } // Ignore renderer, we just draw using solid color for debugging purposes - using SolidBrush brush = new(_color); + using SolidBrush brush = new SolidBrush(_color); context.Graphics.FillRectangle(brush, ClientRectangle); } #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDocker.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDocker.cs index 59ecbc7a1..6adc97815 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDocker.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDocker.cs @@ -107,7 +107,7 @@ public ViewDrawDocker(IPaletteBack paletteBack, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawDocker:" + Id; + $"ViewDrawDocker:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDropDownButton.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDropDownButton.cs index 4d5040857..f8bb0078c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDropDownButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawDropDownButton.cs @@ -29,7 +29,7 @@ public class ViewDrawDropDownButton : ViewLeaf /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawDropDownButton:" + Id; + $"ViewDrawDropDownButton:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawEmptyContent.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawEmptyContent.cs index bf737856e..39bd95d4a 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawEmptyContent.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawEmptyContent.cs @@ -43,7 +43,7 @@ public ViewDrawEmptyContent(IPaletteContent? paletteContentDisabled, /// /// User readable name of the instance. // Return the class name and instance identifier - public override string ToString() => "ViewDrawEmptyContent:" + Id; + public override string ToString() => $"ViewDrawEmptyContent:{Id}"; #endregion #region Layout diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawForm.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawForm.cs index 5534e56f8..0f54c918f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawForm.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawForm.cs @@ -58,7 +58,7 @@ protected override void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawForm:" + Id; + $"ViewDrawForm:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawGroupBoxDocker.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawGroupBoxDocker.cs index d7de6d27c..b28b5e08e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawGroupBoxDocker.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawGroupBoxDocker.cs @@ -39,7 +39,7 @@ public ViewDrawGroupBoxDocker(IPaletteBack paletteBack, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawGroupBoxDocker:" + Id; + $"ViewDrawGroupBoxDocker:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuCheckBox.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuCheckBox.cs index 0405f9f94..fdc5a0dd4 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuCheckBox.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuCheckBox.cs @@ -86,7 +86,8 @@ public ViewDrawMenuCheckBox(IContextMenuProvider provider, }; // Use context menu specific version of the check box controller - MenuCheckBoxController mcbc = new(provider.ProviderViewManager, _innerDocker, this, provider.ProviderNeedPaintDelegate); + MenuCheckBoxController mcbc = new MenuCheckBoxController(provider.ProviderViewManager, _innerDocker, this, + provider.ProviderNeedPaintDelegate); mcbc.Click += OnClick; _innerDocker.MouseController = mcbc; _innerDocker.KeyController = mcbc; @@ -111,7 +112,7 @@ public ViewDrawMenuCheckBox(IContextMenuProvider provider, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuCheckBox:" + Id; + $"ViewDrawMenuCheckBox:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuCheckButton.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuCheckButton.cs index a82fa0c03..6691d3268 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuCheckButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuCheckButton.cs @@ -83,7 +83,8 @@ public ViewDrawMenuCheckButton(IContextMenuProvider provider, }; // Use context menu specific version of the check box controller - MenuCheckButtonController mcbc = new(provider.ProviderViewManager, _innerDocker, this, provider.ProviderNeedPaintDelegate); + MenuCheckButtonController mcbc = new MenuCheckButtonController(provider.ProviderViewManager, _innerDocker, + this, provider.ProviderNeedPaintDelegate); mcbc.Click += OnClick; _innerDocker.MouseController = mcbc; _innerDocker.KeyController = mcbc; @@ -108,7 +109,7 @@ public ViewDrawMenuCheckButton(IContextMenuProvider provider, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuCheckButton:" + Id; + $"ViewDrawMenuCheckButton:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorBlock.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorBlock.cs index 31895cb17..7494fd9d9 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorBlock.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorBlock.cs @@ -51,7 +51,8 @@ public ViewDrawMenuColorBlock(IContextMenuProvider provider, _blockSize = colorColumns.BlockSize; // Use context menu specific version of the radio button controller - MenuColorBlockController mcbc = new(provider.ProviderViewManager, this, this, provider.ProviderNeedPaintDelegate); + MenuColorBlockController mcbc = new MenuColorBlockController(provider.ProviderViewManager, this, this, + provider.ProviderNeedPaintDelegate); mcbc.Click += OnClick; MouseController = mcbc; KeyController = mcbc; @@ -63,7 +64,7 @@ public ViewDrawMenuColorBlock(IContextMenuProvider provider, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuColorBlock:" + Id; + $"ViewDrawMenuColorBlock:{Id}"; #endregion @@ -190,7 +191,7 @@ public override void RenderBefore([DisallowNull] RenderContext context) } // Draw ourself in the designated color - using SolidBrush brush = new(Color); + using SolidBrush brush = new SolidBrush(Color); context.Graphics.FillRectangle(brush, drawRect); } @@ -243,8 +244,8 @@ public override void RenderAfter([DisallowNull] RenderContext context) if (!outside.IsEmpty && !inside.IsEmpty) { // Draw the outside and inside areas of the block - using Pen outsidePen = new(outside), - insidePen = new(inside); + using Pen outsidePen = new Pen(outside), + insidePen = new Pen(inside); context.Graphics.DrawRectangle(outsidePen, ClientLocation.X, ClientLocation.Y, ClientWidth - 1, ClientHeight - 1); context.Graphics.DrawRectangle(insidePen, ClientLocation.X + 1, ClientLocation.Y + 1, ClientWidth - 3, ClientHeight - 3); } diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorColumn.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorColumn.cs index edfcb0160..ed9452381 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorColumn.cs @@ -34,7 +34,7 @@ public ViewDrawMenuColorColumn(IContextMenuProvider provider, int end, bool enabled) { - ViewLayoutColorStack vertical = new(); + ViewLayoutColorStack vertical = new ViewLayoutColorStack(); for (var i = start; i < end; i++) { @@ -51,7 +51,7 @@ public ViewDrawMenuColorColumn(IContextMenuProvider provider, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuColorColumn:" + Id; + $"ViewDrawMenuColorColumn:{Id}"; #endregion @@ -92,7 +92,7 @@ public override void RenderBefore([DisallowNull] RenderContext context) throw new ArgumentNullException(nameof(context)); } - using SolidBrush brush = new(Color.FromArgb(197, 197, 197)); + using SolidBrush brush = new SolidBrush(Color.FromArgb(197, 197, 197)); context.Graphics.FillRectangle(brush, ClientRectangle); } #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorColumns.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorColumns.cs index b4c563b72..0fb22dea3 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorColumns.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuColorColumns.cs @@ -48,7 +48,7 @@ public ViewDrawMenuColorColumns(IContextMenuProvider provider, var enabled = provider.ProviderEnabled; // Always assume there is a first row of colors - ViewLayoutStack fillStack = new(false) + ViewLayoutStack fillStack = new ViewLayoutStack(false) { CreateColumns(provider, colorColumns, colors, 0, 1, enabled) }; @@ -108,7 +108,7 @@ protected override void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuColorColumns:" + Id; + $"ViewDrawMenuColorColumns:{Id}"; #endregion @@ -137,7 +137,7 @@ private ViewLayoutStack CreateColumns(IContextMenuProvider provider, bool enabled) { // Create a horizontal stack of columns - ViewLayoutStack columns = new(true) + ViewLayoutStack columns = new ViewLayoutStack(true) { FillLastChild = false }; @@ -152,7 +152,8 @@ private ViewLayoutStack CreateColumns(IContextMenuProvider provider, } // Add container for the column, this draws the background - ViewDrawMenuColorColumn colorColumn = new(provider, colorColumns, colors[i], start, end, enabled); + ViewDrawMenuColorColumn colorColumn = + new ViewDrawMenuColorColumn(provider, colorColumns, colors[i], start, end, enabled); columns.Add(colorColumn); } diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuHeading.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuHeading.cs index c0963485c..9a11e0480 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuHeading.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuHeading.cs @@ -57,7 +57,7 @@ public ViewDrawMenuHeading(KryptonContextMenuHeading heading, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuHeading:" + Id; + $"ViewDrawMenuHeading:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageCanvas.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageCanvas.cs index 633547ef9..e08093808 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageCanvas.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageCanvas.cs @@ -45,7 +45,7 @@ public ViewDrawMenuImageCanvas(IPaletteBack paletteBack, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuCanvas:" + Id; + $"ViewDrawMenuCanvas:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageColumn.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageColumn.cs index 518fa6916..997ee5a68 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageColumn.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageColumn.cs @@ -41,7 +41,7 @@ public ViewDrawMenuImageColumn(KryptonContextMenuItems items, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuImageColumn:" + Id; + $"ViewDrawMenuImageColumn:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageSelectItem.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageSelectItem.cs index 52f8325f0..06c4ec664 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageSelectItem.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuImageSelectItem.cs @@ -65,7 +65,7 @@ public ViewDrawMenuImageSelectItem(ViewContextMenuManager viewManager, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuImageSelectItem:" + Id; + $"ViewDrawMenuImageSelectItem:{Id}"; #endregion @@ -188,7 +188,7 @@ private void OnItemClick(object sender, MouseEventArgs e) if (_layout.CanCloseMenu) { // Ask the original context menu definition, if we can close - CancelEventArgs cea = new(); + CancelEventArgs cea = new CancelEventArgs(); _layout.Closing(cea); if (!cea.Cancel) diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuItem.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuItem.cs index 6748d78cd..6dd17ff7b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuItem.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuItem.cs @@ -66,7 +66,7 @@ public ViewDrawMenuItem(IContextMenuProvider provider, KryptonContextMenuItem.SetPaletteRedirect(provider); // Create a stack of horizontal items inside the item - ViewLayoutDocker docker = new(); + ViewLayoutDocker docker = new ViewLayoutDocker(); // Decide on the enabled state of the display ItemEnabled = provider.ProviderEnabled && ResolveEnabled; @@ -149,7 +149,8 @@ public ViewDrawMenuItem(IContextMenuProvider provider, Add(docker); // Add a controller for handing mouse and keyboard events - MenuItemController mic = new(provider.ProviderViewManager, this, provider.ProviderNeedPaintDelegate); + MenuItemController mic = + new MenuItemController(provider.ProviderViewManager, this, provider.ProviderNeedPaintDelegate); MouseController = mic; KeyController = mic; @@ -170,7 +171,7 @@ public ViewDrawMenuItem(IContextMenuProvider provider, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuItem:" + Id; + $"ViewDrawMenuItem:{Id}"; /// /// Clean up any resources being used. diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuItemContent.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuItemContent.cs index 5cf01fb7a..113e9d2c7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuItemContent.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuItemContent.cs @@ -42,7 +42,7 @@ public ViewDrawMenuItemContent(IPaletteContent palette, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuItemContent:" + Id; + $"ViewDrawMenuItemContent:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuLinkLabel.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuLinkLabel.cs index 4a5f784b6..e6662271b 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuLinkLabel.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuLinkLabel.cs @@ -73,7 +73,8 @@ public ViewDrawMenuLinkLabel(IContextMenuProvider provider, }; // Use context menu specific version of the link label controller - MenuLinkLabelController mllc = new(provider.ProviderViewManager, _drawContent, this, provider.ProviderNeedPaintDelegate); + MenuLinkLabelController mllc = new MenuLinkLabelController(provider.ProviderViewManager, _drawContent, this, + provider.ProviderNeedPaintDelegate); mllc.Click += OnClick; _drawContent.MouseController = mllc; _drawContent.KeyController = mllc; @@ -98,7 +99,7 @@ public ViewDrawMenuLinkLabel(IContextMenuProvider provider, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuLinkLabel:" + Id; + $"ViewDrawMenuLinkLabel:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuMonthCalendar.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuMonthCalendar.cs index a2a02760c..bbe846f4c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuMonthCalendar.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuMonthCalendar.cs @@ -80,7 +80,7 @@ protected override void Dispose(bool disposing) => /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuMonthCalendar:" + Id; + $"ViewDrawMenuMonthCalendar:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuRadioButton.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuRadioButton.cs index f5fe7b556..a52fc386e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuRadioButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuRadioButton.cs @@ -85,7 +85,8 @@ public ViewDrawMenuRadioButton(IContextMenuProvider provider, }; // Use context menu specific version of the radio button controller - MenuRadioButtonController mrbc = new(provider.ProviderViewManager, _innerDocker, this, provider.ProviderNeedPaintDelegate); + MenuRadioButtonController mrbc = new MenuRadioButtonController(provider.ProviderViewManager, _innerDocker, + this, provider.ProviderNeedPaintDelegate); mrbc.Click += OnClick; _innerDocker.MouseController = mrbc; _innerDocker.KeyController = mrbc; @@ -110,7 +111,7 @@ public ViewDrawMenuRadioButton(IContextMenuProvider provider, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuRadioButton:" + Id; + $"ViewDrawMenuRadioButton:{Id}"; /// /// Release unmanaged and optionally managed resources. diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuSeparator.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuSeparator.cs index 64040d2bf..1865ff79c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuSeparator.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMenuSeparator.cs @@ -57,7 +57,7 @@ public ViewDrawMenuSeparator(PaletteDouble? state) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMenuSeparator:" + Id; + $"ViewDrawMenuSeparator:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonth.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonth.cs index b0e990800..8dcc06e80 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonth.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonth.cs @@ -104,9 +104,9 @@ public ViewDrawMonth(IKryptonMonthCalendar calendar, _calendar.GetToolStripDelegate, needPaintDelegate); // Create stacks for holding display items - ViewLayoutStack namesStack = new(true); - ViewLayoutStack weeksStack = new(true); - ViewLayoutStack daysStack = new(false); + ViewLayoutStack namesStack = new ViewLayoutStack(true); + ViewLayoutStack weeksStack = new ViewLayoutStack(true); + ViewLayoutStack daysStack = new ViewLayoutStack(false); _numberStack = new ViewLayoutStack(false); weeksStack.Add(_numberStack); weeksStack.Add(daysStack); @@ -124,7 +124,7 @@ public ViewDrawMonth(IKryptonMonthCalendar calendar, _borderEdge = new PaletteBorderEdge(_borderEdgeRedirect, null); _drawBorderEdge = new ViewDrawBorderEdge(_borderEdge, Orientation.Vertical); _drawWeekNumbers = new ViewDrawWeekNumbers(_calendar, _months); - ViewLayoutDocker borderLeftDock = new() + ViewLayoutDocker borderLeftDock = new ViewLayoutDocker { { _drawWeekNumbers, ViewDockStyle.Left }, { new ViewLayoutSeparator(0, 4), ViewDockStyle.Top }, @@ -134,10 +134,11 @@ public ViewDrawMonth(IKryptonMonthCalendar calendar, _numberStack.Add(borderLeftDock); // Add border between day names and individual days - PaletteBorderEdgeRedirect borderEdgeRedirect = new(_calendar.StateNormal.Header.Border, null); - PaletteBorderEdge borderEdge = new(borderEdgeRedirect, null); - ViewDrawBorderEdge drawBorderEdge = new(borderEdge, Orientation.Horizontal); - ViewLayoutDocker borderTopDock = new() + PaletteBorderEdgeRedirect borderEdgeRedirect = + new PaletteBorderEdgeRedirect(_calendar.StateNormal.Header.Border, null); + PaletteBorderEdge borderEdge = new PaletteBorderEdge(borderEdgeRedirect, null); + ViewDrawBorderEdge drawBorderEdge = new ViewDrawBorderEdge(borderEdge, Orientation.Horizontal); + ViewLayoutDocker borderTopDock = new ViewLayoutDocker { { new ViewLayoutSeparator(4, 1), ViewDockStyle.Left }, { drawBorderEdge, ViewDockStyle.Fill }, @@ -160,7 +161,7 @@ public ViewDrawMonth(IKryptonMonthCalendar calendar, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMonth:" + Id; + $"ViewDrawMonth:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthDayNames.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthDayNames.cs index 0c9c67499..81e2f930f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthDayNames.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthDayNames.cs @@ -46,7 +46,7 @@ public ViewDrawMonthDayNames(IKryptonMonthCalendar calendar, ViewLayoutMonths mo /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMonthDayNames:" + Id; + $"ViewDrawMonthDayNames:{Id}"; /// /// Release unmanaged and optionally managed resources. @@ -103,7 +103,7 @@ public override void Layout([DisallowNull] ViewLayoutContext context) PaletteState state = Enabled ? PaletteState.Normal : PaletteState.Disabled; // Layout the 7 day names - Rectangle layoutRect = new(ClientLocation, _months.SizeDays); + Rectangle layoutRect = new Rectangle(ClientLocation, _months.SizeDays); for (int i = 0, day=(int)_months.DisplayDayOfWeek; i < 7; i++, day++) { // Define text to be drawn @@ -136,7 +136,7 @@ public override void RenderBefore([DisallowNull] RenderContext context) PaletteState state = Enabled ? PaletteState.Normal : PaletteState.Disabled; // Draw the 7 day names - Rectangle drawRect = new(ClientLocation, _months.SizeDays); + Rectangle drawRect = new Rectangle(ClientLocation, _months.SizeDays); for(int i=0, day=(int)_months.DisplayDayOfWeek; i<7; i++, day++) { // Draw using memento cached from the layout call diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthDays.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthDays.cs index cf0aafe38..717f71ff9 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthDays.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthDays.cs @@ -23,7 +23,7 @@ public class ViewDrawMonthDays : ViewLeaf, private const int WEEKS = 6; private const int WEEKDAYS = 7; private const int DAYS = 42; - private static readonly TimeSpan TIMESPAN_1DAY = new(1, 0, 0, 0); + private static readonly TimeSpan TIMESPAN_1DAY = new TimeSpan(1, 0, 0, 0); #endregion #region Instance Fields @@ -59,7 +59,7 @@ public ViewDrawMonthDays(IKryptonMonthCalendar calendar, ViewLayoutMonths months /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMonthDays:" + Id; + $"ViewDrawMonthDays:{Id}"; /// /// Release unmanaged and optionally managed resources. @@ -236,8 +236,10 @@ public override void Layout([DisallowNull] ViewLayoutContext context) var layoutXCell = ClientLocation.X; var layoutXDay = ClientLocation.X + ((_months.SizeDays.Width - _months.SizeDay.Width) / 2); - Rectangle layoutRectCell = new(layoutXCell, ClientLocation.Y, _months.SizeDays.Width, _months.SizeDays.Height); - Rectangle layoutRectDay = new(layoutXDay, ClientLocation.Y, _months.SizeDay.Width, _months.SizeDays.Height); + Rectangle layoutRectCell = new Rectangle(layoutXCell, ClientLocation.Y, _months.SizeDays.Width, + _months.SizeDays.Height); + Rectangle layoutRectDay = new Rectangle(layoutXDay, ClientLocation.Y, _months.SizeDay.Width, + _months.SizeDays.Height); // Layout each week as a row DateTime todayDate = _calendar.TodayDate; @@ -369,8 +371,10 @@ public override void RenderBefore([DisallowNull] RenderContext context) var layoutXCell = ClientLocation.X; var layoutXDay = ClientLocation.X + ((_months.SizeDays.Width - _months.SizeDay.Width) / 2); - Rectangle drawRectCell = new(layoutXCell, ClientLocation.Y, _months.SizeDays.Width, _months.SizeDays.Height); - Rectangle drawRectDay = new(layoutXDay, ClientLocation.Y, _months.SizeDay.Width, _months.SizeDays.Height); + Rectangle drawRectCell = new Rectangle(layoutXCell, ClientLocation.Y, _months.SizeDays.Width, + _months.SizeDays.Height); + Rectangle drawRectDay = new Rectangle(layoutXDay, ClientLocation.Y, _months.SizeDay.Width, + _months.SizeDays.Height); // Draw each week as a row DateTime todayDate = _calendar.TodayDate; diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthUpDown.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthUpDown.cs index ee5008973..147a1c49c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthUpDown.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawMonthUpDown.cs @@ -49,12 +49,12 @@ public enum DrawMonthCalendarGlyph /// /// Occurs when the button is clicked. /// - public event EventHandler Click; + public event EventHandler? Click; /// /// Occurs when the mouse is used to left select the target. /// - public event MouseEventHandler MouseSelect; + public event MouseEventHandler? MouseSelect; #endregion #region Identity @@ -91,7 +91,7 @@ public ViewDrawMonthUpDown(IPaletteTriple paletteState, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawMonthUpDown:" + Id; + $"ViewDrawMonthUpDown:{Id}"; #endregion @@ -102,7 +102,7 @@ public override string ToString() => /// Layout context. public override Size GetPreferredSize(ViewLayoutContext context) => // We want to be as wide as drop down buttons on standard controls - new (SystemInformation.VerticalScrollBarWidth - 2, 0); + new Size(SystemInformation.VerticalScrollBarWidth - 2, 0); /// /// Perform a layout of the elements. diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawNull.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawNull.cs index ea1a6a4e7..703c72168 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawNull.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawNull.cs @@ -34,7 +34,7 @@ public class ViewDrawNull : ViewLayoutNull /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawNull:" + Id; + $"ViewDrawNull:{Id}"; #endregion @@ -45,7 +45,7 @@ public override string ToString() => /// Rendering context. public override void RenderBefore(RenderContext context) { - using SolidBrush fillBrush = new(_fillColor); + using SolidBrush fillBrush = new SolidBrush(_fillColor); context.Graphics.FillRectangle(fillBrush, ClientRectangle); } #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawPanel.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawPanel.cs index 386097dab..f480b4077 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawPanel.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawPanel.cs @@ -50,7 +50,7 @@ public ViewDrawPanel([DisallowNull] IPaletteBack paletteBack) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawPanel:" + Id; + $"ViewDrawPanel:{Id}"; /// /// Clean up any resources being used. @@ -171,7 +171,7 @@ public override void RenderBefore([DisallowNull] RenderContext context) if (_paletteBack.GetBackDraw(State) == InheritBool.True) { // Render the background - using GraphicsPath panelPath = new(); + using GraphicsPath panelPath = new GraphicsPath(); var rectF = ClientRectangleF; // Now workaround https://github.com/Krypton-Suite/Standard-Toolkit/issues/308 rectF.Offset(-0.25f, -0.25f); diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawRadioButton.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawRadioButton.cs index 00f5e0c50..83380c539 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawRadioButton.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawRadioButton.cs @@ -39,7 +39,7 @@ public ViewDrawRadioButton([DisallowNull] PaletteBase palette) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawRadioButton:" + Id; + $"ViewDrawRadioButton:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawScrollBar.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawScrollBar.cs index 45002679c..12061af82 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawScrollBar.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawScrollBar.cs @@ -32,7 +32,7 @@ public class ViewDrawScrollBar : ViewLeaf /// /// Occurs when the scroll position has changed. /// - public event EventHandler ScrollChanged; + public event EventHandler? ScrollChanged; #endregion #region Identity @@ -61,7 +61,7 @@ public ViewDrawScrollBar(bool vertical) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawScrollBar:" + Id; + $"ViewDrawScrollBar:{Id}"; /// /// Release unmanaged and optionally managed resources. diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawSeparator.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawSeparator.cs index ddeb7e242..47c8eb3d3 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawSeparator.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawSeparator.cs @@ -83,7 +83,7 @@ public ViewDrawSeparator([DisallowNull] IPaletteDouble paletteDisabled, [Disallo /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawSeparator:" + Id; + $"ViewDrawSeparator:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawSplitCanvas.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawSplitCanvas.cs index 313d5de29..6ccc6d45e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawSplitCanvas.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawSplitCanvas.cs @@ -82,7 +82,7 @@ public ViewDrawSplitCanvas(IPaletteBack paletteBack, /// /// User readable name of the instance. // Return the class name and instance identifier - public override string ToString() => "ViewDrawSplitCanvas:" + Id; + public override string ToString() => $"ViewDrawSplitCanvas:{Id}"; /// /// Clean up any resources being used. @@ -514,7 +514,7 @@ public override void RenderBefore([DisallowNull] RenderContext context) Orientation, State); // Create a new region the same as the existing clipping region - Region combineRegion = new(borderPath); + Region combineRegion = new Region(borderPath); // Reduce clipping region down by our border path combineRegion.Intersect(_clipRegion); @@ -571,7 +571,7 @@ private void RenderBackground(RenderContext context, Rectangle rect) switch (State) { case PaletteState.Tracking: - using (Clipping clipToSplitter = new(context.Graphics, NonSplitRectangle)) + using (Clipping clipToSplitter = new Clipping(context.Graphics, NonSplitRectangle)) { if (SplitWithFading) { @@ -583,7 +583,7 @@ private void RenderBackground(RenderContext context, Rectangle rect) } } - using (Clipping clipToSplitter = new(context.Graphics, _splitRectangle)) + using (Clipping clipToSplitter = new Clipping(context.Graphics, _splitRectangle)) { if (SplitWithFading) { @@ -596,7 +596,7 @@ private void RenderBackground(RenderContext context, Rectangle rect) } break; case PaletteState.Pressed: - using (Clipping clipToSplitter = new(context.Graphics, _splitRectangle)) + using (Clipping clipToSplitter = new Clipping(context.Graphics, _splitRectangle)) { if (SplitWithFading) { @@ -610,7 +610,7 @@ private void RenderBackground(RenderContext context, Rectangle rect) } } - using (Clipping clipToSplitter = new(context.Graphics, NonSplitRectangle)) + using (Clipping clipToSplitter = new Clipping(context.Graphics, NonSplitRectangle)) { if (SplitWithFading) { @@ -654,7 +654,8 @@ private void RenderBorder([DisallowNull] RenderContext context, Rectangle rect) case PaletteState.Pressed: DrawBorder(context, rect, PaletteBorder, PaletteState.Tracking); - using (Clipping clipToSplitter = new(context.Graphics, mouseInSplit ? _splitRectangle : NonSplitRectangle)) + using (Clipping clipToSplitter = new Clipping(context.Graphics, + mouseInSplit ? _splitRectangle : NonSplitRectangle)) { DrawBorder(context, rect, PaletteBorder, PaletteState.Pressed); } diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawToday.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawToday.cs index 0fd5a5d6b..87f3cc58f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawToday.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawToday.cs @@ -22,7 +22,7 @@ public class ViewDrawToday : ViewDrawButton, /// /// Occurs when the today button is clicked. /// - public event EventHandler Click; + public event EventHandler? Click; #endregion #region Instance Fields @@ -55,7 +55,7 @@ public ViewDrawToday(IKryptonMonthCalendar calendar, ButtonValues = this; // Define a controller so the button can be clicked - ButtonController controller = new(this, needPaintHandler); + ButtonController controller = new ButtonController(this, needPaintHandler); controller.Click += OnClick; MouseController = controller; SourceController = controller; @@ -68,7 +68,7 @@ public ViewDrawToday(IKryptonMonthCalendar calendar, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawToday:" + Id; + $"ViewDrawToday:{Id}"; #endregion @@ -91,7 +91,8 @@ public override string ToString() => /// Gets the content short text. /// /// String value. - public string GetShortText() => KryptonLanguageManager.GeneralToolkitStrings.Today + " " + _calendar.TodayDate.ToString(_calendar.TodayFormat); + public string GetShortText() => + $"{KryptonLanguageManager.GeneralToolkitStrings.Today} {_calendar.TodayDate.ToString(_calendar.TodayFormat)}"; /// /// Gets the content long text. diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackBar.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackBar.cs index 8df7a7103..fc5970046 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackBar.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackBar.cs @@ -18,21 +18,21 @@ namespace Krypton.Toolkit public class ViewDrawTrackBar : ViewDrawPanel { #region Static Fields - private static readonly Size _positionSizeSmallH = new(11, 15); - private static readonly Size _positionSizeSmallV = new(15, 11); - private static readonly Size _positionSizeMediumH = new(13, 21); - private static readonly Size _positionSizeMediumV = new(21, 13); - private static readonly Size _positionSizeLargeH = new(17, 27); - private static readonly Size _positionSizeLargeV = new(27, 17); - private static readonly Size _trackSizeSmall = new(2, 2); - private static readonly Size _trackSizeSmallV = new(6, 6); - private static readonly Size _trackSizeMedium = new(4, 4); - private static readonly Size _trackSizeMediumV = new(11, 11); - private static readonly Size _trackSizeLarge = new(5, 5); - private static readonly Size _trackSizeLargeV = new(16, 16); - private static readonly Size _tickSizeSmall = new(5, 5); - private static readonly Size _tickSizeMedium = new(6, 6); - private static readonly Size _tickSizeLarge = new(7, 7); + private static readonly Size _positionSizeSmallH = new Size(11, 15); + private static readonly Size _positionSizeSmallV = new Size(15, 11); + private static readonly Size _positionSizeMediumH = new Size(13, 21); + private static readonly Size _positionSizeMediumV = new Size(21, 13); + private static readonly Size _positionSizeLargeH = new Size(17, 27); + private static readonly Size _positionSizeLargeV = new Size(27, 17); + private static readonly Size _trackSizeSmall = new Size(2, 2); + private static readonly Size _trackSizeSmallV = new Size(6, 6); + private static readonly Size _trackSizeMedium = new Size(4, 4); + private static readonly Size _trackSizeMediumV = new Size(11, 11); + private static readonly Size _trackSizeLarge = new Size(5, 5); + private static readonly Size _trackSizeLargeV = new Size(16, 16); + private static readonly Size _tickSizeSmall = new Size(5, 5); + private static readonly Size _tickSizeMedium = new Size(6, 6); + private static readonly Size _tickSizeLarge = new Size(7, 7); #endregion #region Instance Fields @@ -55,12 +55,12 @@ public class ViewDrawTrackBar : ViewDrawPanel /// /// Occurs when the value of the Value property changes. /// - public event EventHandler ValueChanged; + public event EventHandler? ValueChanged; /// /// Occurs when the value has changed because of a user change. /// - public event EventHandler Scroll; + public event EventHandler? Scroll; #endregion #region Identity @@ -121,7 +121,7 @@ public ViewDrawTrackBar(PaletteTrackBarStatesOverride stateNormal, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawTrackBar:" + Id; + $"ViewDrawTrackBar:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackPosition.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackPosition.cs index 9ba953046..112b7236c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackPosition.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackPosition.cs @@ -34,7 +34,7 @@ public class ViewDrawTrackPosition : ViewLeaf /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawTrackPosition:" + Id; + $"ViewDrawTrackPosition:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTP.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTP.cs index bf564ad6b..2a9fdef20 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTP.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTP.cs @@ -39,13 +39,13 @@ public ViewDrawTP(ViewDrawTrackBar drawTrackBar) Add(ViewDrawTrackPosition); // Use controller for the entire track area - TrackBarController tbController = new(this); + TrackBarController tbController = new TrackBarController(this); drawTrackBar.MouseController = tbController; drawTrackBar.KeyController = tbController; drawTrackBar.SourceController = tbController; // Use controller for dragging the position indicator - TrackPositionController tpController = new(this); + TrackPositionController tpController = new TrackPositionController(this); ViewDrawTrackPosition.MouseController = tpController; } @@ -55,7 +55,7 @@ public ViewDrawTP(ViewDrawTrackBar drawTrackBar) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawTP:" + Id; + $"ViewDrawTP:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTicks.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTicks.cs index 62b34e374..c137c6edb 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTicks.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTicks.cs @@ -40,7 +40,7 @@ public ViewDrawTrackTicks(ViewDrawTrackBar drawTrackBar, bool topRight) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawTrackTicks:" + Id; + $"ViewDrawTrackTicks:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTrack.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTrack.cs index ecf5cc7d7..41c949432 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTrack.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawTrackTrack.cs @@ -34,7 +34,7 @@ public class ViewDrawTrackTrack : ViewLeaf /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawTrackTrack:" + Id; + $"ViewDrawTrackTrack:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawWeekNumbers.cs b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawWeekNumbers.cs index 8e4602d02..2bd1fc7d2 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawWeekNumbers.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Draw/ViewDrawWeekNumbers.cs @@ -21,9 +21,9 @@ public class ViewDrawWeekNumbers : ViewLeaf, #region Static Fields private const int WEEKS = 6; - private static readonly TimeSpan TIMESPAN_1DAY = new(1, 0, 0, 0); - private static readonly TimeSpan TIMESPAN_6DAYS = new(6, 0, 0, 0); - private static readonly TimeSpan TIMESPAN_1WEEK = new(7, 0, 0, 0); + private static readonly TimeSpan TIMESPAN_1DAY = new TimeSpan(1, 0, 0, 0); + private static readonly TimeSpan TIMESPAN_6DAYS = new TimeSpan(6, 0, 0, 0); + private static readonly TimeSpan TIMESPAN_1WEEK = new TimeSpan(7, 0, 0, 0); #endregion #region Instance Fields @@ -58,7 +58,7 @@ public ViewDrawWeekNumbers(IKryptonMonthCalendar calendar, ViewLayoutMonths mont /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawWeekNumbers:" + Id; + $"ViewDrawWeekNumbers:{Id}"; /// /// Release unmanaged and optionally managed resources. @@ -117,7 +117,7 @@ public DateTime Month } // Find the first day of the year - DateTime yearDay = new(value.Year, 1, 1); + DateTime yearDay = new DateTime(value.Year, 1, 1); _weekDay = _firstDay; // Move forewards until we hit the starting day of the year @@ -156,7 +156,8 @@ public override void Layout([DisallowNull] ViewLayoutContext context) _calendar.SetBoldedOverride(false); // Layout each week number - Rectangle layoutRectWeek = new(ClientLocation.X, ClientLocation.Y, _months.SizeDay.Width, _months.SizeDays.Height); + Rectangle layoutRectWeek = new Rectangle(ClientLocation.X, ClientLocation.Y, _months.SizeDay.Width, + _months.SizeDays.Height); DateTime weekDate = _weekDay; DateTime displayDate = _firstDay; for (var j = 0; j < WEEKS; j++) @@ -206,7 +207,8 @@ public override void RenderBefore([DisallowNull] RenderContext context) _calendar.SetBoldedOverride(false); // Layout each week number - Rectangle drawRectWeek = new(ClientLocation.X, ClientLocation.Y, _months.SizeDay.Width, _months.SizeDays.Height); + Rectangle drawRectWeek = new Rectangle(ClientLocation.X, ClientLocation.Y, _months.SizeDay.Width, + _months.SizeDays.Height); DateTime weekDate = _weekDay; DateTime displayDate = _firstDay; for (var j = 0; j < WEEKS; j++) diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutCenter.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutCenter.cs index ce7e723c9..458c096d4 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutCenter.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutCenter.cs @@ -91,7 +91,7 @@ public ViewLayoutCenter(int size) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutCenter:" + Id; + $"ViewLayoutCenter:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutColorStack.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutColorStack.cs index 043801ddf..e019b1699 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutColorStack.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutColorStack.cs @@ -29,7 +29,7 @@ public ViewLayoutColorStack() /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutColorStack:" + Id; + $"ViewLayoutColorStack:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutControl.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutControl.cs index 9f6fbaa64..7607e0d02 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutControl.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutControl.cs @@ -104,7 +104,7 @@ protected override void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutControl:" + Id + " ClientLocation:" + ClientLocation; + $"ViewLayoutControl:{Id} ClientLocation:{ClientLocation}"; #endregion @@ -224,7 +224,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) UpdateParent(context.Control); // Ensure context has the correct control - using CorrectContextControl ccc = new(context, ChildControl); + using CorrectContextControl ccc = new CorrectContextControl(context, ChildControl); // Ask the view for its preferred size if (ChildView != null) { @@ -253,7 +253,7 @@ public override void Layout([DisallowNull] ViewLayoutContext context) if (ChildControl != null) { // Ensure context has the correct control - using CorrectContextControl ccc = new(context, ChildControl); + using CorrectContextControl ccc = new CorrectContextControl(context, ChildControl); // We take on all the available display area ClientRectangle = context.DisplayRectangle; diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutCrumbs.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutCrumbs.cs index 7f0768706..5ef3bdedf 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutCrumbs.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutCrumbs.cs @@ -78,7 +78,7 @@ protected override void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewLayoutCrumbs:" + Id; + $@"ViewLayoutCrumbs:{Id}"; #endregion @@ -136,10 +136,9 @@ public override void Layout([DisallowNull] ViewLayoutContext context) SyncBreadCrumbs(); // Positioning rectangle is our client rectangle reduced by control padding - Rectangle layoutRect = new(ClientLocation.X + _kryptonBreadCrumb.Padding.Left, - ClientLocation.Y + _kryptonBreadCrumb.Padding.Top, - ClientWidth - _kryptonBreadCrumb.Padding.Horizontal, - ClientHeight - _kryptonBreadCrumb.Padding.Vertical); + Rectangle layoutRect = new Rectangle(ClientLocation.X + _kryptonBreadCrumb.Padding.Left, + ClientLocation.Y + _kryptonBreadCrumb.Padding.Top, ClientWidth - _kryptonBreadCrumb.Padding.Horizontal, + ClientHeight - _kryptonBreadCrumb.Padding.Vertical); // Position from left to right all items except the overflow button var offset = layoutRect.X; @@ -329,7 +328,7 @@ private void CreateOverflowButton() }; // Create controller for operating the button - ButtonController crumbButtonController = new(_overflowButton, _needPaintDelegate) + ButtonController crumbButtonController = new ButtonController(_overflowButton, _needPaintDelegate) { Tag = this, BecomesFixed = true @@ -365,7 +364,7 @@ private void SyncBreadCrumbs() }; // Create controller for operating the button - ButtonController crumbButtonController = new(crumbButton, _needPaintDelegate) + ButtonController crumbButtonController = new ButtonController(crumbButton, _needPaintDelegate) { Tag = item, BecomesFixed = true @@ -406,7 +405,7 @@ private void OnButtonClick(object sender, MouseEventArgs e) if (viewButton.DropDown && viewButton.SplitRectangle.Contains(e.Location)) { // Create a context menu with a items collection - KryptonContextMenu kcm = new() + KryptonContextMenu kcm = new KryptonContextMenu { // Use same palette settings for context menu as the main control @@ -418,7 +417,7 @@ private void OnButtonClick(object sender, MouseEventArgs e) } // Add an items collection as the root item of the context menu - KryptonContextMenuItems items = new(); + KryptonContextMenuItems items = new KryptonContextMenuItems(); kcm.Items.Add(items); // Store lookup between each menu item and the crumb it represents. Prevents @@ -429,7 +428,7 @@ private void OnButtonClick(object sender, MouseEventArgs e) // Create a new menu item to represent each child crumb foreach (KryptonBreadCrumbItem childCrumb in breadCrumb.Items) { - KryptonContextMenuItem childMenu = new(); + KryptonContextMenuItem childMenu = new KryptonContextMenuItem(); // Store 1-to-1 association _menuItemToCrumb.Add(childMenu, childCrumb); @@ -445,7 +444,8 @@ private void OnButtonClick(object sender, MouseEventArgs e) } // Allow the user a chance to alter the menu contents or cancel it entirely - BreadCrumbMenuArgs bcma = new(breadCrumb, kcm, KryptonContextMenuPositionH.Left, KryptonContextMenuPositionV.Below); + BreadCrumbMenuArgs bcma = new BreadCrumbMenuArgs(breadCrumb, kcm, KryptonContextMenuPositionH.Left, + KryptonContextMenuPositionV.Below); _kryptonBreadCrumb.OnCrumbDropDown(bcma); // Is there still the need to show a menu that is not empty? @@ -519,7 +519,7 @@ private void OnOverflowButtonClick(object sender, MouseEventArgs e) ButtonController controller = viewButton.MouseController as ButtonController; // Create a context menu with a items collection - KryptonContextMenu kcm = new() + KryptonContextMenu kcm = new KryptonContextMenu { // Use same palette settings for context menu as the main control @@ -531,7 +531,7 @@ private void OnOverflowButtonClick(object sender, MouseEventArgs e) } // Add an items collection as the root item of the context menu - KryptonContextMenuItems items = new(); + KryptonContextMenuItems items = new KryptonContextMenuItems(); kcm.Items.Add(items); // Store lookup between each menu item and the crumb it represents. Prevents @@ -546,7 +546,7 @@ private void OnOverflowButtonClick(object sender, MouseEventArgs e) if (!this[i].Visible) { KryptonBreadCrumbItem childCrumb = _buttonToCrumb[(ViewDrawButton)this[i]]; - KryptonContextMenuItem childMenu = new(); + KryptonContextMenuItem childMenu = new KryptonContextMenuItem(); // Store 1-to-1 association _menuItemToCrumb.Add(childMenu, childCrumb); @@ -578,7 +578,7 @@ private void OnOverflowButtonClick(object sender, MouseEventArgs e) firstRoot = false; } - KryptonContextMenuItem childMenu = new(); + KryptonContextMenuItem childMenu = new KryptonContextMenuItem(); // Store 1-to-1 association _menuItemToCrumb.Add(childMenu, childCrumb); @@ -594,7 +594,8 @@ private void OnOverflowButtonClick(object sender, MouseEventArgs e) } // Allow the user a chance to alter the menu contents or cancel it entirely - ContextPositionMenuArgs cpma = new(kcm, KryptonContextMenuPositionH.Left, KryptonContextMenuPositionV.Below); + ContextPositionMenuArgs cpma = new ContextPositionMenuArgs(kcm, KryptonContextMenuPositionH.Left, + KryptonContextMenuPositionV.Below); _kryptonBreadCrumb.OnOverflowDropDown(cpma); // Is there still the need to show a menu that is not empty? diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutDocker.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutDocker.cs index 6b7170f62..6bdb1d692 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutDocker.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutDocker.cs @@ -48,7 +48,7 @@ public ViewLayoutDocker() /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutDocker:" + Id + " " + _childDocking.Count.ToString(); + $"ViewLayoutDocker:{Id} {_childDocking.Count}"; #endregion @@ -185,7 +185,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) Debug.Assert(context != null); // Create new lookup that only contains entries for current child items - ViewDockStyleLookup newChildDocking = new(); + ViewDockStyleLookup newChildDocking = new ViewDockStyleLookup(); // Remember the original display rectangle provided Rectangle originalRect = context.DisplayRectangle; diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutFill.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutFill.cs index d682a38a5..a0709b60e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutFill.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutFill.cs @@ -42,7 +42,7 @@ public ViewLayoutFill() /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutFill:" + Id; + $"ViewLayoutFill:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutFit.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutFit.cs index 4781b1686..f9b1b3a84 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutFit.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutFit.cs @@ -34,7 +34,7 @@ public class ViewLayoutFit : ViewComposite /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutFit:" + Id; + $"ViewLayoutFit:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuItemSelect.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuItemSelect.cs index d6676c45f..eea8b5d36 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuItemSelect.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuItemSelect.cs @@ -86,7 +86,7 @@ public ViewLayoutMenuItemSelect([DisallowNull] KryptonContextMenuImageSelect ite /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutMenuItemSelect:" + Id; + $"ViewLayoutMenuItemSelect:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuItemsPile.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuItemsPile.cs index 975a9f83e..28ad55123 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuItemsPile.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuItemsPile.cs @@ -45,7 +45,7 @@ public ViewLayoutMenuItemsPile(IContextMenuProvider provider, // Create and place an image column inside a docker so it appears on the left side _imageColumn = new ViewDrawMenuImageColumn(items, provider.ProviderStateCommon.ItemImageColumn); - ViewLayoutDocker imageDocker = new() + ViewLayoutDocker imageDocker = new ViewLayoutDocker { { _imageColumn, ViewDockStyle.Left } }; @@ -60,7 +60,7 @@ public ViewLayoutMenuItemsPile(IContextMenuProvider provider, }; // Use a docker with the item stack as the fill - ViewLayoutDocker stackDocker = new() + ViewLayoutDocker stackDocker = new ViewLayoutDocker { { ItemStack, ViewDockStyle.Fill } }; @@ -85,7 +85,7 @@ public ViewLayoutMenuItemsPile(IContextMenuProvider provider, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutMenuItemsPile:" + Id; + $"ViewLayoutMenuItemsPile:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuSepGap.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuSepGap.cs index 1dc3513b9..6ec29dc1c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuSepGap.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMenuSepGap.cs @@ -42,7 +42,7 @@ public ViewLayoutMenuSepGap(PaletteContextMenuRedirect stateCommon, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutMenuSepGap:" + Id; + $"ViewLayoutMenuSepGap:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMetricSpacer.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMetricSpacer.cs index bb2cad27e..ff7971be7 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMetricSpacer.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMetricSpacer.cs @@ -44,7 +44,7 @@ public ViewLayoutMetricSpacer([DisallowNull] IPaletteMetric paletteMetric, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutMetricSpacer:" + Id; + $"ViewLayoutMetricSpacer:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMonths.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMonths.cs index fb0f5e6bf..6365c2f13 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMonths.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutMonths.cs @@ -81,7 +81,8 @@ public ViewLayoutMonths(IContextMenuProvider provider, AllowButtonSpecToolTips = false; // Use a controller that can work against all the displayed months - MonthCalendarController controller = new(monthCalendar, viewManager, this, _needPaintDelegate); + MonthCalendarController controller = + new MonthCalendarController(monthCalendar, viewManager, this, _needPaintDelegate); MouseController = controller; SourceController = controller; KeyController = controller; @@ -130,7 +131,7 @@ public ViewLayoutMonths(IContextMenuProvider provider, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutMonths:" + Id; + $"ViewLayoutMonths:{Id}"; #endregion @@ -630,7 +631,7 @@ public override void Layout([DisallowNull] ViewLayoutContext context) #endregion #region Private - private DateTime JustDay(DateTime dt) => new (dt.Year, dt.Month, dt.Day); + private DateTime JustDay(DateTime dt) => new DateTime(dt.Year, dt.Month, dt.Day); private void OnTodayClick(object sender, EventArgs e) { @@ -648,7 +649,7 @@ private void OnTodayClick(object sender, EventArgs e) if (CloseOnTodayClick && Provider is { ProviderCanCloseMenu: true }) { // Ask the original context menu definition, if we can close - CancelEventArgs cea = new(); + CancelEventArgs cea = new CancelEventArgs(); Provider.OnClosing(cea); if (!cea.Cancel) @@ -753,7 +754,7 @@ private void SyncMonths() // Bring the selection into the display range DateTime endMonth = _displayMonth.AddMonths(months - 1); DateTime oldSelEndDate = _oldSelectionEnd.Date; - DateTime oldSelEndMonth = new(oldSelEndDate.Year, oldSelEndDate.Month, 1); + DateTime oldSelEndMonth = new DateTime(oldSelEndDate.Year, oldSelEndDate.Month, 1); if (oldSelEndMonth >= endMonth) { _displayMonth = oldSelEndMonth.AddMonths(-(months - 1)); @@ -812,7 +813,7 @@ private void OnShowToolTip(object sender, ToolTipEventArgs e) if (AllowButtonSpecToolTips) { // Create a helper object to provide tooltip values - ButtonSpecToContent buttonSpecMapping = new(_redirector, buttonSpec); + ButtonSpecToContent buttonSpecMapping = new ButtonSpecToContent(_redirector, buttonSpec); // Is there actually anything to show for the tooltip if (buttonSpecMapping.HasContent) @@ -888,7 +889,7 @@ private Size MaxGridCellDayOfWeek(ViewLayoutContext context) Size shortNormalSize = context.Renderer.RenderStandardContent.GetContentPreferredSize(context, Calendar.StateNormal.DayOfWeek.Content, this, VisualOrientation.Top, PaletteState.Normal, false, false); Size shortDisabledSize = context.Renderer.RenderStandardContent.GetContentPreferredSize(context, Calendar.StateDisabled.DayOfWeek.Content, this, VisualOrientation.Top, PaletteState.Disabled, false, false); - _shortText = "A" + _dayOfWeekMeasure; + _shortText = $"A{_dayOfWeekMeasure}"; // Find sizes required for the different Size fullNormalSize = context.Renderer.RenderStandardContent.GetContentPreferredSize(context, Calendar.StateNormal.DayOfWeek.Content, this, VisualOrientation.Top, PaletteState.Normal, false, false); diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutNull.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutNull.cs index 416b5e3ed..be2c48d27 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutNull.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutNull.cs @@ -31,7 +31,7 @@ public ViewLayoutNull() /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - @"ViewLayoutNull:" + Id; + $@"ViewLayoutNull:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutPadding.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutPadding.cs index 5a1a6208b..512c0cd9f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutPadding.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutPadding.cs @@ -56,7 +56,7 @@ public ViewLayoutPadding(Padding displayPadding, ViewBase child) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutPadding:" + Id; + $"ViewLayoutPadding:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutPile.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutPile.cs index 9e35ad305..8147e1d70 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutPile.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutPile.cs @@ -31,7 +31,7 @@ public ViewLayoutPile() /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutPile:" + Id; + $"ViewLayoutPile:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutScrollViewport.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutScrollViewport.cs index a359de2f2..5df5c947f 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutScrollViewport.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutScrollViewport.cs @@ -27,7 +27,7 @@ public class ViewLayoutScrollViewport : ViewLayoutDocker /// /// Occurs when animation has moved another step. /// - public event EventHandler AnimateStep; + public event EventHandler? AnimateStep; #endregion #region Identity @@ -139,7 +139,7 @@ protected override void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutScrollViewport:" + Id; + $"ViewLayoutScrollViewport:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutSeparator.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutSeparator.cs index 06e72e5d5..29e89131e 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutSeparator.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutSeparator.cs @@ -50,7 +50,7 @@ public ViewLayoutSeparator(int width, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutSeparator:" + Id; + $"ViewLayoutSeparator:{Id}"; #endregion @@ -60,7 +60,7 @@ public override string ToString() => /// public Size SeparatorSize { - get => new(_width, _height); + get => new Size(_width, _height); set { @@ -77,7 +77,7 @@ public Size SeparatorSize /// Layout context. public override Size GetPreferredSize(ViewLayoutContext context) => // Always return the same minimum size - new (_width, _height); + new Size(_width, _height); /// /// Perform a layout of the elements. diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutStack.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutStack.cs index 4c988df11..ae4c8787c 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutStack.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutStack.cs @@ -36,7 +36,7 @@ public ViewLayoutStack(bool horizontal) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutStack:" + Id; + $"ViewLayoutStack:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutStretch.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutStretch.cs index 916bc8c33..afc2b8b31 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutStretch.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutStretch.cs @@ -34,7 +34,7 @@ public class ViewLayoutStretch : ViewComposite /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutStretch:" + Id; + $"ViewLayoutStretch:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutViewport.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutViewport.cs index 05e114c6c..6c9c17006 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutViewport.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutViewport.cs @@ -42,7 +42,7 @@ public class ViewLayoutViewport : ViewComposite /// /// Occurs when animation has moved another step. /// - public event EventHandler AnimateStep; + public event EventHandler? AnimateStep; #endregion #region Identity @@ -108,7 +108,7 @@ protected override void Dispose(bool disposing) /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutViewport:" + Id; + $"ViewLayoutViewport:{Id}"; #endregion @@ -241,8 +241,7 @@ public bool CanScrollH /// /// Gets the total extent of the scrolling view. /// - public Size ScrollExtent => new(Math.Abs(_extent.Width), - Math.Abs(_extent.Height)); + public Size ScrollExtent => new Size(Math.Abs(_extent.Width), Math.Abs(_extent.Height)); #endregion @@ -250,8 +249,7 @@ public bool CanScrollH /// /// Gets a scrolling offset within the viewport. /// - public Point ScrollOffset => new(Math.Abs(_offset.X), - Math.Abs(_offset.Y)); + public Point ScrollOffset => new Point(Math.Abs(_offset.X), Math.Abs(_offset.Y)); #endregion @@ -544,7 +542,7 @@ public override void Layout([DisallowNull] ViewLayoutContext context) childOffsetY = CalculateAlignedOffset(AlignmentRTL, positionRectangle.Y, positionRectangle.Height, _offset.Y, _extent.Height, _limit.Y); } - Point childOffset = new(childOffsetX, childOffsetY); + Point childOffset = new Point(childOffsetX, childOffsetY); // Ask each child to layout in turn foreach (ViewBase child in this) @@ -607,7 +605,7 @@ public override void Render(RenderContext context) } // New clipping region is at most our own client size - using Region combineRegion = new(clipRectangle); + using Region combineRegion = new Region(clipRectangle); // Remember the current clipping region Region clipRegion = context.Graphics.Clip.Clone(); @@ -957,7 +955,7 @@ private void OnAnimationTick(object sender, EventArgs e) var distanceX = (_animationOffset.X - _offset.X) / 2; var distanceY = (_animationOffset.Y - _offset.Y) / 2; - // Enfore a minimum distance to move towards destination in order + // Enforce a minimum distance to move towards destination in order // to prevent small moves at the end of the animation duration if (_animationOffset.X < _offset.X) { @@ -989,7 +987,7 @@ private void OnAnimationTick(object sender, EventArgs e) _animationTimer.Stop(); } - // Enfore limits against the offset + // Enforce limits against the offset _offset.X = Math.Min(Math.Max(_offset.X, _limit.X), 0); _offset.Y = Math.Min(Math.Max(_offset.Y, _limit.Y), 0); diff --git a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutWeekCorner.cs b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutWeekCorner.cs index 53a7cfd7c..d85fe9024 100644 --- a/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutWeekCorner.cs +++ b/Source/Krypton Components/Krypton.Toolkit/View Layout/ViewLayoutWeekCorner.cs @@ -45,7 +45,7 @@ public ViewLayoutWeekCorner(IKryptonMonthCalendar calendar, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewLayoutWeekCorner:" + Id; + $"ViewLayoutWeekCorner:{Id}"; #endregion @@ -59,7 +59,7 @@ public override Size GetPreferredSize([DisallowNull] ViewLayoutContext context) Debug.Assert(context != null); // Start with size needed to draw a week number - Size retSize = new(_months.SizeDay.Width, _months.SizeDays.Height); + Size retSize = new Size(_months.SizeDay.Width, _months.SizeDays.Height); // Add the width of the vertical border retSize.Width += _palette.GetBorderWidth(State); diff --git a/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspace.cs b/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspace.cs index 2c3517dd5..374aebbec 100644 --- a/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspace.cs +++ b/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspace.cs @@ -118,14 +118,14 @@ internal class ControlList : List { } /// [Category(@"Workspace")] [Description(@"Occurs after the number of cells has changed.")] - public event EventHandler CellCountChanged; + public event EventHandler? CellCountChanged; /// /// Occurs after the number of visible cells has changed. /// [Category(@"Workspace")] [Description(@"Occurs after the number of visible cells has changed.")] - public event EventHandler CellVisibleCountChanged; + public event EventHandler? CellVisibleCountChanged; /// /// Occurs when a new KryptonWorkspaceCell instance is about to be added to the workspace. @@ -160,7 +160,7 @@ internal class ControlList : List { } /// [Category(@"Workspace")] [Description(@"Occurs when the maximized cell value has changed.")] - public event EventHandler MaximizedCellChanged; + public event EventHandler? MaximizedCellChanged; /// /// Occurs when the workspace information is saving. @@ -1339,7 +1339,7 @@ public void ApplySingleCell(bool createCellIfNoPages) if (createCellIfNoPages || (pages.Count > 0)) { // Create a new cell with entire list of pages as the only workspace item - KryptonWorkspaceCell cell = new(); + KryptonWorkspaceCell cell = new KryptonWorkspaceCell(); cell.Pages.AddRange(pages.ToArray()); Root.Children.Add(cell); @@ -1459,7 +1459,7 @@ public void ApplyGridCells(bool createCellIfEmpty, while (cells.Count > 0) { // Add a maximum of sequenceItems to the sequence - KryptonWorkspaceSequence sequence = new(sequenceDirection); + KryptonWorkspaceSequence sequence = new KryptonWorkspaceSequence(sequenceDirection); for (var j = 0; j < sequenceItems; j++) { // If no cells then do we need to create a cell? @@ -1597,13 +1597,13 @@ public void ApplyGridPages(bool createCellIfNoPages, while (pages.Count > 0) { // Add a maximum of sequenceItems to the sequence - KryptonWorkspaceSequence sequence = new(sequenceDirection); + KryptonWorkspaceSequence sequence = new KryptonWorkspaceSequence(sequenceDirection); for (var j = 0; j < sequenceItems; j++) { // If no pages then do we need to create a cell? if (createCellIfNoPages || (pages.Count > 0)) { - KryptonWorkspaceCell cell = new(); + KryptonWorkspaceCell cell = new KryptonWorkspaceCell(); // Add the first cell in the list to the cell if (pages.Count > 0) @@ -1686,7 +1686,7 @@ public void ClearAllPages() /// List of drag targets. public virtual DragTargetList GenerateDragTargets(PageDragEndData? dragEndData, KryptonPageFlags allowFlags) { - DragTargetList targets = new(); + DragTargetList targets = new DragTargetList(); var visibleCells = 0; var numPages = 0; @@ -1763,7 +1763,7 @@ public virtual DragTargetList GenerateDragTargets(PageDragEndData? dragEndData, public byte[] SaveLayoutToArray(Encoding encoding) { // Save into the file stream - MemoryStream ms = new(); + MemoryStream ms = new MemoryStream(); SaveLayoutToStream(ms, encoding); ms.Close(); @@ -1862,7 +1862,7 @@ public void SaveLayoutToXml(XmlWriter xmlWriter) /// Array of source bytes. public void LoadLayoutFromArray(byte[] buffer) { - MemoryStream ms = new(buffer); + MemoryStream ms = new MemoryStream(buffer); LoadLayoutFromStream(ms); ms.Close(); } @@ -1945,7 +1945,7 @@ public void LoadLayoutFromXml(XmlReader xmlReader, KryptonPageCollection availab throw new ArgumentException(@"Can only load Version 1 and upwards of KryptonWorkspace persisted data."); } - ScreenObscurer obscurer = new(); + ScreenObscurer obscurer = new ScreenObscurer(); try { @@ -2201,7 +2201,7 @@ public virtual void WritePageElement(XmlWriter xmlWriter, KryptonPage page) else { // Use event to try and get a newly created page for use - RecreateLoadingPageEventArgs args = new(uniqueName); + RecreateLoadingPageEventArgs args = new RecreateLoadingPageEventArgs(uniqueName); OnRecreateLoadingPage(args); if (!args.Cancel) { @@ -2388,7 +2388,7 @@ protected override ControlCollection CreateControlsInstance() => /// /// Gets the default size of the control. /// - protected override Size DefaultSize => new(250, 250); + protected override Size DefaultSize => new Size(250, 250); /// /// Activates a child control. Optionally specifies the direction in the tab order to select the control from. @@ -2555,11 +2555,11 @@ protected override void OnLayout(LayoutEventArgs levent) } // Lists for the layout processing to populate with instances still needed - SeparatorList separators = new(); - ControlList controls = new(); + SeparatorList separators = new SeparatorList(); + ControlList controls = new ControlList(); // Layout child controls according to the need for a maximized cell or not - using (ViewLayoutContext layoutContext = new(this, Renderer)) + using (ViewLayoutContext layoutContext = new ViewLayoutContext(this, Renderer)) { if (MaximizedCell != null) { @@ -2949,7 +2949,7 @@ internal void SeparatorMoved(ViewDrawWorkspaceSeparator separator, } else { - directionStarSize.Value = newStar.ToString() + @"*"; + directionStarSize.Value = $@"{newStar}*"; } } } @@ -3297,7 +3297,8 @@ private void LayoutSequenceNonMaximized(KryptonWorkspaceSequence seq, }; // Need a controller that operates the movement - SeparatorController separatorController = new(viewSeparator, viewSeparator, true, true, _separatorNeedPaint); + SeparatorController separatorController = new SeparatorController(viewSeparator, viewSeparator, + true, true, _separatorNeedPaint); viewSeparator.Source = viewSeparator; viewSeparator.MouseController = separatorController; viewSeparator.KeyController = separatorController; @@ -3627,7 +3628,7 @@ private static void SeparatorToMovement(ViewDrawWorkspaceSeparator separator, private CellList CopyToCellList() { // Make a list of all the pages in workspace without removing any - CellList cells = new(); + CellList cells = new CellList(); KryptonWorkspaceCell? cell = FirstCell(); while (cell != null) { @@ -3652,7 +3653,7 @@ private CellList ClearToCellList() private PageList CopyToPageList() { // Make list of all pages inside all cells - PageList pages = new(); + PageList pages = new PageList(); KryptonWorkspaceCell? cell = FirstCell(); while (cell != null) { @@ -3666,7 +3667,7 @@ private PageList CopyToPageList() private KryptonPageCollection CopyToPageCollection() { // Make list of all pages inside all cells - KryptonPageCollection pages = new(); + KryptonPageCollection pages = new KryptonPageCollection(); KryptonWorkspaceCell? cell = FirstCell(); while (cell != null) { @@ -3684,7 +3685,7 @@ private KryptonPageCollection CopyToPageCollection() private PageList ClearToPageList() { // Remove all pages from all cells add then to a list - PageList pages = new(); + PageList pages = new PageList(); KryptonWorkspaceCell? cell = FirstCell(); while (cell != null) { @@ -3749,12 +3750,12 @@ private static Rectangle[] SubdivideRectangle(Rectangle area, var length = Math.Min(area.Width / divisor, Math.Min(area.Height / divisor, maxLength)); // Find the left, right, top, bottom, center rectangles - return new Rectangle[]{ new(area.X, area.Y, length, area.Height), - new(area.Right - length, area.Y, length, area.Height), - new(area.X, area.Y, area.Width, length), - new(area.X, area.Bottom - length, area.Width, length), - new(area.X + length, area.Y + length, - area.Width - (length * 2), area.Height - (length * 2))}; + return new Rectangle[]{ + new Rectangle(area.X, area.Y, length, area.Height), + new Rectangle(area.Right - length, area.Y, length, area.Height), + new Rectangle(area.X, area.Y, area.Width, length), + new Rectangle(area.X, area.Bottom - length, area.Width, length), + new Rectangle(area.X + length, area.Y + length, area.Width - (length * 2), area.Height - (length * 2))}; } private void CompactAtLeastOneVisibleCell() @@ -4034,7 +4035,7 @@ private void PageSplitDirection(KryptonWorkspaceCell cell, var index = parentSequence.Children.IndexOf(cell); // Create a new cell and move the context page into it - KryptonWorkspaceCell newCell = new(); + KryptonWorkspaceCell newCell = new KryptonWorkspaceCell(); cell.Pages.Remove(page); newCell.Pages.Add(page); @@ -4050,7 +4051,7 @@ private void PageSplitDirection(KryptonWorkspaceCell cell, else { // Split is in opposite direction so create a new sequence to replace the existing cell - KryptonWorkspaceSequence newSequence = new(orientation) + KryptonWorkspaceSequence newSequence = new KryptonWorkspaceSequence(orientation) { // Put the same size into the sequence as was in the original cell @@ -4128,7 +4129,7 @@ private void ResumeActivePageChangedEvent() private static UniqueNameToPage BuildUniqueNameDictionary(KryptonPageCollection pages) { - UniqueNameToPage dict = new(); + UniqueNameToPage dict = new UniqueNameToPage(); // Add each page that has a non-null unique name but only add the same unique name once foreach (KryptonPage page in pages) diff --git a/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceCell.cs b/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceCell.cs index 0ea6d499e..b64e97419 100644 --- a/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceCell.cs +++ b/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceCell.cs @@ -45,7 +45,7 @@ public class KryptonWorkspaceCell : KryptonNavigator, /// /// Occurs when the user clicks the maximize/restore button. /// - public event EventHandler MaximizeRestoreClicked; + public event EventHandler? MaximizeRestoreClicked; #endregion #region Identity @@ -477,7 +477,7 @@ public void LoadFromXml(KryptonWorkspace workspace, var finished = xmlReader.IsEmptyElement; // Generate event so custom data can be loaded and/or the page to be added can be modified - PageLoadingEventArgs plea = new(workspace, page, xmlReader); + PageLoadingEventArgs plea = new PageLoadingEventArgs(workspace, page, xmlReader); workspace.OnPageLoading(plea); page = plea.Page; diff --git a/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceCollection.cs b/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceCollection.cs index 9f97e2326..a02989e8d 100644 --- a/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceCollection.cs +++ b/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceCollection.cs @@ -35,7 +35,7 @@ public class KryptonWorkspaceCollection : TypedRestrictCollection /// /// Occurs when the user clicks the maximize/restore button. /// - public event EventHandler MaximizeRestoreClicked; + public event EventHandler? MaximizeRestoreClicked; #endregion #region Identity @@ -49,7 +49,7 @@ public class KryptonWorkspaceCollection : TypedRestrictCollection /// Obtains the String representation of this instance. /// /// User readable name of the instance. - public override string ToString() => Count.ToString() + " Children"; + public override string ToString() => $"{Count} Children"; #endregion diff --git a/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceSequence.cs b/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceSequence.cs index 7864df24a..68752c784 100644 --- a/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceSequence.cs +++ b/Source/Krypton Components/Krypton.Workspace/Controls Workspace/KryptonWorkspaceSequence.cs @@ -43,7 +43,7 @@ public class KryptonWorkspaceSequence : Component, /// Occurs when the user clicks the maximize/restore button. /// [Browsable(false)] - public event EventHandler MaximizeRestoreClicked; + public event EventHandler? MaximizeRestoreClicked; #endregion #region Identity @@ -106,7 +106,7 @@ public override string ToString() { if (Children != null) { - return Orientation + $@" ({Children.Count} Children)"; + return $@"{Orientation} ({Children.Count} Children)"; } else { @@ -362,7 +362,7 @@ public Size WorkspaceMaxSize { get { - Size maxSize = new(int.MaxValue, int.MaxValue); + Size maxSize = new Size(int.MaxValue, int.MaxValue); // Search all children for the smallest defined maximum if (Children != null) @@ -437,14 +437,11 @@ public bool WorkspaceAllowResizing // If any child says no resizing then we cannot be resized if (Children != null) { - if (Children != null) + foreach (Component component in Children) { - foreach (Component component in Children) + if ((component is IWorkspaceItem { WorkspaceVisible: true, WorkspaceAllowResizing: false })) { - if ((component is IWorkspaceItem { WorkspaceVisible: true, WorkspaceAllowResizing: false })) - { - return false; - } + return false; } } } @@ -556,20 +553,14 @@ public void LoadFromXml(KryptonWorkspace workspace, switch (xmlReader.Name) { case "WS": - KryptonWorkspaceSequence sequence = new(); + KryptonWorkspaceSequence sequence = new KryptonWorkspaceSequence(); sequence.LoadFromXml(workspace, xmlReader, existingPages); - if (Children != null) - { - Children.Add(sequence); - } + Children?.Add(sequence); break; case "WC": - KryptonWorkspaceCell cell = new(); + KryptonWorkspaceCell cell = new KryptonWorkspaceCell(); cell.LoadFromXml(workspace, xmlReader, existingPages); - if (Children != null) - { - Children.Add(cell); - } + Children?.Add(cell); break; default: throw new ArgumentException("Unknown element was encountered."); diff --git a/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspace.cs b/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspace.cs index 171a89d67..f12fad8e6 100644 --- a/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspace.cs +++ b/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspace.cs @@ -81,7 +81,7 @@ protected override void Dispose(bool disposing) { // Use event to allow decision on if the page should be dropped // (or even swap the page for a different page to be dropped) - PageDropEventArgs e = new(page); + PageDropEventArgs e = new PageDropEventArgs(page); workspace.OnPageDrop(e); if (e is { Cancel: false, Page: { } }) diff --git a/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspaceCellEdge.cs b/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspaceCellEdge.cs index 16bff5cdf..58080b625 100644 --- a/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspaceCellEdge.cs +++ b/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspaceCellEdge.cs @@ -82,7 +82,7 @@ public override bool IsMatch(Point screenPt, PageDragEndData? dragEndData) if (dragEndData.Navigator == Cell) { // Create list of all the visible pages in the cell - KryptonPageCollection visiblePages = new(); + KryptonPageCollection visiblePages = new KryptonPageCollection(); foreach (KryptonPage page in Cell.Pages) { if (page.LastVisibleSet) @@ -130,7 +130,7 @@ public override bool PerformDrop(Point screenPt, PageDragEndData? data) if (Cell.WorkspaceParent is KryptonWorkspaceSequence parent) { // Transfer the dragged pages into a new cell - KryptonWorkspaceCell cell = new(); + KryptonWorkspaceCell cell = new KryptonWorkspaceCell(); KryptonPage? page = ProcessDragEndData(Workspace, cell, data); // If no pages are transferred then we do nothing and no longer need cell instance @@ -151,7 +151,7 @@ public override bool PerformDrop(Point screenPt, PageDragEndData? data) : Orientation.Horizontal; // Create a new sequence and transfer the target cell into it - KryptonWorkspaceSequence sequence = new(sequenceOrientation); + KryptonWorkspaceSequence sequence = new KryptonWorkspaceSequence(sequenceOrientation); var index = parent.Children.IndexOf(Cell); parent.Children.RemoveAt(index); sequence.Children.Add(Cell); diff --git a/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspaceEdge.cs b/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspaceEdge.cs index 168a90645..955de6a94 100644 --- a/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspaceEdge.cs +++ b/Source/Krypton Components/Krypton.Workspace/Dragging/DragTargetWorkspaceEdge.cs @@ -73,7 +73,7 @@ public DragTargetWorkspaceEdge(Rectangle screenRect, public override bool PerformDrop(Point screenPt, PageDragEndData? data) { // Transfer the dragged pages into a new cell - KryptonWorkspaceCell cell = new(); + KryptonWorkspaceCell cell = new KryptonWorkspaceCell(); KryptonPage? page = ProcessDragEndData(Workspace, cell, data); // If no pages are transferred then we do nothing and no longer need cell instance @@ -89,7 +89,7 @@ public override bool PerformDrop(Point screenPt, PageDragEndData? data) (!dropHorizontal && (Workspace.Root.Orientation == Orientation.Horizontal))) { // Create a new sequence and place all existing root items into it - KryptonWorkspaceSequence sequence = new(Workspace.Root.Orientation); + KryptonWorkspaceSequence sequence = new KryptonWorkspaceSequence(Workspace.Root.Orientation); for (var i = Workspace.Root.Children.Count - 1; i >= 0; i--) { Component child = Workspace.Root.Children[i]; diff --git a/Source/Krypton Components/Krypton.Workspace/General/Definitions.cs b/Source/Krypton Components/Krypton.Workspace/General/Definitions.cs index dea387d4e..063bc099e 100644 --- a/Source/Krypton Components/Krypton.Workspace/General/Definitions.cs +++ b/Source/Krypton Components/Krypton.Workspace/General/Definitions.cs @@ -65,7 +65,7 @@ public interface IWorkspaceItem /// /// Occurs when the user clicks the maximize/restore button. /// - event EventHandler MaximizeRestoreClicked; + event EventHandler? MaximizeRestoreClicked; /// /// Reference to owning workspace item. diff --git a/Source/Krypton Components/Krypton.Workspace/General/StarNumber.cs b/Source/Krypton Components/Krypton.Workspace/General/StarNumber.cs index 54a45cbdf..37d51ecb7 100644 --- a/Source/Krypton Components/Krypton.Workspace/General/StarNumber.cs +++ b/Source/Krypton Components/Krypton.Workspace/General/StarNumber.cs @@ -105,9 +105,9 @@ internal string PersistString { get { - StringBuilder builder = new(); + StringBuilder builder = new StringBuilder(); builder.Append(UsingStar ? "T," : "F,"); - builder.Append(FixedSize.ToString() + ","); + builder.Append($"{FixedSize},"); builder.Append(CommonHelper.DoubleToString(StarSize)); return builder.ToString(); } diff --git a/Source/Krypton Components/Krypton.Workspace/General/StarSize.cs b/Source/Krypton Components/Krypton.Workspace/General/StarSize.cs index 73db0908f..93e208d8b 100644 --- a/Source/Krypton Components/Krypton.Workspace/General/StarSize.cs +++ b/Source/Krypton Components/Krypton.Workspace/General/StarSize.cs @@ -71,8 +71,8 @@ public string Value } // Parse both halfs, exceptions are thrown if a problem occurs - StarNumber width = new(parts[0]); - StarNumber height = new(parts[1]); + StarNumber width = new StarNumber(parts[0]); + StarNumber height = new StarNumber(parts[1]); // No errors, so use the values StarWidth.Value = width.Value; @@ -95,7 +95,7 @@ public string Value #region Internal internal string PersistString { - get => StarWidth.PersistString + ":" + StarHeight.PersistString; + get => $"{StarWidth.PersistString}:{StarHeight.PersistString}"; set { diff --git a/Source/Krypton Components/Krypton.Workspace/View Draw/ViewDrawWorkspaceSeparator.cs b/Source/Krypton Components/Krypton.Workspace/View Draw/ViewDrawWorkspaceSeparator.cs index 12653dd35..83eb2912b 100644 --- a/Source/Krypton Components/Krypton.Workspace/View Draw/ViewDrawWorkspaceSeparator.cs +++ b/Source/Krypton Components/Krypton.Workspace/View Draw/ViewDrawWorkspaceSeparator.cs @@ -47,7 +47,7 @@ public ViewDrawWorkspaceSeparator(KryptonWorkspace workspace, /// User readable name of the instance. public override string ToString() => // Return the class name and instance identifier - "ViewDrawWorkspaceSeparator:" + Id; + $"ViewDrawWorkspaceSeparator:{Id}"; #endregion diff --git a/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceActionList.cs b/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceActionList.cs index 742c0e971..57c1ef3d0 100644 --- a/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceActionList.cs +++ b/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceActionList.cs @@ -129,7 +129,7 @@ public PaletteMode PaletteMode /// A DesignerActionItem array that contains the items in this list. public override DesignerActionItemCollection GetSortedActionItems() { - DesignerActionItemCollection actions = new(); + DesignerActionItemCollection actions = new DesignerActionItemCollection(); // This can be null when deleting a control instance at design time if (_workspace != null) diff --git a/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceCollectionEditor.cs b/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceCollectionEditor.cs index f1839eb2d..a79aa1838 100644 --- a/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceCollectionEditor.cs +++ b/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceCollectionEditor.cs @@ -667,21 +667,21 @@ public MenuTreeNode(Component item) if (PageItem != null) { PageItem.TextChanged += OnPageTextChanged; - Text = "Page (" + PageItem.Text.ToString() + ")"; + Text = $"Page ({PageItem.Text})"; } CellItem = item as KryptonWorkspaceCell; if (CellItem != null) { CellItem.PropertyChanged += OnCellPropertyChanged; - Text = "Cell (" + CellItem.StarSize.ToString() + ")"; + Text = $"Cell ({CellItem.StarSize})"; } SequenceItem = item as KryptonWorkspaceSequence; if (SequenceItem != null) { SequenceItem.PropertyChanged += OnSequencePropertyChanged; - Text = SequenceItem.Orientation + " (" + SequenceItem.StarSize.ToString() + ")"; + Text = $"{SequenceItem.Orientation} ({SequenceItem.StarSize})"; } } #endregion @@ -717,17 +717,17 @@ public MenuTreeNode(Component item) #region Implementation private void OnPageTextChanged(object sender, EventArgs e) { - Text = "Page (" + PageItem.Text.ToString() + ")"; + Text = $"Page ({PageItem.Text})"; } private void OnCellPropertyChanged(object sender, PropertyChangedEventArgs e) { - Text = "Cell (" + CellItem.StarSize.ToString() + ")"; + Text = $"Cell ({CellItem.StarSize})"; } private void OnSequencePropertyChanged(object sender, PropertyChangedEventArgs e) { - Text = SequenceItem.Orientation + " (" + SequenceItem.StarSize.ToString() + ")"; + Text = $"{SequenceItem.Orientation} ({SequenceItem.StarSize})"; } #endregion } @@ -1737,7 +1737,7 @@ private void UpdatePropertyGrid() private DictItemBase CreateItemsDictionary(object[] items) { - DictItemBase dictItems = new(); + DictItemBase dictItems = new DictItemBase(); foreach (Component item in items) { @@ -1780,7 +1780,7 @@ private void AddItemsToDictionary(DictItemBase dictItems, Component baseItem) private void AddMenuTreeNode(Component item, MenuTreeNode parent) { // Create a node to match the item - MenuTreeNode node = new(item); + MenuTreeNode node = new MenuTreeNode(item); // Add to either root or parent node if (parent != null) diff --git a/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceDesigner.cs b/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceDesigner.cs index bf3159095..c5244c154 100644 --- a/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceDesigner.cs +++ b/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceDesigner.cs @@ -53,7 +53,7 @@ public override ICollection AssociatedComponents { get { - ArrayList compound = new(); + ArrayList compound = new ArrayList(); if (_workspace != null) { @@ -72,7 +72,7 @@ public override DesignerActionListCollection ActionLists get { // Create a collection of action lists - DesignerActionListCollection actionLists = new() + DesignerActionListCollection actionLists = new DesignerActionListCollection { // Add the navigator specific list diff --git a/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceSequenceDesigner.cs b/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceSequenceDesigner.cs index a18df7440..95c4e1988 100644 --- a/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceSequenceDesigner.cs +++ b/Source/Krypton Components/Krypton.Workspace/Workspace/KryptonWorkspaceSequenceDesigner.cs @@ -58,7 +58,7 @@ public override ICollection AssociatedComponents get { // Create a new compound array - ArrayList compound = new(); + ArrayList compound = new ArrayList(); // Add the list of collection items compound.AddRange(_sequence.Children); diff --git a/dictionary-en-gb/index.aff b/dictionary-en-gb/index.aff new file mode 100644 index 000000000..9e7cb1e2f --- /dev/null +++ b/dictionary-en-gb/index.aff @@ -0,0 +1,205 @@ +SET UTF-8 +TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ' +ICONV 1 +ICONV ’ ' +NOSUGGEST ! + +# ordinal numbers +COMPOUNDMIN 1 +# only in compounds: 1th, 2th, 3th +ONLYINCOMPOUND c +# compound rules: +# 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.) +# 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.) +COMPOUNDRULE 2 +COMPOUNDRULE n*1t +COMPOUNDRULE n*mp +WORDCHARS 0123456789 + +PFX A Y 1 +PFX A 0 re . + +PFX I Y 1 +PFX I 0 in . + +PFX U Y 1 +PFX U 0 un . + +PFX C Y 1 +PFX C 0 de . + +PFX E Y 1 +PFX E 0 dis . + +PFX F Y 1 +PFX F 0 con . + +PFX K Y 1 +PFX K 0 pro . + +SFX V N 2 +SFX V e ive e +SFX V 0 ive [^e] + +SFX N Y 3 +SFX N e ion e +SFX N y ication y +SFX N 0 en [^ey] + +SFX X Y 3 +SFX X e ions e +SFX X y ications y +SFX X 0 ens [^ey] + +SFX H N 2 +SFX H y ieth y +SFX H 0 th [^y] + +SFX Y Y 1 +SFX Y 0 ly . + +SFX G Y 2 +SFX G e ing e +SFX G 0 ing [^e] + +SFX J Y 2 +SFX J e ings e +SFX J 0 ings [^e] + +SFX D Y 4 +SFX D 0 d e +SFX D y ied [^aeiou]y +SFX D 0 ed [^ey] +SFX D 0 ed [aeiou]y + +SFX T N 4 +SFX T 0 st e +SFX T y iest [^aeiou]y +SFX T 0 est [aeiou]y +SFX T 0 est [^ey] + +SFX R Y 4 +SFX R 0 r e +SFX R y ier [^aeiou]y +SFX R 0 er [aeiou]y +SFX R 0 er [^ey] + +SFX Z Y 4 +SFX Z 0 rs e +SFX Z y iers [^aeiou]y +SFX Z 0 ers [aeiou]y +SFX Z 0 ers [^ey] + +SFX S Y 4 +SFX S y ies [^aeiou]y +SFX S 0 s [aeiou]y +SFX S 0 es [sxzh] +SFX S 0 s [^sxzhy] + +SFX P Y 3 +SFX P y iness [^aeiou]y +SFX P 0 ness [aeiou]y +SFX P 0 ness [^y] + +SFX M Y 1 +SFX M 0 's . + +SFX B Y 3 +SFX B 0 able [^aeiou] +SFX B 0 able ee +SFX B e able [^aeiou]e + +SFX L Y 1 +SFX L 0 ment . + +REP 90 +REP a ei +REP ei a +REP a ey +REP ey a +REP ai ie +REP ie ai +REP alot a_lot +REP are air +REP are ear +REP are eir +REP air are +REP air ere +REP ere air +REP ere ear +REP ere eir +REP ear are +REP ear air +REP ear ere +REP eir are +REP eir ere +REP ch te +REP te ch +REP ch ti +REP ti ch +REP ch tu +REP tu ch +REP ch s +REP s ch +REP ch k +REP k ch +REP f ph +REP ph f +REP gh f +REP f gh +REP i igh +REP igh i +REP i uy +REP uy i +REP i ee +REP ee i +REP j di +REP di j +REP j gg +REP gg j +REP j ge +REP ge j +REP s ti +REP ti s +REP s ci +REP ci s +REP k cc +REP cc k +REP k qu +REP qu k +REP kw qu +REP o eau +REP eau o +REP o ew +REP ew o +REP oo ew +REP ew oo +REP ew ui +REP ui ew +REP oo ui +REP ui oo +REP ew u +REP u ew +REP oo u +REP u oo +REP u oe +REP oe u +REP u ieu +REP ieu u +REP ue ew +REP ew ue +REP uff ough +REP oo ieu +REP ieu oo +REP ier ear +REP ear ier +REP ear air +REP air ear +REP w qu +REP qu w +REP z ss +REP ss z +REP shun tion +REP shun sion +REP shun cion +REP size cise diff --git a/dictionary-en-gb/index.d.ts b/dictionary-en-gb/index.d.ts new file mode 100644 index 000000000..135ba0437 --- /dev/null +++ b/dictionary-en-gb/index.d.ts @@ -0,0 +1,28 @@ +declare namespace load { + /** + * Object representing a hunspell dictionary, with `aff` and `dic` fields. + */ + interface Dictionary { + /** + * Buffer in UTF-8 for the affix file (defines the language, keyboard, flags, and more). + */ + aff: Buffer + + /** + * Buffer in UTF-8 for the dictionary file (contains words and flags applying to those words). + */ + dic: Buffer + } + + /** + * Callback called when dictionary is loaded. + */ + type Callback = ( + error: NodeJS.ErrnoException | undefined, + result: Dictionary + ) => void +} + +declare const load: (callback: load.Callback) => void + +export = load diff --git a/dictionary-en-gb/index.dic b/dictionary-en-gb/index.dic new file mode 100644 index 000000000..85edde560 --- /dev/null +++ b/dictionary-en-gb/index.dic @@ -0,0 +1,49602 @@ +49601 +0/nm +0th/pt +1/n1 +1st/p +1th/tc +2/nm +2nd/p +2th/tc +3/nm +3rd/p +3th/tc +4/nm +4th/pt +5/nm +5th/pt +6/nm +6th/pt +7/nm +7th/pt +8/nm +8th/pt +9/nm +9th/pt +A/SM +AA/M +AAA +AB/M +ABA +ABC/SM +ABM/SM +ABS +AC/M +ACLU/M +ACT +ACTH/M +AD/M +ADC +ADD +ADM +ADP/M +AF +AFAIK +AFB +AFC/M +AFDC +AFN +AFT +AI/SM +AIDS/M +AK +AL +AM/M +AMA +AMD/M +ANSI/S +ANZUS/M +AOL/M +AP/M +APB +APC +API +APO +APR +AR +ARC +ASAP +ASCII/SM +ASL/M +ASPCA +ATM/M +ATP/M +ATV +AV +AVI +AWACS/M +AWOL/M +AWS/M +AZ/M +AZT/M +Aachen/M +Aaliyah/M +Aaron/M +Abbas/M +Abbasid/M +Abbott/M +Abby/M +Abdul/M +Abe/M +Abel/M +Abelard/M +Abelson/M +Aberdeen/M +Abernathy/M +Abidjan/M +Abigail/M +Abilene/M +Abner/M +Aborigine/MS +Abraham/M +Abram/MS +Abrams/M +Absalom/M +Abuja/M +Abyssinia/M +Abyssinian/M +Ac/M +Acadia/M +Acapulco/M +Accenture/M +Accra/M +Acevedo/M +Achaean/M +Achebe/M +Achernar/M +Acheson/M +Achilles/M +Aconcagua/M +Acosta/M +Acropolis +Acrux/M +Actaeon/M +Acton/M +Acts/M +Acuff/M +Ada/SM +Adam/SM +Adams/M +Adan/M +Adana/M +Adar/M +Addams/M +Adderley/M +Addie/M +Addison/M +Adela/M +Adelaide/M +Adele/M +Adeline/M +Aden/M +Adenauer/M +Adhara/M +Adidas/M +Adirondack/SM +Adirondacks/M +Adkins/M +Adler/M +Adm +Admiralty +Adolf/M +Adolfo/M +Adolph/M +Adonis/MS +Adrenalin/MS +Adrian/M +Adriana/M +Adriatic/M +Adrienne/M +Advent/MS +Adventist/MS +Advil/M +Aegean/M +Aelfric/M +Aeneas/M +Aeneid/M +Aeolus/M +Aeroflot/M +Aeschylus/M +Aesculapius/M +Aesop/M +Afghan/SM +Afghani/M +Afghanistan/M +Afr +Africa/M +African/SM +Afrikaans/M +Afrikaner/SM +Afro/SM +Afrocentric +Afrocentrism/M +Ag/M +Agamemnon/M +Agana +Agassi/M +Agassiz/M +Agatha/M +Aggie/M +Aglaia/M +Agnes/M +Agnew/M +Agni/M +Agra/M +Agricola/M +Agrippa/M +Agrippina/M +Aguascalientes +Aguilar/M +Aguinaldo/M +Aguirre/M +Agustin/M +Ahab/M +Ahmad/M +Ahmadabad/M +Ahmadinejad/M +Ahmed/M +Ahriman/M +Aida/M +Aiken/M +Aileen/M +Aimee/M +Ainu/M +Airedale/MS +Aires/M +Aisha/M +Ajax/M +Akbar/M +Akhmatova/M +Akihito/M +Akita/M +Akiva/M +Akkad/M +Akron/M +Al/M +Ala/S +Alabama/M +Alabaman/MS +Alabamian/SM +Aladdin/M +Alamo/M +Alamogordo/M +Alan/M +Alana/M +Alar/M +Alaric/M +Alaska/M +Alaskan/MS +Alba/M +Albania/M +Albanian/MS +Albany/M +Albee/M +Alberio/M +Albert/M +Alberta/M +Albertan +Alberto/M +Albigensian/M +Albion/M +Albireo/M +Albuquerque/M +Alcatraz/M +Alcestis/M +Alcibiades/M +Alcindor/M +Alcmena/M +Alcoa/M +Alcott/M +Alcuin/M +Alcyone/M +Aldan/M +Aldebaran/M +Alden/M +Alderamin/M +Aldo/M +Aldrin/M +Alec/M +Aleichem/M +Alejandra/M +Alejandro/M +Alembert/M +Aleppo/M +Aleut/MS +Aleutian/SM +Alex/M +Alexander/MS +Alexandra/M +Alexandria/M +Alexandrian +Alexei/M +Alexis/M +Alfonso/M +Alfonzo/M +Alford/M +Alfred/M +Alfreda/M +Alfredo/M +Algenib/M +Alger/M +Algeria/M +Algerian/SM +Algieba/M +Algiers/M +Algol/M +Algonquian/SM +Algonquin/MS +Alhambra/M +Alhena/M +Ali/M +Alice/M +Alicia/M +Alighieri/M +Aline/M +Alioth/M +Alisa/M +Alisha/M +Alison/M +Alissa/M +Alistair/M +Alkaid/M +Allah/M +Allahabad/M +Allan/M +Alleghenies/M +Allegheny/SM +Allegra/M +Allen/M +Allende/M +Allentown/M +Allhallows/M +Allie/MS +Allison/M +Allstate/M +Allyson/M +Alma/M +Almach/M +Almaty/M +Almighty/M +Almohad/M +Almoravid/M +Alnilam/M +Alnitak/M +Alonzo/M +Alpert/M +Alphard/M +Alphecca/M +Alpheratz/M +Alphonse/M +Alphonso/M +Alpine/M +Alpo/M +Alps/M +Alsace/M +Alsatian/SM +Alsop/M +Alston/M +Alta/M +Altaba/M +Altai/M +Altaic/M +Altair/M +Altamira/M +Althea/M +Altiplano/M +Altman/M +Altoids/M +Alton/M +Aludra/M +Alva/M +Alvarado/M +Alvarez/M +Alvaro/M +Alvin/M +Alyce/M +Alyson/M +Alyssa/M +Alzheimer/M +Am/MNR +Amadeus/M +Amado/M +Amalia/M +Amanda/M +Amarillo/M +Amaru/M +Amaterasu/M +Amati/M +Amazon/SM +Amazonian +Amber/M +Amelia/M +Amen/M +Amenhotep/M +Amerasian/M +America/SM +American/MS +Americana/M +Americanisation/MS +Americanise/GDS +Americanism/MS +Amerind/SM +Amerindian/MS +Ameslan/M +Amgen/M +Amharic/M +Amherst/M +Amie/M +Amiga/M +Amish/M +Amman/M +Amoco/M +Amos/M +Amparo/M +Ampere/M +Amritsar/M +Amsterdam/M +Amtrak/M +Amundsen/M +Amur/M +Amway/M +Amy/M +Ana/M +Anabaptist/M +Anabel/M +Anacin/M +Anacreon/M +Anaheim/M +Analects/M +Ananias/M +Anasazi/M +Anastasia/M +Anatole/M +Anatolia/M +Anatolian/M +Anaxagoras/M +Anchorage/M +Andalusia/M +Andalusian/M +Andaman/M +Andean/M +Andersen/M +Anderson/M +Andes/M +Andorra/M +Andorran/SM +Andre/MS +Andrea/M +Andrei/M +Andres/M +Andretti/M +Andrew/SM +Andrews/M +Andrianampoinimerina/M +Android/M +Andromache/M +Andromeda/M +Andropov/M +Andy/M +Angara/M +Angel/M +Angela/M +Angeles/M +Angelia/M +Angelica/M +Angelico/M +Angelina/M +Angeline/M +Angelique/M +Angelita/M +Angelo/M +Angelou/M +Angevin/M +Angie/M +Angkor/M +Angle/MS +Anglia/M +Anglican/SM +Anglicanism/MS +Anglicism/MS +Anglicization +Anglicize +Anglo/M +Anglophile/M +Anglophobe +Angola/M +Angolan/MS +Angora/SM +Angstrom/M +Anguilla/M +Angus/M +Anhui/M +Aniakchak/M +Anibal/M +Anita/M +Ankara/M +Ann/M +Anna/M +Annabel/M +Annabelle/M +Annam/M +Annapolis/M +Annapurna/M +Anne/M +Annette/M +Annie/M +Annmarie/M +Annunciation/SM +Anouilh/M +Anselm/M +Anselmo/M +Anshan/M +Antaeus/M +Antananarivo/M +Antarctic/M +Antarctica/M +Antares/M +Anthony/M +Anthropocene +Antichrist/SM +Antietam/M +Antifa/M +Antigone/M +Antigua/M +Antillean +Antilles/M +Antioch/M +Antipas/M +Antipodes +Antofagasta/M +Antoine/M +Antoinette/M +Anton/M +Antone/M +Antonia/M +Antoninus/M +Antonio/M +Antonius/M +Antony/M +Antwan/M +Antwerp/M +Anubis/M +Anzac/M +Apache/SM +Apalachicola/M +Apatosaurus +Apennines/M +Aphrodite/M +Apia/M +Apocalypse/M +Apocrypha/M +Apollinaire/M +Apollo/SM +Apollonian/M +Apostle/M +Appalachia/M +Appalachian/SM +Appalachians/M +Appaloosa/SM +Apple/M +Appleseed/M +Appleton/M +Appomattox/M +Apr/M +April/MS +Apuleius/M +Aquafresh/M +Aquarian +Aquarius/MS +Aquila/M +Aquinas/M +Aquino/M +Aquitaine/M +Ar/M +Ara/M +Arab/SM +Arabia/M +Arabian/MS +Arabic/M +Arabist/MS +Araby/M +Araceli/M +Arafat/M +Aragon +Araguaya/M +Aral/M +Aramaic/M +Aramco/M +Arapaho/MS +Arapahoes +Ararat/M +Araucanian/M +Arawak/M +Arawakan/M +Arbitron/M +Arcadia/M +Arcadian/M +Archean/M +Archibald/M +Archie/M +Archimedes/M +Arctic/M +Arcturus/M +Ardabil +Arden/M +Arduino/M +Arequipa/M +Ares/M +Argentina/M +Argentine/M +Argentinean +Argentinian/MS +Argo/SM +Argonaut/MS +Argonne/M +Argos/M +Argus/M +Ariadne/M +Arianism/M +Ariel/M +Aries/MS +Ariosto/M +Aristarchus/M +Aristides/M +Aristophanes/M +Aristotelian/M +Aristotle/M +Arius/M +Ariz +Arizona/M +Arizonan/SM +Arizonian/MS +Arjuna/M +Ark/M +Arkansan/MS +Arkansas/M +Arkhangelsk/M +Arkwright/M +Arlene/M +Arline/M +Arlington/M +Armageddon/SM +Armagnac/M +Armand/M +Armando/M +Armani/M +Armenia/M +Armenian/SM +Arminius/M +Armonk/M +Armour/M +Armstrong/M +Arneb/M +Arnhem/M +Arno/M +Arnold/M +Arnulfo/M +Aron/M +Arrhenius/M +Arron/M +Art/M +Artaxerxes/M +Artemis/M +Arthur/M +Arthurian/M +Artie/M +Arturo/M +Aruba/M +Aryan/MS +As/M +Asama/M +Ascella/M +Ascension/M +Asgard/M +Ashanti/M +Ashcroft/M +Ashe/M +Ashgabat +Ashikaga/M +Ashkenazim/M +Ashkhabad/M +Ashlee/M +Ashley/M +Ashmolean/M +Ashurbanipal/M +Asia/M +Asiago +Asian/MS +Asiatic/SM +Asimov/M +Asmara/M +Asoka/M +Aspell/M +Aspen/M +Asperger/M +Aspidiske/M +Asquith/M +Assad/M +Assam/M +Assamese/M +Assembly +Assisi/M +Assyria/M +Assyrian/SM +Astaire/M +Astana/M +Astarte/M +Aston/M +Astor/M +Astoria/M +Astrakhan/M +AstroTurf/M +Asturias/M +Asuncion/M +Aswan/M +At/SM +Atacama/M +Atahualpa/M +Atalanta/M +Atari/M +Ataturk/M +Athabasca/M +Athabaskan/SM +Athanasius +Athena/M +Athene/M +Athenian/SM +Athens/M +Atkins/M +Atkinson/M +Atlanta/M +Atlantes +Atlantic/M +Atlantis/M +Atlas/MS +Atman/M +Atonement +Atreus/M +Atria/M +Atropos/M +Attic/M +Attica/M +Attila/M +Attlee/M +Attn +Attucks/M +Atwood/M +Au/M +Aubrey/M +Auckland/M +Auden/M +Audi/M +Audion/M +Audra/M +Audrey/M +Audubon/M +Aug/M +Augean/M +Augsburg/M +August/MS +Augusta/M +Augustan/M +Augustine/M +Augustinian/MS +Augustus/M +Aurangzeb/M +Aurelia/M +Aurelio/M +Aurelius/M +Aureomycin/M +Auriga/M +Aurora/M +Auschwitz/M +Aussie/MS +Austen/M +Austerlitz/M +Austin/MS +Australasia/M +Australasian +Australia/M +Australian/SM +Australoid/M +Australopithecus/M +Austria/M +Austrian/SM +Austronesian/M +Autumn/M +Av/M +Ava/M +Avalon/M +Ave/M +Aventine/M +Avernus/M +Averroes/M +Avery/M +Avesta/M +Avicenna/M +Avignon/M +Avila/M +Avior/M +Avis/M +Avogadro/M +Avon/M +Axis +Axum/M +Ayala/M +Ayers/M +Aymara/M +Ayrshire/M +Ayurveda/M +Ayyubid/M +Azana/M +Azania/M +Azazel/M +Azerbaijan/M +Azerbaijani/MS +Azores/M +Azov/M +Aztec/SM +Aztecan/M +Aztlan/M +B/MNT +BA/M +BASIC/SM +BB/M +BBB/M +BBC/M +BBQ +BBS +BBSes +BC/M +BFF +BIA +BIOS +BITNET +BLT/SM +BM/M +BMW/M +BO +BP/M +BPOE +BR +BS/M +BSA +BSD/SM +BTU +BTW +BYOB +Ba/M +Baal/SM +Baath/M +Baathist/M +Babbage/M +Babbitt/M +Babel/MS +Babylon/MS +Babylonia/M +Babylonian/SM +Bacall/M +Bacardi/M +Bacchanalia/M +Bacchic +Bacchus/M +Bach/M +Backus/M +Bacon/M +Bactria/M +Baden/M +Badlands/M +Baedeker/MS +Baeria/M +Baeyer/M +Baez/M +Baffin/M +Baggies/M +Baghdad/M +Baguio/M +Baha'i/M +Baha'ullah/M +Bahama/SM +Bahamanian +Bahamas/M +Bahamian/MS +Bahia/M +Bahrain/M +Baidu/M +Baikal/M +Bailey/M +Baird/M +Bakelite/M +Baker/M +Bakersfield/M +Baku/M +Bakunin/M +Balanchine/M +Balaton/M +Balboa/M +Balder/M +Baldwin/SM +Balearic/M +Balfour/M +Bali/M +Balinese/M +Balkan/MS +Balkans/M +Balkhash/M +Ball/M +Ballard/M +Balthazar/M +Baltic/M +Baltimore/M +Baluchistan/M +Balzac/M +Bamako/M +Bambi/M +Banach/M +Bancroft/M +Bandung/M +Bangalore/M +Bangkok/M +Bangladesh/M +Bangladeshi/SM +Bangor/M +Bangui/M +Banjarmasin/M +Banjul/M +Banks/M +Banneker/M +Bannister/M +Banting/M +Bantu/MS +Baotou/M +Baptist/SM +Baptiste/M +Barabbas/M +Barack/M +Barbadian/SM +Barbados/M +Barbara/M +Barbarella/M +Barbarossa/M +Barbary/M +Barber/M +Barbie/M +Barbour/M +Barbra/M +Barbuda/M +Barcelona/M +Barclay/SM +Barclays/M +Bardeen/M +Barents/M +Barker/M +Barkley/M +Barlow/M +Barnabas/M +Barnaby/M +Barnard/M +Barnaul/M +Barnes/M +Barnett/M +Barney/M +Barnum/M +Baroda/M +Barquisimeto/M +Barr/M +Barranquilla/M +Barrera/M +Barrett/M +Barrie/M +Barron/M +Barry/M +Barrymore/M +Bart/M +Barth/MS +Bartholdi/M +Bartholomew/M +Bartlett/M +Bartok/M +Barton/M +Baruch/M +Baryshnikov/M +Basel/M +Basho/M +Basie/M +Basil/M +Basque/MS +Basra/M +Bass/M +Basseterre/M +Bastille/M +Basutoland/M +Bataan/M +Bates/M +Bathsheba/M +Batista/M +Batman/M +Battle/M +Batu/M +Baudelaire/M +Baudouin/M +Baudrillard/M +Bauer/M +Bauhaus/M +Baum/M +Bavaria/M +Bavarian/M +Baxter/M +Bayamon +Bayer/M +Bayes/M +Bayesian/M +Bayeux/M +Baylor/M +Bayonne/M +Bayreuth/M +Baywatch/M +Be/MH +Beach/M +Beadle/M +Bean/M +Beard/M +Beardmore/M +Beardsley/M +Bearnaise/M +Beasley/M +Beatlemania/M +Beatles/M +Beatrice/M +Beatrix/M +Beatriz/M +Beatty/M +Beau/M +Beaufort/M +Beaujolais/M +Beaumarchais/M +Beaumont/M +Beauregard/M +Beauvoir/M +Bechtel/M +Beck/MR +Becker/M +Becket/M +Beckett/M +Beckman +Becky/M +Becquerel/M +Bede/M +Bedouin/SM +Beebe/M +Beecher/M +Beefaroni/M +Beelzebub/M +Beerbohm/M +Beethoven/M +Beeton/M +Begin/M +Behan/M +Behring/M +Beiderbecke/M +Beijing/M +Beirut/M +Bekesy/M +Bela/M +Belarus/M +Belarusian +Belau/M +Belem/M +Belfast/M +Belg +Belgian/SM +Belgium/M +Belgrade/M +Belinda/M +Belize/M +Bell/M +Bella/M +Bellamy/M +Bellatrix/M +Belleek/M +Bellini/M +Bellow/M +Belmont/M +Belmopan/M +Belorussian/MS +Belshazzar/M +Beltane/M +Belushi/M +Ben/M +Benacerraf/M +Benchley/M +Bender/M +Bendictus +Bendix/M +Benedict/M +Benedictine/MS +Benelux/M +Benet/M +Benetton/M +Bengal/SM +Bengali/M +Benghazi/M +Benin/M +Beninese/M +Benita/M +Benito/M +Benjamin/M +Bennett/M +Bennie/M +Benny/M +Benson/M +Bentham/M +Bentley/M +Benton/M +Benz/M +Benzedrine/M +Beowulf/M +Berber/SM +Berenice/M +Beretta/M +Berg/MNR +Bergen/M +Berger/M +Bergerac/M +Bergman/M +Bergson/M +Bering/M +Berkeley/M +Berkshire/SM +Berkshires/M +Berle/M +Berlin/SZMR +Berliner/M +Berlioz/M +Berlitz/M +Bermuda/SM +Bermudan/SM +Bermudian/SM +Bern/M +Bernadette/M +Bernadine/M +Bernanke/M +Bernard/M +Bernardo/M +Bernays/M +Bernbach/M +Bernese +Bernhardt/M +Bernice/M +Bernie/M +Bernini/M +Bernoulli/M +Bernstein/M +Berra/M +Berry/M +Bert/M +Berta/M +Bertelsmann/M +Bertha/M +Bertie/M +Bertillon/M +Bertram/M +Bertrand/M +Beryl/M +Berzelius/M +Bess/M +Bessel/M +Bessemer/M +Bessie/M +Best/M +Betelgeuse/M +Beth/M +Bethany/M +Bethe/M +Bethesda/M +Bethlehem/M +Bethune/M +Betsy/M +Bette/M +Bettie/M +Betty/M +Bettye/M +Beulah/M +Beveridge +Beverley/M +Beverly/M +Bharat/M +Bhopal/M +Bhutan/M +Bhutanese/M +Bhutto/M +Bi/M +Bialystok/M +Bianca/M +Bib +Bible/MS +Bic/M +Biddle/M +Biden/M +Bierce/M +BigQuery/M +Bigfoot/M +Biggles/M +Biko/M +Bilbao/M +Bilbo/M +Bill/MJ +Billie/M +Billings/M +Billy/M +Bimini/M +Biogen/M +Bioko/M +Bird/M +Birdseye/M +Birkenstock/M +Birmingham/M +Biro/M +Biscay/M +Biscayne/M +Bishkek/M +Bishop/M +Bismarck/M +Bismark/M +Bisquick/M +Bissau/M +BitTorrent/M +Bizet/M +Bjerknes/M +Bjork/M +Bk/M +BlackBerry/M +Blackbeard/M +Blackburn/M +Blackfeet/M +Blackfoot/M +Blackpool/M +Blackshirt/M +Blackstone/M +Blackwell/M +Blaine/M +Blair/M +Blake/M +Blanca/M +Blanchard/M +Blanche/M +Blankenship/M +Blantyre/M +Blatz/M +Blavatsky/M +Blenheim/M +Blevins/M +Bligh/M +Bloch/M +Blockbuster/M +Bloemfontein/M +Blondel/M +Blondie/M +Bloom/MR +Bloomer/M +Bloomfield/M +Bloomingdale/M +Bloomsbury/M +Blu +Blucher/M +Bluebeard/M +Bluetooth/M +Blvd +Blythe/M +Boadicea +Boas/M +Bob/M +Bobbi/M +Bobbie/M +Bobbitt/M +Bobby/M +Boccaccio/M +Bodhidharma/M +Bodhisattva/M +Bodleian +Boeing/M +Boeotia/M +Boeotian/M +Boer/SM +Boethius/M +Bogart/M +Bogota/M +Bohemia/M +Bohemian/SM +Bohr/M +Boise/M +Bojangles/M +Boleyn/M +Bolivar/M +Bolivia/M +Bolivian/MS +Bollywood/M +Bologna/M +Bolshevik/SM +Bolsheviki +Bolshevism/M +Bolshevist/M +Bolshoi/M +Bolton/M +Boltzmann/M +Bombay/M +Bonaparte/M +Bonaventure/M +Bond/M +Bonhoeffer/M +Boniface/M +Bonita/M +Bonn/MR +Bonner/M +Bonneville/M +Bonnie/M +Bono/M +Booker/M +Boole/M +Boolean/M +Boone/M +Bootes/M +Booth/M +Bordeaux/M +Borden/M +Bordon/M +Boreas/M +Borg/SM +Borges/M +Borgia/M +Borglum/M +Boris/M +Bork/M +Borlaug/M +Born/M +Borneo/M +Borobudur/M +Borodin/M +Boru/M +Bosch/M +Bose/M +Bosnia/M +Bosnian +Bosporus/M +Boston/MS +Bostonian/M +Boswell/M +Botha +Botox +Botswana/M +Botticelli/M +Boulder/M +Boulez/M +Bourbaki/M +Bourbon/SM +Bournemouth/M +Bovary/M +Bowditch/M +Bowell/M +Bowen/M +Bowers/M +Bowery/M +Bowie/M +Bowman/M +Boyd/M +Boyer/M +Boyle/M +Br/MT +Brad/MY +Bradbury/M +Braddock/M +Bradford/M +Bradley/M +Bradly/M +Bradshaw/M +Bradstreet/M +Brady/M +Bragg/M +Brahe/M +Brahma/MS +Brahmagupta/M +Brahman/MS +Brahmani +Brahmanism/SM +Brahmaputra/M +Brahms/M +Braille/MS +Brain/M +Brampton/M +Bran/M +Branch/M +Brandeis/M +Branden/M +Brandenburg/M +Brandi/M +Brandie/M +Brando/M +Brandon/M +Brandt/M +Brandy/M +Brant/M +Braque/M +Brasilia/M +Bratislava/M +Brattain/M +Bray/M +Brazil/M +Brazilian/MS +Brazos/M +Brazzaville/M +Breakspear/M +Breathalyzer +Brecht/M +Breckenridge/M +Bremen/M +Brenda/M +Brendan/M +Brennan/M +Brenner/M +Brent/M +Brenton/M +Brest/M +Bret/M +Breton/M +Brett/M +Brewer/M +Brewster/M +Brexit +Brezhnev/M +Brian/M +Briana/M +Brianna/M +Brice/M +Bridalveil/M +Bridgeport/M +Bridger/M +Bridges/M +Bridget/M +Bridgetown/M +Bridgett/M +Bridgette/M +Bridgman/M +Brie/SM +Brigadoon/M +Briggs/M +Brigham/M +Bright/M +Brighton/M +Brigid/M +Brigitte/M +Brillo/M +Brillouin +Brinkley/M +Brisbane/M +Bristol/M +Brit/SM +Britain/M +Britannia/M +Britannic/M +Britannica/M +Briticism/SM +British/MRZ +Britisher/M +Britney/M +Briton/MS +Britt/MN +Brittany/SM +Britten/M +Brittney/M +Brno/M +Broadway/SM +Brobdingnag/M +Brobdingnagian/M +Brock/M +Brokaw/M +Bronson/M +Bronte/M +Brontosaurus +Bronx/M +Brooke/MS +Brooklyn/M +Brooks/M +Bros +Brown/MG +Browne/M +Brownian/M +Brownie/S +Browning/M +Brownshirt/M +Brownsville/M +Brubeck/M +Bruce/M +Bruckner/M +Bruegel +Brummel/M +Brunei/M +Bruneian/MS +Brunelleschi/M +Brunhilde/M +Bruno/M +Brunswick/M +Brussels/M +Brut/M +Brutus/M +Bryan/M +Bryant/M +Bryce/M +Brynner/M +Bryon/M +Brzezinski/M +Btu/M +Buber/M +Buchanan/M +Bucharest/M +Buchenwald/M +Buchwald/M +Buck/M +Buckingham/M +Buckley/M +Buckner/M +Bud/M +Budapest/M +Buddha/SM +Buddhism/SM +Buddhist/SM +Buddy/M +Budweiser/M +Buffalo/M +Buffy/M +Buford/M +Bugatti/M +Bugzilla/M +Buick/M +Bujumbura/M +Bukhara/M +Bukharin/M +Bulawayo/M +Bulfinch/M +Bulganin/M +Bulgar/M +Bulgari/M +Bulgaria/M +Bulgarian/SM +Bullock/M +Bullwinkle/M +Bultmann/M +Bumppo/M +Bunche/M +Bundesbank/M +Bundestag/M +Bunin/M +Bunker/M +Bunsen/M +Bunuel/M +Bunyan/M +Burbank/M +Burberry/M +Burch/M +Burger/M +Burgess/M +Burgoyne/M +Burgundian/M +Burgundy/SM +Burke/M +Burks/M +Burl/M +Burlington/M +Burma/M +Burmese/M +Burnett/M +Burns/M +Burnside/M +Burr/M +Burris/M +Burroughs/M +Bursa/M +Burt/M +Burton/M +Burundi/M +Burundian/MS +Busch/M +Bush/M +Bushido/M +Bushnell/M +Butler/M +Butterfingers/M +Buxtehude/M +Byblos/M +Byers/M +Byrd/M +Byron/M +Byronic/M +Byzantine/MS +Byzantium/M +C/SM +CA +CAD/M +CAI +CAM +CAP +CARE +CATV +CB +CBC/M +CBS/M +CCTV +CCU +CD/SM +CDC +CDT +CEO/M +CF +CFC/M +CFO +CGI +CIA/M +CID +CNN/M +CNS/M +CO/M +COBOL/SM +COD +COL +COLA +COVID +CPA/M +CPI/M +CPO +CPR/M +CPU/M +CRT/SM +CSS/M +CST/M +CT/M +CV +CVS/M +CZ +Ca/M +Cabernet/M +Cabot/M +Cabral/M +Cabrera/M +Cabrini/M +Cadette +Cadillac/M +Cadiz/M +Caedmon/M +Caerphilly/M +Caesar/SM +Cage/M +Cagney/M +Cahokia/M +Caiaphas/M +Cain/SM +Cairo/M +Caitlin/M +Cajun/MS +Cal/M +Calais/M +Calcutta/M +Calder/M +Calderon/M +Caldwell/M +Caleb/M +Caledonia/M +Calgary/M +Calhoun/M +Cali/M +Caliban/M +Calif +California/M +Californian/SM +Caligula/M +Callaghan/M +Callahan/M +Callao/M +Callas/M +Callie/M +Calliope/M +Callisto/M +Caloocan/M +Calvary/M +Calvert/M +Calvin/M +Calvinism/MS +Calvinist/MS +Calvinistic +Camacho/M +Cambodia/M +Cambodian/SM +Cambrian/SM +Cambridge/M +Camden/M +Camel/M +Camelopardalis/M +Camelot/MS +Camembert/MS +Cameron/M +Cameroon/SM +Cameroonian/MS +Camilla/M +Camille/M +Camoens/M +Campanella/M +Campbell/M +Campinas/M +Campos/M +Camry/M +Camus/M +Can/M +Canaan/M +Canaanite/MS +Canad +Canada/M +Canadian/SM +Canadianism +Canaletto/M +Canaries/M +Canaveral/M +Canberra/M +Cancer/SM +Cancun/M +Candace/M +Candice/M +Candide/M +Candy/M +Cannes/M +Cannon/M +Canon/M +Canopus/M +Cantabrigian/M +Canterbury/M +Canton/M +Cantonese/M +Cantor/M +Cantrell/M +Cantu/M +Canute/M +Capablanca/M +Capek/M +Capella/M +Capet/M +Capetian/M +Capetown/M +Caph/M +Capistrano/M +Capitol/SM +Capitoline/M +Capone/M +Capote/M +Capra/M +Capri/M +Capricorn/MS +Capt +Capuchin/M +Capulet/M +Cara/M +Caracalla/M +Caracas/M +Caravaggio/M +Carboloy/M +Carboniferous/M +Carborundum/M +Cardenas/M +Cardiff/M +Cardin/M +Cardozo/M +Carey/M +Carib/MS +Caribbean/MS +Carina/M +Carissa/M +Carl/M +Carla/M +Carlene/M +Carlin/M +Carlo/MS +Carlos/M +Carlsbad/M +Carlson/M +Carlton/M +Carly/M +Carlyle/M +Carmela/M +Carmella/M +Carmelo/M +Carmen/M +Carmichael/M +Carmine/M +Carnap/M +Carnation/M +Carnegie/M +Carney/M +Carnot/M +Carol/M +Carole/M +Carolina/M +Caroline/M +Carolingian/M +Carolinian/M +Carolyn/M +Carpathian/SM +Carpathians/M +Carpenter/M +Carr/M +Carranza/M +Carrie/RM +Carrier/M +Carrillo/M +Carroll/M +Carson/M +Carter/M +Cartesian/M +Carthage/M +Carthaginian/MS +Cartier/M +Cartwright/M +Caruso/M +Carver/M +Cary/M +Casablanca/M +Casals/M +Casandra/M +Casanova/SM +Cascades/M +Case/M +Casey/M +Cash/M +Casio/M +Caspar/M +Caspian/M +Cassandra/SM +Cassatt/M +Cassidy/M +Cassie/M +Cassiopeia/M +Cassius/M +Castaneda/M +Castilian +Castillo/M +Castlereagh/M +Castor/M +Castries/M +Castro/M +Catalan/SM +Catalina/M +Catalonia/M +Catawba/M +Caterpillar/M +Cathay/M +Cather/M +Catherine/M +Cathleen/M +Catholic/MS +Catholicism/MS +Cathryn/M +Cathy/M +Catiline/M +Cato/M +Catskill/SM +Catskills/M +Catt/M +Catullus/M +Caucasian/MS +Caucasoid +Caucasus/M +Cauchy/M +Cavendish/M +Cavour/M +Caxton/M +Cayenne/M +Cayman/M +Cayuga/SM +Cayuse +Cb +Cd/M +Ce/M +Ceausescu/M +Cebu/M +Cebuano/M +Cecelia/M +Cecil/M +Cecile/M +Cecilia/M +Cecily/M +Cedric/M +Celeste/M +Celgene/M +Celia/M +Celina/M +Cellini/M +Celsius/M +Celt/SM +Celtic/SM +Cenozoic/M +Centaurus/M +Centigrade +Central +Cepheid/M +Cepheus/M +Cerberus/M +Cerenkov/M +Ceres/M +Cerf/M +Cervantes/M +Cesar/M +Cesarean/M +Cessna/M +Cetus/M +Ceylon/M +Ceylonese +Cezanne/M +Cf/M +Ch'in/M +Ch/N +Chablis/M +Chad/M +Chadian/MS +Chadwick/M +Chagall/M +Chaitanya/M +Chaitin/M +Chaldea +Chaldean/M +Challenger/M +Chalmers +Chamberlain/M +Chambers/M +Champlain/M +Champollion/M +Chan/M +Chance/M +Chancellorsville/M +Chandigarh/M +Chandler/M +Chandon/M +Chandra/M +Chandragupta/M +Chandrasekhar/M +Chanel/M +Chaney/M +Chang/M +Changchun/M +Changsha/M +Chantilly/M +Chaplin/M +Chaplinesque +Chapman/M +Chappaquiddick/M +Chapultepec/M +Charbray/M +Chardonnay/M +Charity/M +Charlemagne/M +Charlene/M +Charles/M +Charleston/MS +Charley/M +Charlie/M +Charlotte/M +Charlottetown/M +Charmaine/M +Charmin/M +Charolais/M +Charon/M +Chartism/M +Chartres/M +Charybdis/M +Chase/M +Chasity/M +Chateaubriand/M +Chattahoochee/M +Chattanooga/M +Chatterley/M +Chatterton/M +Chaucer/M +Chauncey/M +Chautauqua/M +Chavez/M +Chayefsky/M +Che/M +Chechen/M +Chechnya/M +Cheddar/M +Cheer/M +Cheerios/M +Cheetos/M +Cheever/M +Chekhov/M +Chekhovian +Chelsea/M +Chelyabinsk/M +Chen/M +Cheney/M +Chengdu/M +Chennai/M +Cheops/M +Cheri/M +Cherie/M +Chernenko/M +Chernobyl/M +Chernomyrdin/M +Cherokee/MS +Cherry/M +Cheryl/M +Chesapeake/M +Cheshire/M +Chester/M +Chesterfield/M +Chesterton/M +Chevalier/M +Cheviot/M +Chevrolet/M +Chevron/M +Chevy/M +Cheyenne/SM +Chi/M +Chianti/MS +Chiba/M +Chibcha/M +Chicago/M +Chicagoan/M +Chicana/M +Chicano/M +Chickasaw/MS +Chiclets/M +Chihuahua/MS +Chile/M +Chilean/MS +Chimborazo/M +Chimera/MS +Chimu/M +Chin/M +China/M +Chinatown/M +Chinese/M +Chinook/MS +Chipewyan/M +Chippendale/M +Chippewa/SM +Chiquita/M +Chirico/M +Chisholm/M +Chisinau/M +Chittagong/M +Chivas/M +Chloe/M +Choctaw/SM +Chomsky/M +Chongqing/M +Chopin/M +Chopra/M +Chou/M +Chretien/M +Chris/M +Christ/MS +Christa/M +Christchurch/M +Christendom/MS +Christensen/M +Christi/M +Christian/SM +Christianise +Christianity/SM +Christie/M +Christina/M +Christine/M +Christlike +Christmas/MS +Christmastide/MS +Christmastime/MS +Christoper/M +Christopher/M +Chromebook/MS +Chronicles +Chrysler/M +Chrysostom/M +Chrystal/M +Chuck/M +Chukchi/M +Chumash/M +Chung/M +Church/M +Churchill/M +Churriguera/M +Chuvash/M +Ci/M +Cicero/M +Cid/M +Cimabue/M +Cincinnati/M +Cinderella/MS +Cindy/M +CinemaScope/M +Cinerama/M +Cipro/M +Circe/M +Cisco/M +Citibank/M +Citigroup/M +Citroen/M +Cl/MV +Claiborne/M +Clair/M +Claire/M +Clairol/M +Clancy/M +Clapeyron/M +Clapton/M +Clara/M +Clare/M +Clarence/M +Clarendon/M +Clarice/M +Clarissa/M +Clark/M +Clarke/M +Claude/M +Claudette/M +Claudia/M +Claudine/M +Claudio/M +Claudius/M +Claus/M +Clausewitz/M +Clausius/M +Clay/M +Clayton/M +Clearasil/M +Clem/XM +Clemenceau/M +Clemens/M +Clement/MS +Clementine/M +Clements/M +Clemons/M +Clemson/M +Cleo/M +Cleopatra/M +Cleveland/M +Cliburn/M +Cliff/M +Clifford/M +Clifton/M +Cline/M +Clint/M +Clinton/M +Clio/M +Clive/M +Clojure/M +Clorets/M +Clorox/M +Closure/M +Clotho/M +Clouseau/M +Clovis/M +Clyde/M +Clydesdale/M +Clytemnestra/M +Cm/M +Cmdr +Co/M +Cobain/M +Cobb/M +Cochabamba/M +Cochin/M +Cochise/M +Cochran/M +Cockney/M +Cocteau/M +Cod +Cody/M +Coffey/M +Cognac/M +Cohan/M +Cohen/M +Coimbatore/M +Cointreau/M +Coke/SM +Col/M +Colbert/M +Colby/M +Cole/M +Coleen/M +Coleman/M +Coleridge/M +Colette/M +Colfax/M +Colgate/M +Colin/M +Colleen/M +Collier/M +Collin/SM +Collins/M +Colo +Cologne/M +Colombia/M +Colombian/MS +Colombo/M +Colon/M +Coloradan/SM +Colorado/M +Coloradoan +Colosseum/M +Colt/M +Coltrane/M +Columbia/M +Columbine/M +Columbus/M +Com +Comanche/MS +Combs/M +Comdr +Comintern/M +Commandment +Commons/M +Commonwealth +Communion/SM +Communism +Communist/SM +Como/M +Comoran +Comoros/M +Compaq/M +Compton/M +CompuServe/M +Comte/M +Conakry/M +Conan/M +Concepcion/M +Concetta/M +Concord/SM +Concorde/M +Condillac/M +Condorcet/M +Conestoga/M +Confederacy/M +Confederate/MS +Confucian/SM +Confucianism/MS +Confucius/M +Cong/M +Congo/M +Congolese/M +Congregational +Congregationalist/MS +Congress/MS +Congressional +Congreve/M +Conley/M +Conn/MR +Connecticut/M +Connemara/M +Conner/M +Connery/M +Connie/M +Connolly/M +Connors/M +Conrad/M +Conrail/M +Conservative +Constable/M +Constance/M +Constantine/M +Constantinople/M +Constitution +Consuelo/M +Continent/M +Continental/M +Contreras/M +Conway/M +Cook/M +Cooke/M +Cooley/M +Coolidge/M +Cooper/M +Cooperstown/M +Coors/M +Copacabana/M +Copeland/M +Copenhagen/M +Copernican/M +Copernicus/M +Copland/M +Copley/M +Copperfield/M +Coppertone/M +Coppola/M +Coptic/M +Cora/M +Cordelia/M +Cordilleras/M +Cordoba/M +Corey/M +Corfu/M +Corina/M +Corine/M +Corinne/M +Corinth/M +Corinthian/MS +Corinthians/M +Coriolanus/M +Coriolis/M +Cork +Corleone/M +Cormack/M +Corneille/M +Cornelia/M +Cornelius/M +Cornell/M +Corning/M +Cornish/MS +Cornwall/M +Cornwallis/M +Coronado/M +Corot/M +Corp +Correggio/M +Corrine/M +Corsica/M +Corsican/M +Cortes/MS +Cortland/M +Corvallis/M +Corvette/M +Corvus/M +Cory/M +Cosby/M +CosmosDB/M +Cossack/M +Costco/M +Costello/M +Costner/M +Cote/M +Cotonou/M +Cotopaxi/M +Cotswold/M +Cotton/M +Coulomb/M +Coulter/M +Couperin/M +Courbet/M +Courtney/M +Cousteau/M +Coventry/SM +Coward/M +Cowell/M +Cowley/M +Cowper/M +Cox/M +Coy/M +Coyle/M +Cozumel/M +Cpl +Cr/MT +Crabbe/M +Craft/M +Craig/M +Cranach/M +Crane/M +Cranmer/M +Crater/M +Crawford/M +Cray/M +Crayola/M +Creation/M +Creator/M +Crecy/M +Cree/DSM +Creek/SM +Creighton/M +Creole/SM +Creon/M +Cressida/M +Crest/M +Cretaceous/M +Cretan/SM +Crete/M +Crichton/M +Crick/M +Crimea/M +Crimean/M +Criollo/M +Crisco/M +Cristina/M +Croat/SM +Croatia/M +Croatian/MS +Croce/M +Crockett/M +Croesus/M +Cromwell/M +Cromwellian/M +Cronin/M +Cronkite/M +Cronus/M +Crookes/M +Crosby/M +Cross/M +Crow/SM +Crowley/M +Crucifixion/MS +Cruikshank/M +Cruise/M +Crusades's +Crusoe/M +Crux/M +Cruz/M +Cryptozoic/M +Crystal/M +Csonka/M +Ct +Ctesiphon/M +Cthulhu/M +Cu/M +Cuba/M +Cuban/SM +Cuchulain/M +Cuisinart/M +Culbertson/M +Cullen/M +Cumberland/M +Cummings/M +Cunard/M +Cunningham/M +Cupid/M +Curacao/M +Curie/M +Curitiba/M +Currier/M +Curry/RM +Curt/M +Curtis/M +Custer/M +Cuvier/M +Cuzco/M +Cybele/M +Cyclades/M +Cyclopes/M +Cyclops/M +Cygnus/M +Cymbeline/M +Cynthia/M +Cyprian/M +Cypriot/MS +Cyprus/M +Cyrano/M +Cyril/M +Cyrillic/M +Cyrus/M +Czech/M +Czechia/M +Czechoslovak +Czechoslovakia/M +Czechoslovakian/SM +Czechs +Czerny/M +D/M +DA/M +DAR +DAT/M +DBMS/M +DC/M +DD/M +DDS/M +DDT/S +DE +DEA +DEC/SD +DH +DHS +DI +DJ +DMCA +DMD/M +DMZ +DNA/M +DOA +DOB +DOD +DOE +DOS/M +DOT +DP/SM +DPT +DST +DTP +DUI +DVD/S +DVR/SM +DWI +Dachau/M +Dacron/SM +Dada/M +Dadaism/M +Daedalus/M +Daguerre/M +Dagwood/M +Dahomey/M +Daimler/M +Daisy/M +Dakar/M +Dakota/SM +Dakotan/M +Dalai +Dale/M +Daley/M +Dali/M +Dalian/M +Dallas/M +Dalmatia/M +Dalmatian/SM +Dalton/M +Damascus/M +Dame/MN +Damian/M +Damien/M +Damion/M +Damocles/M +Damon/M +Dan/M +Dana/M +Danae/M +Dane/SM +Danelaw/M +Dangerfield/M +Danial/M +Daniel/SM +Danielle/M +Daniels/M +Danish/M +Dannie/M +Danny/M +Danone/M +Dante/M +Danton/M +Danube/M +Danubian/M +Daphne/M +Darby/M +Darcy/M +Dardanelles/M +Dare/M +Daren/M +Darfur/M +Darin/M +Dario/M +Darius/M +Darjeeling/M +Darla/M +Darlene/M +Darling/M +Darnell/M +Darrel/M +Darrell/M +Darren/M +Darrin/M +Darrow/M +Darryl/M +Darth/M +Dartmoor/M +Dartmouth/M +Darvon/M +Darwin/M +Darwinian/M +Darwinism/SM +Darwinist +Daryl/M +Datamation +Daugherty/M +Daumier/M +Davao/M +Dave/M +Davenport/M +David/MS +Davidson/M +Davies/M +Davis/M +Davy/SM +Dawes/M +Dawkins +Dawn/M +Dawson/M +Day/M +Dayan +Dayton/M +DeGeneres/M +Deadhead/M +Dean/M +Deana/M +Deandre/M +Deann/M +Deanna/M +Deanne/M +Death/M +Debbie/M +Debby/M +Debian/M +Debora/M +Deborah/M +Debouillet/M +Debra/M +Debs/M +Debussy/M +Dec/M +Decalogue/M +Decatur/M +Decca/M +Deccan/M +December/SM +Decker/M +Dedekind/M +Dee/M +Deena/M +Deere/M +Defoe/M +Degas/M +Deidre/M +Deimos/M +Deirdre/M +Deity +Dejesus/M +Del/M +Delacroix/M +Delacruz/M +Delaney/M +Delano/M +Delaware/MS +Delawarean/SM +Delbert/M +Deleon/M +Delgado/M +Delhi/M +Delia/M +Delibes/M +Delicious/M +Delilah/M +Delilahs +Delius/M +Dell/M +Della/M +Delmar/M +Delmarva/M +Delmer/M +Delmonico/M +Delores/M +Deloris/M +Delphi/M +Delphic/M +Delphinus/M +Delta/M +Dem/G +Demavend/M +Demerol/M +Demeter/M +Demetrius/M +Deming/M +Democrat/SM +Democratic +Democritus/M +Demosthenes/M +Dempsey/M +Dena/M +Denali +Deneb/M +Denebola/M +Deng/M +Denis/M +Denise/M +Denmark/M +Dennis/M +Denny/M +Denver/M +Deon/M +Depp/M +Derby/M +Derek/M +Derick/M +Dermot/M +Derrick/M +Derrida/M +Descartes/M +Desdemona/M +Desiree/M +Desmond/M +Detroit/M +Deuteronomy/M +Devanagari/M +Devi/M +Devin/M +Devon/M +Devonian/M +Dewar/M +Dewayne/M +Dewey/M +Dewitt/M +Dexedrine/M +Dexter/M +Dhaka/M +Dhaulagiri/M +Di/SM +DiCaprio/M +DiMaggio/M +Diaghilev/M +Dial/M +Diana/M +Diane/M +Diann/M +Dianna/M +Dianne/M +Dias +Diaspora/MS +Dick/XM +Dickens/M +Dickensian +Dickerson/M +Dickinson/M +Dickson/M +Dictaphone/SM +Diderot/M +Dido/M +Didrikson/M +Diefenbaker/M +Diego/M +Diem/M +Dietrich/M +Dijkstra/M +Dijon/M +Dilbert/MS +Dillard/M +Dillinger/M +Dillon/M +Dina/M +Dinah/M +Dino/M +Diocletian/M +Diogenes/M +Dion/M +Dionne/M +Dionysian/M +Dionysus/M +Diophantine/M +Dior/M +Dipper/M +Dir +Dirac/M +Dirichlet/M +Dirk/M +Dis/M +Disney/M +Disneyland/M +Disraeli/M +Divine/M +Diwali/M +Dix/M +Dixie/M +Dixiecrat/M +Dixieland/SM +Dixon/M +Django/M +Djibouti/M +Dmitri/M +Dnepropetrovsk/M +Dniester/M +Dobbin/M +Doberman/M +Dobro/M +Doctor +Doctorow/M +Dodge/M +Dodgson/M +Dodoma/M +Dodson/M +Doe/M +Doha/M +Dolby/M +Dole/M +Dollie/M +Dolly/M +Dolores/M +Domesday/M +Domingo/M +Dominguez/M +Dominic/M +Dominica/M +Dominican/MS +Dominick/M +Dominion +Dominique/M +Domitian/M +Don/SM +Dona/M +Donahue/M +Donald/M +Donaldson/M +Donatello/M +Donetsk/M +Donizetti/M +Donn/MR +Donna/M +Donne/M +Donnell/M +Donner/M +Donnie/M +Donny/M +Donovan/M +Dooley/M +Doolittle/M +Doonesbury/M +Doppler/M +Dora/M +Dorcas/M +Doreen/M +Dorian/M +Doric/M +Doris/M +Doritos/M +Dorothea/M +Dorothy/M +Dorset/M +Dorsey/M +Dorthy/M +Dortmund/M +Dostoevsky/M +Dot/M +Dotson/M +Douala/M +Douay/M +Doubleday/M +Doug/M +Douglas/M +Douglass/M +Douro/M +Dover/M +Dow/M +Downs/M +Downy/M +Doyle/M +Dr +Draco/M +Draconian/M +Dracula/M +Drake/M +Dramamine/SM +Drambuie/M +Drano/M +Dravidian/M +Dreiser/M +Dresden/M +Drew/M +Dreyfus/M +Dristan/M +Dropbox/M +Drudge/M +Drupal/M +Dryden/M +Dschubba/M +Du +DuPont/M +Duane/M +Dubai/M +Dubcek/M +Dubhe/M +Dublin/M +Dubrovnik/M +Duchamp/M +Dudley/M +Duffy/M +Duisburg/M +Duke/M +Dulles/M +Duluth/M +Dumas/M +Dumbledore/M +Dumbo/M +Dunant/M +Dunbar/M +Duncan/M +Dundee +Dunedin/M +Dunkirk/M +Dunlap/M +Dunn/M +Dunne/M +Duracell/M +Duran/M +Durant/M +Durante/M +Durban/M +Durer/M +Durex/M +Durham/MS +Durkheim/M +Duroc/M +Durocher/M +Duse/M +Dushanbe/M +Dusseldorf/M +Dustbuster/M +Dustin/M +Dusty/M +Dutch/M +Dutchman/M +Dutchmen/M +Dutchwoman +Duvalier/M +Dvina/M +Dvorak/M +Dwayne/M +Dwight/M +Dy/M +Dyer/M +Dylan/M +DynamoDB/M +Dyson/M +Dzerzhinsky/M +Dzungaria/M +E/SM +EC +ECG/M +ECMAScript/M +EDP/M +EDT +EEC/M +EEG/M +EEO +EEOC +EFL +EFT +EKG/M +ELF/M +EM +EMT +ENE/M +EOE +EPA/M +ER +ERA +ESE/M +ESL +ESP/M +ESPN/M +ESR +EST/M +ET +ETA +ETD +EU +EULA/S +Eakins/M +Earhart/M +Earl/M +Earle/M +Earlene/M +Earline/M +Earnest/M +Earnestine/M +Earnhardt/M +Earp/M +East/SZMR +Easter/M +Eastern/R +Eastman/M +Eastwood/M +Eaton/M +Eben/M +Ebeneezer/M +Ebert/M +Ebola/M +Ebonics/M +Ebony/M +Ebro/M +Ecclesiastes/M +Eco/M +Ecstasy +Ecuador/M +Ecuadoran/SM +Ecuadorean +Ecuadorian/SM +Ed/MNX +Edam/SM +Edda/M +Eddie/M +Eddington/M +Eddy/M +Eden/M +Edgar/M +Edgardo/M +Edinburgh/M +Edison/M +Edith/M +Edmond/M +Edmonton/M +Edmund/M +Edna/M +Edsel/M +Eduardo/M +Edward/SM +Edwardian/M +Edwardo/M +Edwards/M +Edwin/M +Edwina/M +Eeyore/M +Effie/M +Efrain/M +Efren/M +Eggo/M +Egypt/M +Egyptian/MS +Egyptology/M +Ehrenberg/M +Ehrlich/M +Eichmann/M +Eiffel/M +Eileen/M +Einstein/MS +Eire/M +Eisenhower/M +Eisenstein/M +Eisner/M +Elaine/M +Elam/M +Elanor/M +Elasticsearch/M +Elastoplast/M +Elba/M +Elbe/M +Elbert/M +Elbrus/M +Eldon/M +Eleanor/M +Eleazar/M +Electra/M +Elena/M +Elgar/M +Eli/M +Elias/M +Elijah/M +Elinor/M +Eliot/M +Elisa/M +Elisabeth/M +Elise/M +Eliseo/M +Elisha/M +Eliza/M +Elizabeth/M +Elizabethan/SM +Ella/M +Ellen/M +Ellesmere/M +Ellie/M +Ellington/M +Elliot/M +Elliott/M +Ellis/M +Ellison/M +Elma/M +Elmer/M +Elmo/M +Elnath/M +Elnora/M +Elohim/M +Eloise/M +Eloy/M +Elroy/M +Elsa/M +Elsie/M +Elsinore/M +Eltanin/M +Elton/M +Elul/M +Elva/M +Elvia/M +Elvin/M +Elvira/M +Elvis/M +Elway/M +Elwood/M +Elysee/M +Elysian/M +Elysium/SM +Emacs/M +Emanuel/M +Emerson/M +Emery/M +Emil/M +Emile/M +Emilia/M +Emilio/M +Emily/M +Eminem/M +Eminence +Emma/M +Emmanuel/M +Emmett/M +Emmy/M +Emory/M +Encarta/M +Endymion/M +Eng/M +Engels/M +England/M +English/MRS +Englishman/M +Englishmen/M +Englishwoman/M +Englishwomen/M +Enid/M +Enif/M +Eniwetok/M +Enkidu/M +Enoch/M +Enos/M +Enrico/M +Enrique/M +Enron/M +Enterprise/M +Eocene/M +Epcot/M +Ephesian/MS +Ephesus/M +Ephraim/M +Epictetus/M +Epicurean/M +Epicurus/M +Epimethius/M +Epiphany/SM +Episcopal +Episcopalian/MS +Epistle +Epsom/M +Epson/M +Epstein/M +Equuleus/M +Er/M +Erasmus/M +Erato/M +Eratosthenes/M +Erebus/M +Erector/M +Erewhon/M +Erhard/M +Eric/M +Erica/M +Erich/M +Erick/M +Ericka/M +Erickson/M +Eridanus/M +Erie/M +Erik/M +Erika/M +Erin/M +Eris/MS +Eritrea/M +Eritrean/SM +Erlang/M +Erlenmeyer/M +Erma/M +Erna/M +Ernest/M +Ernestine/M +Ernesto/M +Ernie/M +Ernst/M +Eros/MS +Errol/M +Erse/M +ErvIn/M +Erwin/M +Esau/M +Escher/M +Escherichia/M +Escondido +Eskimo/MS +Esmeralda/M +Esperanto/M +Esperanza/M +Espinoza/M +Esq/M +Esquire/MS +Essen/M +Essene/M +Essequibo/M +Essex/M +Essie/M +Establishment +Esteban/M +Estela/M +Estella/M +Estelle/M +Ester/M +Esterhazy/M +Estes/M +Esther/M +Estonia/M +Estonian/SM +Estrada/M +Ethan/M +Ethel/M +Ethelred/M +Ethernet/M +Ethiopia/M +Ethiopian/SM +Etna/M +Eton/M +Etruria/M +Etruscan/M +Etta/M +Eu/M +Eucharist/MS +Eucharistic +Euclid/M +Eugene/M +Eugenia/M +Eugenie/M +Eugenio/M +Eula/M +Euler/M +Eumenides/M +Eunice/M +Euphrates/M +Eur +Eurasia/M +Eurasian/MS +Euripides/M +Eurodollar/SM +Europa/M +Europe/M +European/MS +Eurydice/M +Eustachian/M +Euterpe/M +Eva/M +Evan/SM +Evangelical +Evangelina/M +Evangeline/M +Evangelist/M +Evans/M +Evansville/M +Eve/M +Evelyn/M +Evenki/M +EverReady/M +Everest/M +Everett/M +Everette/M +Everglades/M +Evert/M +Evian/M +Evita/M +Ewing/M +Excalibur/M +Excedrin/M +Excellency/SM +Exchequer +Exercycle/M +Exocet/M +Exodus/M +Exxon/M +Eyck/M +Eyre/M +Eysenck/M +Ezekiel/M +Ezra/M +F/MD +FAA +FAQ/SM +FBI/M +FCC +FD +FDA +FDIC/M +FDR/M +FHA/M +FICA/M +FIFO +FL +FM/SM +FNMA/M +FOFL +FORTRAN/M +FPO +FSF/M +FSLIC +FTC +FUD/S +FWD +FWIW +FY +FYI +Faberge/M +Fabian/MS +Facebook/M +Faeroe/M +Fafnir/M +Fagin/M +Fahd/M +Fahrenheit/M +Fairbanks/M +Faisal/M +Faisalabad/M +Faith/M +Falasha/M +Falkland/SM +Falklands/M +Fallopian/M +Falstaff/M +Falwell/M +Fannie/M +Fanny/M +Faraday/M +Fargo/M +Farley/M +Farmer/M +Farragut/M +Farrakhan/M +Farrell/M +Farrow/M +Farsi/M +Fassbinder/M +Fatah/M +Fates/M +Father/SM +Fatima/M +Fatimid/M +Faulkner/M +Faulknerian/M +Fauntleroy/M +Faust/M +Faustian/M +Faustino/M +Faustus/M +Fawkes/M +Fay/M +Faye/M +Fe/M +Feb/M +February/SM +Fed/SM +FedEx/M +Federal/MS +Federalist/M +Federico/M +Feds/M +Felecia/M +Felice/M +Felicia/M +Felicity/M +Felipe/M +Felix/M +Fellini/M +Fenian/M +Ferber/M +Ferdinand/M +Fergus/M +Ferguson/M +Ferlinghetti/M +Fermat/M +Fermi/M +Fern/M +Fernandez/M +Fernando/M +Ferrari/M +Ferraro/M +Ferrell/M +Ferris/M +Feynman/M +Fez/M +Fiat/M +Fiberglas/M +Fibonacci/M +Fichte/M +Fidel/M +Fido/M +Fielding/M +Fields/M +Figaro/M +Figueroa/M +Fiji/M +Fijian/MS +Filipino/MS +Fillmore/M +Filofax/M +Finch/M +Finland/M +Finlay/M +Finley/M +Finn/SM +Finnbogadottir/M +Finnegan/M +Finnish/M +Fiona/M +Firebase/M +Firefox/M +Firestone/M +Fischer/M +Fisher/M +Fisk/M +Fitch/M +Fitzgerald/M +Fitzpatrick/M +Fitzroy/M +Fizeau/M +Fla +Flanagan/M +Flanders/M +Flathead +Flatt/M +Flaubert/M +Fleischer/M +Fleming/M +Flemish/M +Fletcher/M +Flint/M +Flintstones/M +Flo/M +Flora/M +Florence/M +Florentine/M +Flores/M +Florida/M +Floridan/M +Floridian/SM +Florine/M +Florsheim/M +Flory/M +Flossie/M +Flowers/M +Floyd/M +Flynn/M +Fm/M +Foch/M +Fokker/M +Foley/M +Folgers/M +Folsom/M +Fomalhaut/M +Fonda/M +Foosball/M +Forbes/M +Ford/M +Foreman/M +Forest/MR +Forester/M +Formica/MS +Formosa/M +Formosan/M +Forrest/M +Forster/M +Fortaleza/M +Fosse/M +Foster/M +Fotomat/M +Foucault/M +Fourier/M +Fourneyron/M +Fourth +Fowler/M +Fox/MS +Fr/MD +Fragonard/M +Fran/M +France/SM +Frances/M +Francesca/M +Francine/M +Francis/M +Francisca/M +Franciscan/MS +Francisco/M +Franck/M +Franco/M +Francois/M +Francoise/M +Francophile +Franglais/M +Frank/SM +Frankel/M +Frankenstein/M +Frankfort/M +Frankfurt/MR +Frankfurter/M +Frankie/M +Frankish +Franklin/M +Franks/M +Franny/M +Franz/M +Fraser/M +Frau/MN +Fraulein +Frazier/M +Fred/M +Freda/M +Freddie/M +Freddy/M +Frederic/M +Frederick/M +Fredericton/M +Fredric/M +Fredrick/M +Freeman/M +Freemason/SM +Freemasonry/SM +Freetown/M +Freida/M +Fremont/M +French/MS +Frenchman/M +Frenchmen/M +Frenchwoman/M +Frenchwomen/M +Freon/M +Fresnel/M +Fresno/M +Freud/M +Freudian/M +Frey/M +Freya/M +Fri/M +Friday/SM +Frieda/M +Friedan/M +Friedman/M +Friedmann/M +Friend/SM +Frigga/M +Frigidaire/M +Frisbee/M +Frisco/M +Frisian/MS +Frito/M +Fritz/M +Frobisher/M +Frodo/M +Froissart/M +Fromm/M +Fronde/M +Frontenac/M +Frost/M +Frostbelt/M +Frunze/M +Fry/M +Frye/M +Fuchs/M +Fuentes/M +Fugger/M +Fuji/M +Fujian/M +Fujitsu/M +Fujiwara/M +Fujiyama/M +Fukuoka/M +Fukuyama/M +Fulani/M +Fulbright/M +Fuller/M +Fullerton/M +Fulton/M +Funafuti/M +Fundy/M +Furies/M +Furman/M +Furtwangler/M +Fushun/M +Fuzhou/M +Fuzzbuster/M +G/MNRB +GA +GAO +GATT/M +GB/M +GCC/M +GDP/M +GE/M +GED +GHQ/M +GHz +GI +GIF +GIGO +GM/M +GMAT +GMO +GMT/M +GNP/M +GNU/M +GOP/M +GP/M +GPA +GPO +GPS +GPU +GSA +GTE/M +GU +GUI/M +Ga/M +Gable/M +Gabon/M +Gabonese/M +Gaborone/M +Gabriel/M +Gabriela/M +Gabrielle/M +Gacrux/M +Gadsden/M +Gaea/M +Gael/SM +Gaelic/M +Gagarin/M +Gage/M +Gaia/M +Gail/M +Gaiman/M +Gaines/M +Gainsborough/M +Galahad/SM +Galapagos/M +Galatea/M +Galatia/M +Galatians/M +Galaxy +Galbraith/M +Gale/M +Galen/M +Galibi/M +Galilean/SM +Galilee/M +Galileo/M +Gall/M +Gallagher/M +Gallegos/M +Gallic/M +Gallicism/SM +Gallo/M +Galloway/M +Gallup/M +Galois/M +Galsworthy/M +Galvani/M +Galveston/M +Gama +Gamay/M +Gambia/M +Gambian/SM +Gamble/M +Gamow/M +Gandalf/M +Gandhi/M +Gandhian/M +Ganesha/M +Ganges/M +Gangtok/M +Gansu/M +Gantry/M +Ganymede/M +Gap/M +Garbo/M +Garcia/M +Gardner/M +Gareth/M +Garfield/M +Garfunkel/M +Gargantua/M +Garibaldi/M +Garland/M +Garner/M +Garrett/M +Garrick/M +Garrison/M +Garry/M +Garth/M +Garvey/M +Gary/M +Garza/M +Gascony/M +Gasser/M +Gastroenterology +Gates/M +Gatling/M +Gatorade/M +Gatsby/M +Gatun/M +Gauguin/M +Gaul/SM +Gaulish +Gauss/M +Gaussian/M +Gautama/M +Gautier/M +Gavin/M +Gawain/M +Gay/M +Gayle/M +Gaza/M +Gaziantep/M +Gd/M +Gdansk/M +Ge/M +Geffen/M +Gehenna/M +Gehrig/M +Geiger/M +Gelbvieh/M +Geller/M +Gemini/MS +Gen/M +Gena/M +Genaro/M +Gene/M +Genesis/M +Genet/M +Geneva/M +Genevieve/M +Genghis/M +Genoa/SM +Gentoo/M +Gentry/M +Geo/M +Geoffrey/M +George/MS +Georgetown/M +Georgette/M +Georgia/M +Georgian/MS +Georgina/M +Ger/M +Gerald/M +Geraldine/M +Gerard/M +Gerardo/M +Gerber/M +Gere/M +Geritol/M +German/MS +Germanic/M +Germany/M +Geronimo/M +Gerry/M +Gershwin/M +Gertrude/M +Gestapo/SM +Gethsemane/M +Getty/M +Gettysburg/M +Gewurztraminer/M +Ghana/M +Ghanaian +Ghats/M +Ghazvanid/M +Ghent/M +Ghibelline/M +Giacometti/M +Giannini/M +Giauque/M +Gibbon/M +Gibbs/M +Gibraltar/MS +Gibson/M +Gide/M +Gideon/M +Gielgud/M +Gienah/M +Gil/M +Gila/M +Gilbert/M +Gilberto/M +Gilchrist/M +Gilda/M +Gilead/M +Giles/M +Gilgamesh/M +Gill/M +Gillespie/M +Gillette/M +Gilliam/M +Gillian/M +Gilligan/M +Gilman +Gilmore/M +Gina/M +Ginger/M +Gingrich/M +Ginny/M +Gino/M +Ginsberg/M +Ginsburg/M +Ginsu/M +Giorgione/M +Giotto/M +Giovanni/M +Giraudoux/M +Giselle/M +Gish/M +GitHub/M +Giuliani/M +Giuseppe/M +Giza/M +Gk +Gladstone/MS +Gladys/M +Glaser/M +Glasgow/M +Glass/M +Glastonbury/M +Glaswegian/SM +Glaxo/M +Gleason/M +Glen/M +Glenda/M +Glendale +Glenlivet/M +Glenn/M +Glenna/M +Gloria/M +Gloucester/M +Glover/M +Gnostic/M +Gnosticism/M +GnuPG +Goa/M +Gobi/M +God/M +Godard/M +Goddard/M +Godel/M +Godhead/M +Godiva/M +Godot/M +Godspeed/SM +Godthaab/M +Godunov/M +Godzilla/M +Goebbels/M +Goering/M +Goethals/M +Goethe/M +Goff/M +Gog/M +Gogol/M +Goiania/M +Golan/M +Golconda/M +Golda/M +Goldberg/M +Golden/M +Goldie/M +Goldilocks/M +Golding/M +Goldman/M +Goldsmith/M +Goldwater/M +Goldwyn/M +Golgi/M +Golgotha/M +Goliath/M +Gomez/M +Gomorrah/M +Gompers/M +Gomulka/M +Gondwanaland/M +Gonzales/M +Gonzalez/M +Gonzalo/M +Good/M +Goodall/M +Goode/M +Goodman/M +Goodrich/M +Goodwill/M +Goodwin/M +Goodyear/M +Google/M +Goolagong/M +Gopher +Gorbachev/M +Gordian/M +Gordimer/M +Gordon/M +Gore/M +Goren/M +Gorey/M +Gorgas/M +Gorgon/M +Gorgonzola/M +Gorky/M +Gospel/MS +Goteborg/M +Goth/M +Gotham/M +Gothic/MS +Goths +Gouda/SM +Gould/M +Gounod/M +Governor +Goya/M +Gr/B +Grable/M +Gracchus/M +Grace/M +Graceland/M +Gracie/M +Graciela/M +Grady/M +Graffias/M +Grafton/M +Graham/M +Grahame/M +Grail/M +Grammy/M +Grampians/M +Granada/M +Grant/M +Grass/M +Graves/M +Gray/M +Grecian/M +Greece/M +Greek/SM +Greeley/M +Green/SM +Greene/M +Greenland/M +Greenlandic +Greenpeace/M +Greensboro/M +Greensleeves/M +Greenspan/M +Greenwich/M +Greer/M +Greg/M +Gregg/M +Gregorian/M +Gregorio/M +Gregory/M +Grenada/M +Grenadian/MS +Grenadines/M +Grendel/M +Grenoble/M +Gresham/M +Greta/M +Gretchen/M +Gretel/M +Gretzky/M +Grey/M +Grieg/M +Griffin/M +Griffith/M +Grimes/M +Grimm/M +Grinch/M +Gris/M +Gromyko/M +Gropius/M +Gross/M +Grosz/M +Grotius/M +Grover/M +Grozny +Grumman/M +Grundy/M +Grunewald/M +Grus/M +Gruyere/SM +Guadalajara/M +Guadalcanal/M +Guadalquivir/M +Guadalupe/M +Guadeloupe/M +Guallatiri/M +Guam/M +Guamanian +Guangdong/M +Guangzhou/M +Guantanamo/M +Guarani/M +Guarnieri/M +Guatemala/M +Guatemalan/MS +Guayaquil/M +Gucci/M +Guelph/M +Guernsey/MS +Guerra/M +Guerrero/M +Guevara/M +Guggenheim/M +Guiana/M +Guido +Guillermo/M +Guinea/M +Guinean/MS +Guinevere/M +Guinness/M +Guiyang/M +Guizhou/M +Guizot/M +Gujarat/M +Gujarati/M +Gujranwala/M +Gullah/M +Gulliver/M +Gumbel/M +Gunther/M +Guofeng/M +Gupta/M +Gurkha/M +Gus/M +Gustav/M +Gustavo/M +Gustavus/M +Gutenberg/M +Guthrie/M +Gutierrez/M +Guy/M +Guyana/M +Guyanese/M +Guzman/M +Gwalior/M +Gwen/M +Gwendoline/M +Gwendolyn/M +Gwyn/M +Gypsy/SM +H/M +HBO/M +HBase/M +HDD +HDMI +HDTV +HF/M +HHS +HI +HIV/M +HM +HMO/M +HMS +HOV +HP/M +HPV +HQ/M +HR +HRH +HS +HSBC/M +HST +HT +HTML/M +HTTP +HUD/M +Ha/M +Haas/M +Habakkuk/M +Haber/M +Hadar/M +Hades/M +Hadoop/M +Hadrian/M +Hafiz/M +Hagar/M +Haggai/M +Hagiographa/M +Hague/M +Hahn/M +Haida/SM +Haifa/M +Hainan/M +Haiphong/M +Haiti/M +Haitian/MS +Hakka/M +Hakluyt/M +Hal/SM +Haldane/M +Hale/M +Haleakala/M +Haley/M +Halifax/M +Hall/M +Halley/M +Halliburton/M +Hallie/M +Hallmark/M +Halloween/MS +Hallstatt/M +Halon/M +Hals/M +Halsey/M +Ham/M +Haman/M +Hamburg/MS +Hamhung/M +Hamilcar/M +Hamill/M +Hamilton/M +Hamiltonian/M +Hamitic/M +Hamlet/M +Hamlin/M +Hammarskjold/M +Hammerstein/M +Hammett/M +Hammond/M +Hammurabi/M +Hampshire/M +Hampton/M +Hamsun/M +Han/SM +Hancock/M +Handel/M +Handy/M +Haney/M +Hangul/M +Hangzhou/M +Hank/M +Hanna/M +Hannah/M +Hannibal/M +Hanoi/M +Hanover/M +Hanoverian/M +Hans/MN +Hansel/M +Hansen/M +Hanson/M +Hanuka +Hanukkah/M +Hanukkahs +Hapsburg/M +Harare/M +Harbin/M +Hardin/M +Harding/M +Hardy/M +Hargreaves/M +Harlan/M +Harlem/M +Harlequin/M +Harley/M +Harlow/M +Harmon/M +Harold/M +Harper/M +Harpy/SM +Harrell/M +Harriet/M +Harriett/M +Harrington/M +Harris/M +Harrisburg/M +Harrison/M +Harrods/M +Harry/M +Hart/M +Harte/M +Hartford/M +Hartline/M +Hartman/M +Harvard/M +Harvey/M +Hasbro/M +Hasidim/M +Haskell/M +Hastings/M +Hatfield/M +Hathaway/M +Hatsheput/M +Hatteras/M +Hattie/M +Hauptmann/M +Hausa/M +Hausdorff/M +Havana/MS +Havarti/M +Havel/M +Havoline/M +Haw +Hawaii/M +Hawaiian/SM +Hawking/M +Hawkins/M +Hawks +Hawthorne/M +Hay/SM +Hayden/M +Haydn/M +Hayek/M +Hayes/M +Haynes/M +Hays/M +Hayward/M +Haywood/M +Hayworth/M +Hazel/M +Hazlitt/M +He/M +Head/M +Hearst/M +Heath/MR +Heather/M +Heaviside/M +Heb +Hebe/M +Hebei/M +Hebert/M +Hebraic/M +Hebraism/SM +Hebrew/MS +Hebrews/M +Hebrides/M +Hecate/M +Hector/M +Hecuba/M +Heep/M +Hefner/M +Hegel/M +Hegelian/M +Hegira/M +Heidegger/M +Heidelberg/M +Heidi/M +Heifetz/M +Heilongjiang/M +Heimlich/M +Heine/M +Heineken/M +Heinlein/M +Heinrich/M +Heinz/M +Heisenberg/M +Heisman/M +Helen/M +Helena/M +Helene/M +Helga/M +Helicobacter +Helicon/M +Heliopolis/M +Helios/M +Hellene/SM +Hellenic/M +Hellenisation/M +Hellenise +Hellenism/MS +Hellenist +Hellenistic/M +Hellenize's +Heller/M +Hellespont/M +Hellman/M +Helmholtz/M +Heloise/M +Helsinki/M +Helvetian +Helvetius/M +Hemingway/M +Henan/M +Hench/M +Henderson/M +Hendrick/MS +Hendricks/M +Hendrix/M +Henley/M +Hennessy/M +Henri/M +Henrietta/M +Henrik/M +Henry/M +Hensley/M +Henson/M +Hepburn/M +Hephaestus/M +Hepplewhite/M +Hera/M +Heracles/M +Heraclitus/M +Herakles/M +Herbart/M +Herbert/M +Herculaneum/M +Herculean +Hercules/M +Herder/M +Hereford/SM +Herero/M +Heriberto/M +Herman/M +Hermaphroditus/M +Hermes/M +Herminia/M +Hermitage/M +Hermite/M +Hermosillo/M +Hernandez/M +Herod/M +Herodotus/M +Heroku/M +Herr/MG +Herrera/M +Herrick/M +Herring/M +Herschel/M +Hersey/M +Hershel/M +Hershey/M +Hertz/M +Hertzsprung/M +Herzegovina/M +Herzl/M +Heshvan/M +Hesiod/M +Hesperus/M +Hess/M +Hesse/M +Hessian/M +Hester/M +Heston/M +Hettie/M +Hewitt/M +Hewlett/M +Heyerdahl/M +Heywood/M +Hezbollah/M +Hezekiah/M +Hf/M +Hg/M +Hialeah/M +Hiawatha/M +Hibernia/M +Hibernian +Hickman/M +Hickok/M +Hicks/M +Hieronymus/M +Higashiosaka +Higgins/M +Highlander/SM +Highlands +Highness/M +Hilario/M +Hilary/M +Hilbert/M +Hilda/M +Hildebrand/M +Hilfiger/M +Hill/M +Hillary/M +Hillel/M +Hilton/M +Himalaya/SM +Himalayan +Himalayas/M +Himmler/M +Hinayana/M +Hindemith/M +Hindenburg/M +Hindi/M +Hindu/SM +Hinduism/SM +Hindustan/M +Hindustani/SM +Hines/M +Hinton/M +Hipparchus/M +Hippocrates/M +Hippocratic/M +Hiram/M +Hirobumi/M +Hirohito/M +Hiroshima/M +Hispanic/SM +Hispaniola/M +Hiss/M +Hitachi/M +Hitchcock/M +Hitler/MS +Hittite/SM +Hmong/M +Ho/M +Hobart/M +Hobbes/M +Hobbs/M +Hockney/M +Hodge/SM +Hodges/M +Hodgkin/M +Hoff/M +Hoffa/M +Hoffman/M +Hofstadter/M +Hogan/M +Hogarth/M +Hogwarts/M +Hohenlohe/M +Hohenstaufen/M +Hohenzollern/M +Hohhot/M +Hohokam/M +Hokkaido/M +Hokusai/M +Holbein/M +Holcomb/M +Holden/M +Holder/M +Holiday/M +Holiness +Holland/ZSMR +Hollander/M +Hollerith/M +Holley/M +Hollie/M +Hollis/M +Holloway/M +Holly/M +Hollywood/M +Holman/M +Holmes/M +Holocaust/M +Holocene/M +Holst/M +Holstein/SM +Holt/M +Homer/M +Homeric/M +Hon +Honda/M +Honduran/MS +Honduras/M +Honecker/M +Honeywell/M +Hong +Honiara/M +Honolulu/M +Honorable +Honshu/M +Hood/M +Hooke/RM +Hooker/M +Hooper/M +Hoosier/MS +Hooters/M +Hoover/MS +Hope/M +Hopewell/M +Hopi/SM +Hopkins/M +Hopper/M +Horace/M +Horacio/M +Horatio/M +Hormel/M +Hormuz/M +Horn/M +Hornblower/M +Horne/M +Horowitz/M +Horthy/M +Horton/M +Horus/M +Hosea/M +Host/SM +Hotpoint/M +Hottentot/SM +Houdini/M +House/M +Housman/M +Houston/M +Houyhnhnm/M +Hovhaness/M +Howard/M +Howe/M +Howell/MS +Howells/M +Howrah +Hoyle/M +Hrothgar/M +Hts +Huang/M +Hubbard/M +Hubble/M +Hubei/M +Huber/M +Hubert/M +Huck/M +Huddersfield +Hudson/M +Huerta/M +Huey/M +Huff/M +Huffman/M +Huggins/M +Hugh/MS +Hughes/M +Hugo/M +Huguenot/MS +Hui/M +Huitzilopotchli/M +Hull/M +Humberto/M +Humboldt/M +Hume/M +Hummel/M +Hummer/M +Humphrey/SM +Humvee/M +Hun/SM +Hunan/M +Hung/M +Hungarian/SM +Hungary/M +Hunspell/M +Hunt/MR +Hunter/M +Huntington/M +Huntley/M +Huntsville/M +Hurd/M +Hurley/M +Huron/M +Hurst/M +Hus/M +Hussein/M +Husserl/M +Hussite/M +Huston/M +Hutchinson/M +Hutton/M +Hutu/M +Huxley/M +Huygens/M +Hyades/M +Hyde/M +Hyderabad/M +Hydra/M +Hymen/M +Hyperion/M +Hyundai/M +Hz/M +I'd +I'll +I'm +I've +I/M +IA +IBM/M +ICBM/SM +ICC +ICU +ID/SM +IDE +IE +IED +IEEE +IKEA/M +IL +IMF/M +IMHO +IMNSHO +IMO +IN +ING/M +INRI +INS +IOU/M +IP +IPA +IPO +IQ/M +IRA/SM +IRC +IRS/M +ISBN +ISIS +ISO/M +ISP +ISS +IT +IUD +IV/SM +IVF +Ia +Iaccoca/M +Iago/M +Ian/M +Iapetus/M +Ibadan/M +Iberia/M +Iberian/M +Ibiza/M +Iblis/M +Ibo/M +Ibsen/M +Icahn/M +Icarus/M +Ice +Iceland/MRZ +Icelander/M +Icelandic/M +Ida/M +Idaho/SM +Idahoan/MS +Idahoes +Ieyasu/M +Ignacio/M +Ignatius/M +Igor/M +Iguassu/M +Ijsselmeer/M +Ike/M +Ikhnaton/M +Ila/M +Ilene/M +Iliad/SM +Ill +Illinois/M +Illinoisan/MS +Illuminati/M +Ilyushin/M +Imelda/M +Imhotep/M +Imodium/M +Imogene/M +Imus/M +In/M +Ina/M +Inc +Inca/SM +Inchon/M +Incorporated +Ind +Independence/M +India/M +Indian/MS +Indiana/M +Indianan/SM +Indianapolis/M +Indianian +Indies/M +Indira/M +Indochina/M +Indochinese/M +Indonesia/M +Indonesian/SM +Indore/M +Indra/M +Indus/M +Indy/SM +Ines/M +Inez/M +Inge/M +Inglewood +Ingram/M +Ingres/M +Ingrid/M +Innocent/M +Innsbruck +Inonu/M +Inquisition/M +Inst +Instagram/M +Instamatic/M +Intel/M +Intelsat/M +Internationale/M +Internet/SM +Interpol/M +Inuit/MS +Inuktitut/M +Invar/M +Io/M +Ionesco/M +Ionian/MS +Ionic/SM +Iowa/SM +Iowan/MS +Iphigenia/M +Ipswich +Iqaluit/M +Iqbal/M +Iquitos/M +Ir/M +Ira/M +Iran/M +Iranian/SM +Iraq/M +Iraqi/MS +Ireland/M +Irene/M +Iris/M +Irish/MR +Irishman/M +Irishmen/M +Irishwoman/M +Irishwomen/M +Irkutsk/M +Irma/M +Iroquoian/SM +Iroquois/M +Irrawaddy/M +Irtish/M +Irvin/M +Irvine/M +Irving/M +Irwin/M +Isaac/M +Isabel/M +Isabella/M +Isabelle/M +Isaiah/M +Iscariot/M +Isfahan/M +Isherwood/M +Ishim/M +Ishmael/M +Ishtar/M +Isiah/M +Isidro/M +Isis/M +Islam/MS +Islamabad/M +Islamic/M +Islamism/M +Islamist/M +Islamophobia +Islamophobic +Ismael/M +Ismail/M +Isolde/M +Ispell/M +Israel/SM +Israeli/SM +Israelite/M +Issac/M +Issachar/M +Istanbul/M +Isuzu/M +It +Itaipu/M +Ital +Italian/SM +Italianate +Italy/M +Itasca/M +Ithaca/M +Ithacan/M +Ito/M +Iva/M +Ivan/M +Ivanhoe/M +Ives/M +Ivorian +Ivory/M +Ivy/M +Iyar/M +Izaak/M +Izanagi/M +Izanami/M +Izhevsk/M +Izmir/M +Izod/M +Izvestia/M +J/MD +JCS +JD +JFK/M +JP +JPEG +JV +Jack/M +Jackie/M +Jacklyn/M +Jackson/M +Jacksonian/M +Jacksonville/M +Jacky/M +Jaclyn/M +Jacob/SM +Jacobean/M +Jacobi/M +Jacobin/M +Jacobite/M +Jacobs/M +Jacobson/M +Jacquard/M +Jacqueline/M +Jacquelyn/M +Jacques/M +Jacuzzi/M +Jagger/M +Jagiellon/M +Jaguar/M +Jahangir/M +Jaime/M +Jain/M +Jainism/M +Jaipur/M +Jakarta/M +Jake/M +Jamaal/M +Jamaica/M +Jamaican/SM +Jamal/M +Jamar/M +Jame/SM +Jamel/M +James/M +Jamestown/M +Jami/M +Jamie/M +Jan/M +Jana/M +Janacek/M +Jane/M +Janell/M +Janelle/M +Janet/M +Janette/M +Janice/M +Janie/M +Janine/M +Janis/M +Janissary/M +Janjaweed/M +Janna/M +Jannie/M +Jansen/M +Jansenist/M +January/SM +Janus/M +Jap/SM +Japan/M +Japanese/MS +Japura/M +Jared/M +Jarlsberg/M +Jarred/M +Jarrett/M +Jarrod/M +Jarvis/M +Jasmine/M +Jason/M +Jasper/M +Jataka/M +Java/SM +JavaScript/M +Javanese/M +Javier/M +Jaxartes/M +Jay/M +Jayapura/M +Jayawardene/M +Jaycee/MS +Jaycees/M +Jayne/M +Jayson/M +Jean/M +Jeanette/M +Jeanie/M +Jeanine/M +Jeanne/M +Jeannette/M +Jeannie/M +Jeannine/M +Jed/M +Jedi/M +Jeep/M +Jeeves/M +Jeff/M +Jefferey/M +Jefferson/M +Jeffersonian/M +Jeffery/M +Jeffrey/M +Jeffry/M +Jehoshaphat/M +Jehovah/M +Jekyll/M +Jenifer/M +Jenkins/M +Jenna/M +Jenner/M +Jennie/M +Jennifer/M +Jennings/M +Jenny/M +Jensen/M +Jephthah/M +Jerald/M +Jeremiah/M +Jeremiahs +Jeremy/M +Jeri/M +Jericho/M +Jermaine/M +Jeroboam/M +Jerold/M +Jerome/M +Jerri/M +Jerrod/M +Jerrold/M +Jerry/M +Jersey/MS +Jerusalem/M +Jess/M +Jesse/M +Jessica/M +Jessie/M +Jesuit/MS +Jesus/M +Jetway/M +Jew/SM +Jewel/M +Jewell/M +Jewess/MS +Jewish/PM +Jewry/M +Jezebel/SM +Jiangsu/M +Jiangxi/M +Jidda/M +Jilin/M +Jill/M +Jillian/M +Jim/M +Jimenez/M +Jimmie/M +Jimmy/M +Jinan/M +Jinnah/M +Jinny/M +Jivaro/M +Jo/M +Joan/M +Joann/M +Joanna/M +Joanne/M +Joaquin/M +Job/SM +Jobs/M +Jocasta/M +Jocelyn/M +Jock/M +Jockey/M +Jodi/M +Jodie/M +Jody/M +Joe/M +Joel/M +Joey/M +Jogjakarta/M +Johann/M +Johanna/M +Johannes/M +Johannesburg/M +John/SM +Johnathan/M +Johnathon/M +Johnie/M +Johnnie/M +Johnny/M +Johns/M +Johnson/M +Johnston/M +Jolene/M +Jolson/M +Jon/M +Jonah/M +Jonahs +Jonas/M +Jonathan/M +Jonathon/M +Jones/M +Joni/M +Jonson/M +Joplin/M +Jordan/M +Jordanian/MS +Jorge/M +Jose/M +Josef/M +Josefa/M +Josefina/M +Joseph/M +Josephine/M +Josephs +Josephson/M +Josephus/M +Josh/M +Joshua/M +Josiah/M +Josie/M +Josue/M +Joule/M +Jove/M +Jovian/M +Joy/M +Joyce/M +Joycean/M +Joyner/M +Jpn +Jr/M +Juan/M +Juana/M +Juanita/M +Juarez/M +Jubal/M +Judaeo +Judah/M +Judaic +Judaical +Judaism/MS +Judas/MS +Judd/M +Jude/M +Judea/M +Judges +Judith/M +Judson/M +Judy/M +Juggernaut/M +Jul +Jules/M +Julia/M +Julian/M +Juliana/M +Julianne/M +Julie/M +Juliet/M +Juliette/M +Julio/M +Julius/M +Julliard/M +July/SM +Jun/M +June/SM +Juneau/M +Jung/M +Jungfrau/M +Jungian/M +Junior/SM +Junker/SM +Juno/M +Jupiter/M +Jurassic/M +Jurua/M +Justice/M +Justin/M +Justine/M +Justinian/M +Jutland/M +Juvenal/M +K/SMNGJ +KB/M +KC +KFC/M +KGB/M +KIA +KKK/M +KO/M +KP +KS +KY +Kaaba/M +Kabul/M +Kafka/M +Kafkaesque/M +Kagoshima/M +Kahlua/M +Kaifeng/M +Kaiser/MS +Kaitlin/M +Kalahari/M +Kalamazoo/M +Kalashnikov/M +Kalb/M +Kalevala/M +Kalgoorlie/M +Kali/M +Kalmyk/M +Kama/M +Kamchatka/M +Kamehameha/M +Kampala/M +Kampuchea/M +Kan/SM +Kanchenjunga/M +Kandahar/M +Kandinsky/M +Kane/M +Kannada/M +Kano/M +Kanpur/M +Kansan/MS +Kansas/M +Kant/M +Kantian/M +Kaohsiung/M +Kaposi/M +Kara/M +Karachi/M +Karaganda/M +Karakorum/M +Karamazov/M +Kareem/M +Karen/M +Karenina/M +Kari/M +Karin/M +Karina/M +Karl/M +Karla/M +Karloff/M +Karo/M +Karol/M +Karroo/M +Karyn/M +Kasai/M +Kasey/M +Kashmir/SM +Kasparov/M +Kate/M +Katelyn/M +Katharine/M +Katherine/M +Katheryn/M +Kathiawar/M +Kathie/M +Kathleen/M +Kathmandu/M +Kathrine/M +Kathryn/M +Kathy/M +Katie/M +Katina/M +Katmai/M +Katowice/M +Katrina/M +Katy/M +Kauai/M +Kaufman/M +Kaunas/M +Kaunda/M +Kawabata/M +Kawasaki/M +Kay/M +Kaye/M +Kayla/M +Kazakh/M +Kazakhs +Kazakhstan/M +Kazan/M +Kazantzakis/M +Kb/M +Keaton/M +Keats/M +Keck/M +Keenan/M +Keewatin/M +Keillor/M +Keisha/M +Keith/M +Keller/M +Kelley/M +Kelli/M +Kellie/M +Kellogg/M +Kelly/M +Kelsey/M +Kelvin/M +Kemerovo/M +Kemp/M +Kempis/M +Ken/M +Kendall/M +Kendra/M +Kendrick/M +Kenmore/M +Kennan/M +Kennedy/M +Kenneth/M +Kennith/M +Kenny/M +Kent/M +Kenton/M +Kentuckian/MS +Kentucky/M +Kenya/M +Kenyan/SM +Kenyatta/M +Kenyon/M +Keogh/M +Keokuk/M +Kepler/M +Kerensky/M +Keri/M +Kermit/M +Kern/M +Kerouac/M +Kerr/M +Kerri/M +Kerry/M +Kettering/M +Keven/M +Kevin/M +Kevlar/M +Kevorkian/M +Kewpie/M +Key/M +Keynes/M +Keynesian/M +Khabarovsk/M +Khachaturian/M +Khalid/M +Khan/M +Kharkov/M +Khartoum/M +Khayyam/M +Khazar/M +Khmer/M +Khoikhoi/M +Khoisan/M +Khomeini/M +Khorana/M +Khrushchev/M +Khufu/M +Khulna/M +Khwarizmi/M +Khyber/M +Kickapoo/M +Kidd/M +Kiel/M +Kierkegaard/M +Kieth/M +Kiev/M +Kigali/M +Kikuyu/M +Kilauea/M +Kilimanjaro/M +Kilroy/M +Kim/M +Kimberley/M +Kimberly/M +King/M +Kingston/M +Kingstown/M +Kinko's +Kinney/M +Kinsey/M +Kinshasa/M +Kiowa/MS +Kip/M +Kipling/M +Kirby/M +Kirchhoff/M +Kirchner/M +Kirghistan/M +Kirghiz/M +Kirghizia/M +Kiribati/M +Kirinyaga/M +Kirk/M +Kirkland/M +Kirkpatrick/M +Kirov/M +Kirsten/M +Kisangani/M +Kishinev/M +Kislev/M +Kissinger/M +Kit/M +Kitakyushu/M +Kitchener/M +Kitty/M +Kiwanis/M +Klan/M +Klansman/M +Klaus/M +Klee/M +Kleenex/MS +Klein/M +Klimt/M +Kline/M +Klingon/M +Klondike/MS +Kmart/M +Knapp/M +Knesset/M +Kngwarreye/M +Knickerbocker/M +Knievel/M +Knight/M +Knopf/M +Knossos/M +Knowles/M +Knox/M +Knoxville/M +Knudsen/M +Knuth/M +Knuths +Kobe/M +Koch/M +Kochab/M +Kodachrome/M +Kodak/M +Kodaly/M +Kodiak/M +Koestler/M +Kohinoor/M +Kohl/M +Koizumi/M +Kojak/M +Kolyma/M +Kommunizma/M +Kong/M +Kongo/M +Konrad/M +Koontz/M +Koppel/M +Koran/MS +Koranic +Korea/M +Korean/SM +Kornberg/M +Kory/M +Korzybski/M +Kosciusko/M +Kossuth/M +Kosygin/M +Kotlin/M +Koufax/M +Kowloon/M +Kr/M +Kraft/M +Krakatoa/M +Krakow/M +Kramer/M +Krasnodar/M +Krasnoyarsk/M +Krebs/M +Kremlin/M +Kremlinologist +Kremlinology +Kresge/M +Kringle/M +Kris/M +Krishna/M +Krishnamurti/M +Krista/M +Kristen/M +Kristi/M +Kristie/M +Kristin/M +Kristina/M +Kristine/M +Kristopher/M +Kristy/M +Kroc/M +Kroger/M +Kronecker/M +Kropotkin/M +Kruger/M +Krugerrand/M +Krupp/M +Krystal/M +Kshatriya/M +Kublai/M +Kubrick/M +Kuhn/M +Kuibyshev/M +Kulthumm/M +Kunming/M +Kuomintang/M +Kurd/M +Kurdish/M +Kurdistan/M +Kurosawa/M +Kurt/M +Kurtis/M +Kusch/M +Kutuzov/M +Kuwait/M +Kuwaiti/SM +Kuznets/M +Kuznetsk/M +Kwakiutl/M +Kwan/M +Kwangju/M +Kwanzaa/MS +Ky/MH +Kyle/M +Kyoto/M +Kyrgyzstan/M +Kyushu/M +L'Amour/M +L'Enfant +L'Oreal/M +L'Ouverture/M +L/MN +LA +LAN/M +LBJ/M +LC +LCD/M +LCM +LDC +LED/M +LG/M +LGBT +LIFO +LL +LLB/M +LLD/M +LNG +LOGO +LP/M +LPG +LPN/SM +LSAT +LSD/M +LVN +La/SM +Lab +Laban/M +Labrador/SM +Labradorean +Lacey/M +Lachesis/M +Lactobacillus +Lacy/M +Ladoga/M +Ladonna/M +Lady/M +Ladyship/MS +Lafayette/M +Lafitte/M +Lagos/M +Lagrange/M +Lagrangian/M +Lahore/M +Laius/M +Lajos/M +Lakeisha/M +Lakewood +Lakisha/M +Lakota/M +Lakshmi/M +Lamaism/SM +Lamar/M +Lamarck/M +Lamaze/M +Lamb/M +Lambert/M +Lamborghini/M +Lambrusco/M +Lamentations +Lamont/M +Lana/M +Lanai/M +Lancashire/M +Lancaster/M +Lance/M +Lancelot/M +Land/M +Landon/M +Landry/M +Landsat/M +Landsteiner/M +Lane/M +Lang/M +Langerhans/M +Langland/M +Langley/M +Langmuir/M +Lanka/M +Lankan/M +Lanny/M +Lansing/M +Lanzhou/M +Lao/SM +Laocoon/M +Laos/M +Laotian/SM +Laplace/M +Laplacian +Lapland/MR +Lapp/SM +Lara/M +Laramie/M +Lardner/M +Laredo/M +Larousse/M +Larry/M +Lars/MN +Larsen/M +Larson/M +Lascaux/M +Lassa/M +Lassen/M +Lassie/M +Lat/M +Latasha/M +Lateran/M +Latham/M +Latin/MRS +Latina +Latino/SM +Latinx +Latisha/M +Latonya/M +Latoya/M +Latrobe/M +Latvia/M +Latvian/MS +Laud/MR +Lauder/M +Laue/M +Laundromat/M +Laura/M +Laurasia/M +Laurel/M +Lauren/M +Laurence/M +Laurent/M +Lauri/M +Laurie/M +Laval/M +Lavern/M +Laverne/M +Lavoisier/M +Lavonne/M +Lawanda/M +Lawrence/M +Lawson/M +Layamon/M +Layla/M +Lazaro/M +Lazarus/M +Le/SM +Lea/M +Leach/M +Leadbelly/M +Leah/M +Leakey/M +Lean/M +Leander/M +Leann/M +Leanna/M +Leanne/M +Lear/M +Learjet/M +Leary/M +Leavenworth/M +Lebanese/M +Lebanon/M +Lebesgue/M +Leblanc/M +Leda/M +Lederberg/M +Lee/M +Leeds/M +Leeuwenhoek/M +Leeward/M +Left +Legendre/M +Leger/M +Leghorn/M +Lego/M +Legree/M +Lehman/M +Leibniz/M +Leicester/SM +Leiden/M +Leif/M +Leigh/M +Leila/M +Leipzig/M +Lela/M +Leland/M +Lelia/M +Lemaitre/M +Lemuel/M +Lemuria/M +Len/M +Lena/M +Lenard/M +Lenin/M +Leningrad/M +Leninism/M +Leninist/M +Lennon/M +Lenny/M +Leno/M +Lenoir/M +Lenora/M +Lenore/M +Lent/SMN +Lenten/M +Leo/SM +Leola/M +Leon/M +Leona/M +Leonard/M +Leonardo/M +Leoncavallo/M +Leonel/M +Leonid/M +Leonidas/M +Leonor/M +Leopold/M +Leopoldo/M +Lepidus/M +Lepke/M +Lepus/M +Lerner/M +Leroy/M +Les/M +Lesa/M +Lesley/M +Leslie/M +Lesotho/M +Lesseps/M +Lessie/M +Lester/M +Lestrade/M +Leta/M +Letha/M +Lethe/M +Leticia/M +Letitia/M +Letterman/M +Levant/M +Levesque/M +Levi/SM +Leviathan/M +Levine/M +Leviticus/M +Levitt/M +Levy/M +Lew/M +Lewinsky/M +Lewis/M +Lexington/M +Lexus/M +Lhasa/MS +Lhotse/M +Li/MY +Liaoning/M +Libby/M +Liberace/M +Liberal +Liberia/M +Liberian/SM +Libra/MS +LibreOffice/M +Libreville/M +Librium/M +Libya/M +Libyan/SM +Lichtenstein/M +Lidia/M +Lie/M +Lieberman/M +Liebfraumilch/M +Liechtenstein/ZMR +Liechtensteiner/M +Liege/M +Lieut +Lila/M +Lilia/M +Lilian/M +Liliana/M +Lilith/M +Liliuokalani/M +Lille/M +Lillian/M +Lillie/M +Lilliput/M +Lilliputian/MS +Lilly/M +Lilongwe/M +Lily/M +Lima/M +Limbaugh/M +Limbo +Limburger/M +Limoges/M +Limousin/M +Limpopo/M +Lin/M +Lina/M +Lincoln/MS +Lind/M +Linda/M +Lindbergh/M +Lindsay/M +Lindsey/M +Lindy/M +Linnaeus/M +Linotype/M +Linton/M +Linus/M +Linux/MS +Linwood/M +Lionel/M +Lipizzaner/M +Lippi/M +Lippmann/M +Lipscomb/M +Lipton/M +Lisa/M +Lisbon/M +Lissajous/M +Lister/M +Listerine/M +Liston/M +Liszt/M +Lithuania/M +Lithuanian/MS +Little/M +Litton/M +Liverpool/M +Liverpudlian/SM +Livia/M +Livingston/M +Livingstone/M +Livonia/M +Livy/M +Liz/M +Liza/M +Lizzie/M +Lizzy/M +Ljubljana/M +Llewellyn/M +Lloyd/M +Ln +Loafer/SM +Lobachevsky/M +Lochinvar/M +Locke/M +Lockean/M +Lockheed/M +Lockwood/M +Lodge/M +Lodz/M +Loewe/M +Loewi/M +Loews/M +Logan/M +Lohengrin/M +Loire/M +Lois/M +Loki/M +Lola/M +Lolita/M +Lollard/M +Lollobrigida/M +Lombard/M +Lombardi/M +Lombardy/M +Lome/M +Lon/M +London/MRZ +Londoner/M +Long/M +Longfellow/M +Longstreet/M +Longueuil +Lonnie/M +Lopez/M +Lora/M +Loraine/M +Lord/SM +Lordship/SM +Lorelei/M +Loren/M +Lorena/M +Lorene/M +Lorentz/M +Lorentzian +Lorenz/M +Lorenzo/M +Loretta/M +Lori/M +Lorie/M +Lorna/M +Lorraine/M +Lorre/M +Lorrie/M +Los +Lot/M +Lothario/SM +Lott/M +Lottie/M +Lou/M +Louella/M +Louie/M +Louis/M +Louisa/M +Louise/M +Louisiana/M +Louisianan/MS +Louisianian/MS +Louisville/M +Lourdes/M +Louvre/M +Love/M +Lovecraft/M +Lovelace/M +Lowe/M +Lowell/M +Lowenbrau/M +Lowery/M +Lowlands +Loyang/M +Loyd/M +Loyola/M +Lr +Lt +Ltd +Lu/M +Luanda/M +Luann/M +Lubavitcher/M +Lubbock/M +Lubumbashi/M +Lucas/M +Luce/M +Lucia/M +Lucian/M +Luciano/M +Lucien/M +Lucifer/M +Lucile/M +Lucille/M +Lucinda/M +Lucio/M +Lucite/SM +Lucius/M +Lucknow/M +Lucretia/M +Lucretius/M +Lucy/M +Luddite/MS +Ludhiana/M +Ludwig/M +Luella/M +Lufthansa/M +Luftwaffe/M +Luger/M +Lugosi/M +Luigi/M +Luis/M +Luisa/M +Luke/M +Lula/M +Lully/M +Lulu/M +Lumiere/M +Luna/M +Lupe/M +Lupercalia/M +Lupus/M +Luria/M +Lusaka/M +Lusitania/M +Luther/M +Lutheran/SM +Lutheranism/MS +Luvs/M +Luxembourg/ZMR +Luxembourger/M +Luxembourgian +Luz/M +Luzon/M +Lvov/M +LyX/M +Lyallpur +Lycra/M +Lycurgus/M +Lydia/M +Lydian/SM +Lyell/M +Lyle/M +Lyly/M +Lyman/M +Lyme/M +Lynch/M +Lynda/M +Lyndon/M +Lynette/M +Lynn/M +Lynne/M +Lynnette/M +Lyon/SM +Lyons/M +Lyra/M +Lysenko/M +Lysistrata/M +Lysol/M +M/SMGB +MA/M +MASH +MB/M +MBA/M +MC +MCI/M +MD/M +MDT +ME +MEGO/S +MFA/M +MGM/M +MHz +MI/M +MIA +MIDI/M +MIPS +MIRV +MIT/M +MM +MN +MO +MOOC +MP/M +MPEG +MRI/M +MS/M +MSG/M +MST/M +MSW +MT/M +MTV/M +MVP/M +MW +Maalox/M +Mabel/M +Mable/M +Mac/M +MacArthur/M +MacBride/M +MacDonald/M +MacLeish/M +Macao/M +Macaulay/M +Macbeth/M +Maccabees +Maccabeus/M +Mace/M +Macedon/M +Macedonia/M +Macedonian/SM +Mach/M +Machiavelli/M +Machiavellian/M +Macias/M +Macintosh/M +Mack/M +Mackenzie/M +Mackinac/M +Mackinaw/M +Macmillan/M +Macon/M +Macumba/M +Macy/M +Madagascan/SM +Madagascar/M +Madam +Madden/M +Maddox/M +Madeira/SM +Madeleine/M +Madeline/M +Madelyn/M +Madge/M +Madison/M +Madonna/SM +Madras/M +Madrid/M +Madurai/M +Mae/M +Maeterlinck/M +Mafia/MS +Mafioso/M +Magdalena/M +Magdalene/M +Magellan/M +Magellanic/M +Maggie/M +Maghreb/M +Magi +Maginot/M +Magnificat +Magnitogorsk/M +Magog/M +Magoo/M +Magritte/M +Magsaysay/M +Magus +Magyar/SM +Mahabharata/M +Maharashtra/M +Mahavira/M +Mahayana/M +Mahayanist/M +Mahdi/M +Mahfouz/M +Mahican/SM +Mahler/M +Mai/M +Maidenform/M +Maigret/M +Mailer/M +Maillol/M +Maiman/M +Maimonides/M +Maine/MZR +Mainer/M +Maisie/M +Maitreya/M +Maj +Majesty +Major/M +Majorca/M +Majuro/M +Makarios/M +Maker/M +Malabar/M +Malabo/M +Malacca/M +Malachi/M +Malagasy/M +Malamud/M +Malaprop/M +Malawi/M +Malawian/SM +Malay/MS +Malaya/M +Malayalam/M +Malayan/MS +Malaysia/M +Malaysian/MS +Malcolm/M +Maldive/MS +Maldives/M +Maldivian/MS +Maldonado/M +Male/M +Mali/M +Malian/SM +Malibu/M +Malinda/M +Malinowski/M +Mallarme/M +Mallomars/M +Mallory/M +Malone/M +Malory/M +Malplaquet/M +Malraux/M +Malta/M +Maltese/M +Malthus/M +Malthusian/SM +Mameluke/M +Mamet/M +Mamie/M +Mamore/M +Man/M +Managua/M +Manama/M +Manasseh/M +Manchester/M +Manchu/SM +Manchuria/M +Manchurian/M +Mancini/M +Mancunian/MS +Mandalay/M +Mandarin/M +Mandela/M +Mandelbrot/M +Mandingo/M +Mandrell/M +Mandy/M +Manet/M +Manfred/M +Manhattan/SM +Mani/M +Manichean/M +Manilas +Manilla/M +Manitoba/M +Manitoulin/M +Manley/M +Mann/GM +Mannheim/M +Manning/M +Mansfield/M +Manson/M +Mantegna/M +Mantle/M +Manuel/M +Manuela/M +Manx/M +Mao/M +Maoism/SM +Maoist/SM +Maori/MS +Mapplethorpe/M +Maputo/M +Mar/SM +Mara/M +Maracaibo/M +Marat/M +Maratha/M +Marathi/M +Marathon/M +Marc/M +Marceau/M +Marcel/M +Marcelino/M +Marcella/M +Marcelo/M +March/MS +Marci/M +Marcia/M +Marciano/M +Marcie/M +Marco/MS +Marconi/M +Marcos/M +Marcus/M +Marcuse +Marcy/M +Marduk/M +Margaret/M +Margarita/M +Margarito/M +Marge/M +Margery/M +Margie/M +Margo/M +Margot +Margret/M +Margrethe/M +Marguerite/M +Mari/SM +Maria/M +MariaDB/M +Marian/M +Mariana/SM +Marianas/M +Marianne/M +Mariano/M +Maribel/M +Maricela/M +Marie/M +Marietta/M +Marilyn/M +Marin/M +Marina/M +Marine/SM +Mario/M +Marion/M +Maris/M +Marisa/M +Marisol/M +Marissa/M +Maritain/M +Maritza/M +Mariupol +Marius/M +Marjorie/M +Marjory/M +Mark/SM +Markab/M +Markham/M +Markov/M +Marks/M +Marla/M +Marlboro/M +Marlborough/M +Marlene/M +Marley/M +Marlin/M +Marlon/M +Marlowe/M +Marmara/M +Marne/M +Maronite/M +Marple/M +Marquesas/M +Marquette/M +Marquez/M +Marquis/M +Marquita/M +Marrakesh/M +Marriott/M +Mars/MS +Marsala/M +Marseillaise/MS +Marseilles/M +Marsh/M +Marsha/M +Marshall/M +Marta/M +Martel/M +Martha/M +Martial/M +Martian/SM +Martin/M +Martina/M +Martinez/M +Martinique/M +Marty/M +Marva/M +Marvell/M +Marvin/M +Marx/M +Marxian +Marxism/SM +Marxist/SM +Mary/M +Maryann/M +Maryanne/M +Maryellen/M +Maryland/MR +Marylander/M +Marylou/M +Masada/M +Masai/M +Masaryk/M +Mascagni/M +Masefield/M +Maserati/M +Maseru/M +Mashhad/M +Mason/MS +Masonic/M +Masonite/M +Mass/MS +Massachusetts/M +Massasoit/M +Massenet/M +Massey/M +Master/S +MasterCard/M +Masters/M +Mather/M +Matheson/M +Mathew/SM +Mathews/M +Mathewson/M +Mathias/M +Mathis/M +Matilda/M +Matisse/M +Matlab/M +Matt/M +Mattel/M +Matterhorn/M +Matthew/SM +Matthews/M +Matthias/M +Mattie/M +Maud/M +Maude/M +Maugham/M +Maui/M +Maupassant/M +Maura/M +Maureen/M +Mauriac/M +Maurice/M +Mauricio/M +Maurine/M +Mauritania/M +Mauritanian/SM +Mauritian/SM +Mauritius/M +Mauro/M +Maurois/M +Mauryan/M +Mauser/M +Mavis/M +Max/M +Maximilian/M +Maxine/M +Maxwell/M +May/SMR +Maya/SM +Mayan/MS +Mayer/M +Mayfair/M +Mayflower/M +Maynard/M +Mayo/M +Maypole +Mayra/M +Mays/M +Maytag/M +Mazama/M +Mazarin/M +Mazatlan/M +Mazda/M +Mazola/M +Mazzini/M +Mb/M +Mbabane/M +Mbini/M +McAdam/M +McBride/M +McCain/M +McCall/M +McCarthy/M +McCarthyism/M +McCartney/M +McCarty/M +McClain/M +McClellan/M +McClure/M +McConnell/M +McCormick/M +McCoy/M +McCray/M +McCullough/M +McDaniel/M +McDonald/M +McDonnell/M +McDowell/M +McEnroe/M +McFadden/M +McFarland/M +McGee/M +McGovern/M +McGowan/M +McGuffey/M +McGuire/M +McIntosh/M +McIntyre/M +McJob +McKay/M +McKee/M +McKenzie/M +McKinley/M +McKinney/M +McKnight/M +McLaughlin/M +McLean/M +McLeod/M +McLuhan/M +McMahon/M +McMillan/M +McNamara/M +McNaughton/M +McNeil/M +McPherson/M +McQueen/M +McVeigh/M +Md/M +Me +Mead/M +Meade/M +Meadows/M +Meagan/M +Meany/M +Mecca/MS +Medan/M +Medea/M +Medellin/M +Media/M +Medicaid/SM +Medicare/SM +Medici/M +Medina/M +Mediterranean/MS +Medusa/M +Meg/M +Megan/M +Meghan/M +Meier/M +Meighen/M +Meiji/M +Meir/M +Mejia/M +Mekong/M +Mel/M +Melanesia/M +Melanesian/M +Melanie/M +Melba/M +Melbourne/M +Melchior/M +Melchizedek/M +Melendez/M +Melinda/M +Melisa/M +Melisande/M +Melissa/M +Mellon/M +Melody/M +Melpomene/M +Melton/M +Melva/M +Melville/M +Melvin/M +Memcached/M +Memling/M +Memphis/M +Menander/M +Mencius/M +Mencken/M +Mendel/M +Mendeleev/M +Mendelian/M +Mendelssohn/M +Mendez/M +Mendocino/M +Mendoza/M +Menelaus/M +Menelik/M +Menes/M +Mengzi +Menkalinan/M +Menkar/M +Menkent/M +Mennen/M +Mennonite/MS +Menominee/M +Menotti/M +Mensa/M +Mentholatum/M +Menuhin/M +Menzies/M +Mephisto +Mephistopheles/M +Merak/M +Mercado/M +Mercator/M +Mercedes/M +Mercer/M +Mercia/M +Merck/M +Mercurochrome/M +Mercury/SM +Meredith/M +Merino/M +Merle/M +Merlin/M +Merlot/M +Merovingian/M +Merriam/M +Merrick/M +Merrill/M +Merrimack/M +Merritt/M +Merthiolate/M +Merton/M +Mervin/M +Mesa/M +Mesabi/M +Mesmer/M +Mesolithic/M +Mesopotamia/M +Mesopotamian +Mesozoic/M +Messerschmidt/M +Messiaen/M +Messiah/M +Messiahs +Messianic +Messieurs +Metallica/M +Metamucil/M +Methodism/SM +Methodist/SM +Methuselah/M +Metternich/M +Meuse/M +Mex +Mexicali/M +Mexican/MS +Mexico/M +Meyer/MS +Meyerbeer/M +Meyers/M +Mfume/M +Mg/M +Mgr +MiG/M +Mia/M +Miami/MS +Miaplacidus/M +Micah/M +Micawber/M +Mich/M +Michael/M +Michaelmas/MS +Micheal/M +Michel/M +Michelangelo/M +Michele/M +Michelin/M +Michelle/M +Michelob/M +Michelson/M +Michigan/M +Michigander/MS +Michiganite +Mick/M +Mickey/M +Mickie/M +Micky/M +Micmac/SM +Micronesia/M +Micronesian/M +Microsoft/M +Midas/M +Middleton/M +Mideast +Mideastern +Midland/MS +Midway/M +Midwest/M +Midwestern/MR +Miguel/M +Mike/M +Mikhail/M +Mikoyan/M +Milagros/M +Milan/M +Milanese +Mildred/M +Miles/M +Milford/M +Milken/M +Mill/SMR +Millard/M +Millay/M +Miller/M +Millet/M +Millicent/M +Millie/M +Millikan/M +Mills/M +Milne/M +Milo/M +Milosevic/M +Milquetoast/M +Miltiades/M +Milton/M +Miltonian +Miltonic/M +Miltown/M +Milwaukee/M +Mimi/M +Mimosa/M +Min/M +Minamoto/M +Mindanao/M +Mindoro/M +Mindy/M +Minerva/M +Ming/M +Mingus/M +Minn +Minneapolis/M +Minnelli/M +Minnesota/M +Minnesotan/SM +Minnie/M +Minoan/MS +Minolta/M +Minos/M +Minot/M +Minotaur/M +Minsk/M +Minsky/M +Mintaka/M +Minuit/M +Minuteman/M +Miocene/M +Mir/M +Mira/M +Mirabeau/M +Mirach/M +Miranda/M +Mirfak/M +Miriam/M +Miro/M +Mirzam/M +Miskito/M +Miss +Mississauga/M +Mississippi/M +Mississippian/SM +Missouri/M +Missourian/MS +Missy/M +Mistassini/M +Mister +Mistress +Misty/M +Mitch/M +Mitchel/M +Mitchell/M +Mitford/M +Mithra/M +Mithridates/M +Mitsubishi/M +Mitterrand/M +Mitty/M +Mitzi/M +Mixtec/M +Mizar/M +Mk +Mlle +Mme/S +Mn/M +Mnemosyne/M +Mo/M +Mobil/M +Mobile/M +Mobutu/M +Modesto/M +Modigliani/M +Moe/M +Moet/M +Mogadishu/M +Mogul/MS +Mohacs/M +Mohamed/M +Mohammad/M +Mohammedan/SM +Mohammedanism/SM +Mohave/SM +Mohawk/SM +Mohegan +Moho/M +Mohorovicic/M +Moira/M +Moises/M +Moiseyev/M +Mojave/SM +Moldavia/M +Moldavian +Moldova/M +Moldovan +Moliere/M +Molina/M +Moll/M +Mollie/M +Molly/M +Molnar/M +Moloch/M +Molokai/M +Molotov/M +Moluccas/M +Mombasa/M +Mon/SM +Mona/M +Monacan +Monaco/M +Mondale/M +Monday/SM +Mondrian/M +Monegasque/SM +Monera/M +Monet/M +MongoDB/M +Mongol/SM +Mongolia/M +Mongolian/SM +Mongolic/M +Mongoloid +Monica/M +Monique/M +Monk/M +Monmouth/M +Monongahela/M +Monroe/M +Monrovia/M +Monsanto/M +Monsieur/M +Monsignor/SM +Mont/M +Montague/M +Montaigne/M +Montana/M +Montanan/SM +Montcalm/M +Monte/M +Montenegrin/M +Montenegro/M +Monterrey/M +Montesquieu/M +Montessori/M +Monteverdi/M +Montevideo/M +Montezuma/M +Montgolfier/M +Montgomery/M +Monticello/M +Montoya/M +Montpelier/M +Montrachet/M +Montreal/M +Montserrat/M +Monty/M +Moody/M +Moog/M +Moon/M +Mooney/M +Moor/SM +Moore/M +Moorish/M +Morales/M +Moran/M +Moravia/M +Moravian/M +Mordred/M +More/M +Moreno/M +Morgan/SM +Moriarty/M +Morin/M +Morison/M +Morita/M +Morley/M +Mormon/SM +Mormonism/SM +Moro/M +Moroccan/SM +Morocco/M +Moroni/M +Morpheus/M +Morphy/M +Morris/M +Morrison/M +Morrow/M +Morse/M +Mort/M +Mortimer/M +Morton/M +Mosaic/M +Moscow/M +Moseley/M +Moselle/M +Moses/M +Mosley/M +Moss/M +Mosul/M +Motorola/M +Motown/M +Motrin/M +Mott/M +Moulton/M +Mount/M +Mountbatten/M +Mountie/MS +Moussorgsky/M +Mouthe/M +Mouton/M +Mowgli/M +Mozambican/SM +Mozambique/M +Mozart/M +Mozilla/M +Mr/SM +Ms/S +Msgr +Mt +Muawiya/M +Mubarak/M +Mueller/M +Muenster/MS +Mugabe/M +Muhammad/M +Muhammadan/MS +Muhammadanism/SM +Muir/M +Mujib/M +Mulder/M +Mullen/M +Muller/M +Mulligan/M +Mullikan/M +Mullins/M +Mulroney/M +Multan/M +Multics +Mumbai/M +Mumford/M +Munch/M +Munchhausen/M +Munich/M +Munoz/M +Munro/M +Munster/M +Muppet/M +Murasaki/M +Murat/M +Murchison/M +Murcia +Murdoch/M +Muriel/M +Murillo/M +Murine/M +Murmansk/M +Murphy/M +Murray/M +Murrow/M +Murrumbidgee/M +Muscat/M +Muscovite/M +Muscovy/M +Muse/M +Musharraf/M +Musial/M +Muskogee/M +Muslim/MS +Mussolini/M +Mussorgsky/M +Mutsuhito/M +Muzak/M +MySQL/M +MySpace/M +Myanmar/M +Mycenae/M +Mycenaean/M +Myers/M +Mylar/MS +Myles/M +Myra/M +Myrdal/M +Myrna/M +Myron/M +Myrtle/M +Mysore/M +Myst/M +N'Djamena +N/MD +NAACP/M +NAFTA/M +NASA/M +NASCAR/M +NASDAQ/M +NATO/M +NB +NBA/M +NBC/M +NBS +NC +NCAA/M +NCO +ND +NE/M +NEH +NF +NFC +NFL/M +NH +NHL/M +NIH +NIMBY +NJ +NLRB +NM +NORAD/M +NOW +NP +NPR/M +NR +NRA +NRC +NS +NSA/M +NSC +NSF +NSFW +NT +NV +NVIDIA/M +NW/M +NWT +NY +NYC +NYSE +NZ +Na/M +Nabisco/M +Nabokov/M +Nader/M +Nadia/M +Nadine/M +Nagasaki/M +Nagoya/M +Nagpur/M +Nagy/M +Nahuatl/MS +Nahum/M +Naipaul/M +Nair/M +Nairobi/M +Naismith/M +Nam/M +Namath/M +Namibia/M +Namibian/MS +Nan/M +Nanak/M +Nanchang/M +Nancy/M +Nanette/M +Nanjing/M +Nannie/M +Nanook/M +Nansen/M +Nantes/M +Nantucket/M +Naomi/M +Naphtali/M +Napier/M +Naples/M +Napoleon/MS +Napoleonic/M +Napster/M +Narcissus/M +Narmada/M +Narnia/M +Narraganset +Narragansett/M +Nash/M +Nashua/M +Nashville/M +Nassau/M +Nasser/M +Nat/M +Natalia/M +Natalie/M +Natasha/M +Natchez/M +Nate/MN +Nathan/SM +Nathaniel/M +Nathans/M +Nation/M +Nationwide/M +Nativity/M +Naugahyde/M +Nauru/M +Nautilus/M +Navajo/SM +Navajoes +Navarre/M +Navarro/M +Navratilova/M +Navy +Nazarene/M +Nazareth/M +Nazca/M +Nazi/SM +Nazism/MS +Nb/M +Nd/M +Ndjamena/M +Ne/M +NeWS +NeWSes +Neal/M +Neanderthal/SM +Neapolitan/M +Neb +Nebr +Nebraska/M +Nebraskan/MS +Nebuchadnezzar/M +Ned/M +Nefertiti/M +Negev/M +Negress/MS +Negritude +Negro/MS +Negroes +Negroid/SM +Negros/M +Nehemiah/M +Nehru/M +Neil/M +Nelda/M +Nell/M +Nellie/M +Nelly/M +Nelsen/M +Nelson/M +Nembutal/M +Nemesis/M +Neo/M +Neogene/M +Neolithic +Nepal/M +Nepalese/M +Nepali/MS +Neptune/M +Nereid/M +Nerf/M +Nero/M +Neruda/M +Nescafe/M +Nesselrode/M +Nestle/M +Nestor/M +Nestorius/M +Netflix/M +Netherlander/SM +Netherlands/M +Netscape/M +Nettie/M +Netzahualcoyotl/M +Nev/M +Neva/M +Nevada/M +Nevadan/SM +Nevadian +Nevis/M +Nevsky/M +Newark/M +Newcastle/M +Newfoundland/MRS +Newman/M +Newport/M +Newsweek/M +Newton/M +Newtonian/M +Nexis/M +Ngaliema/M +Nguyen/M +Ni/M +Niagara/M +Niamey/M +Nibelung/M +Nicaea/M +Nicaragua/M +Nicaraguan/SM +Niccolo/M +Nice/M +Nicene/M +Nichiren/M +Nicholas/M +Nichole/M +Nichols/M +Nicholson/M +Nick/M +Nickelodeon/M +Nicklaus/M +Nickolas/M +Nicobar/M +Nicodemus/M +Nicola/SM +Nicolas/M +Nicole/M +Nicosia/M +Niebuhr/M +Nielsen/M +Nietzsche/M +Nieves/M +Nigel/M +Niger/M +Nigeria/M +Nigerian/MS +Nigerien/M +Nightingale/M +Nijinsky/M +Nike/M +Nikita/M +Nikkei/M +Nikki/M +Nikolai/M +Nikon/M +Nile/M +Nimitz/M +Nimrod/M +Nina/M +Nineveh/M +Nintendo/M +Niobe/M +Nippon/M +Nipponese/M +Nirenberg/M +Nirvana/M +Nisan/M +Nisei/M +Nissan/M +Nita/M +Nivea/M +Nixon/M +Nkrumah/M +No/SM +NoDoz/M +Noah/M +Nobel/M +Nobelist/MS +Noble/M +Noe/M +Noel/SM +Noelle/M +Noemi/M +Nokia/M +Nola/M +Nolan/M +Nome/M +Nona/M +Nootka/M +Nora/M +Norbert/M +Norberto/M +Nordic/MS +Noreen/M +Norfolk/M +Noriega/M +Norma/M +Norman/MS +Normand/M +Normandy/M +Norplant/M +Norris/M +Norse/M +Norseman/M +Norsemen/M +North/M +Northampton/M +Northeast/MS +Northerner/M +Northrop/M +Northrup/M +Norths +Northwest/SM +Norton/M +Norw +Norway/M +Norwegian/SM +Norwich/M +Nosferatu/M +Nostradamus/M +Nottingham/M +Nouakchott/M +Noumea/M +Nov/M +Nova/M +Novartis/M +November/MS +Novgorod/M +Novocain/MS +Novocaine +Novokuznetsk/M +Novosibirsk/M +Noxzema/M +Noyce/M +Noyes/M +Np/M +Nubia/M +Nubian/M +Nukualofa/M +Numbers/M +Nunavut/M +Nunez/M +Nunki/M +Nuremberg/M +Nureyev/M +NutraSweet/M +NyQuil/M +Nyasa/M +Nyerere/M +O'Brien/M +O'Casey/M +O'Connell/M +O'Connor/M +O'Donnell/M +O'Hara/M +O'Higgins/M +O'Keeffe/M +O'Neil/M +O'Neill/M +O'Rourke/M +O'Toole/M +O/SM +OAS/M +OB +OCR +OD/SM +OE +OED +OH +OHSA/M +OJ +OK/SMDG +OMB/M +ON +OPEC/M +OR +OS/M +OSHA/M +OSes +OT +OTB +OTC +OTOH +Oahu/M +Oakland/M +Oakley/M +Oates/M +Oaxaca/M +Ob/M +Obadiah/M +Obama/M +Obamacare +Oberlin/M +Oberon/M +Ocaml/M +Occam/M +Occident +Occidental/MS +Oceania/M +Oceanside +Oceanus/M +Ochoa/M +Oct/M +Octavia/M +Octavian/M +Octavio/M +October/SM +Odell/M +Oder/M +Odessa/M +Odets/M +Odin/M +Odis/M +Odom/M +Odysseus/M +Odyssey/M +Oedipal/M +Oedipus/M +Oersted/M +Ofelia/M +Offenbach/M +OfficeMax/M +Ogbomosho/M +Ogden/M +Ogilvy/M +Oglethorpe/M +Ohio/M +Ohioan/SM +Oise/M +Ojibwa/SM +Okayama +Okeechobee/M +Okefenokee/M +Okhotsk/M +Okinawa/M +Okinawan +Okla +Oklahoma/M +Oklahoman/M +Oktoberfest/M +Ola/M +Olaf/M +Olajuwon/M +Olav/M +Oldenburg/M +Oldfield/M +Oldsmobile/M +Olduvai/M +Olen/M +Olenek/M +Olga/M +Oligocene/M +Olin/M +Olive/MR +Oliver/M +Olivetti/M +Olivia/M +Olivier/M +Ollie/M +Olmec/M +Olmsted/M +Olsen/M +Olson/M +Olympia/SM +Olympiad/MS +Olympian/MS +Olympic/SM +Olympics/M +Olympus/M +Omaha/MS +Oman/M +Omani/MS +Omar/M +Omayyad/M +Omdurman/M +Omnipotent +Omsk/M +Onassis/M +Oneal/M +Onega/M +Onegin/M +Oneida/MS +Onion/M +Ono/M +Onondaga/MS +Onsager/M +Ont +Ontarian +Ontario/M +Oort/M +Opal/M +Opel/M +OpenOffice/M +Ophelia/M +Ophiuchus/M +Oppenheimer/M +Opposition +Oprah/M +Ora/M +Oracle/M +Oran/M +Orange/M +Oranjestad/M +Orbison/M +Ordovician/M +Ore/N +Oreg +Oregon/M +Oregonian/SM +Oreo/M +Orestes/M +Orient/M +Oriental/MS +Orientalism +Orin/M +Orinoco/M +Orion/M +Oriya/M +Orizaba/M +Orkney/M +Orlando/M +Orleans/M +Orlon/MS +Orly/M +Orpheus/M +Orphic/M +Orr/M +Ortega/M +Orthodox +Ortiz/M +Orval/M +Orville/M +Orwell/M +Orwellian/M +Os/M +Osage/MS +Osaka/M +Osbert/M +Osborn/M +Osborne/M +Oscar/MS +Osceola/M +Osgood/M +Oshawa/M +Oshkosh/M +Osiris/M +Oslo/M +Osman/M +Ostrogoth/M +Ostwald/M +Osvaldo/M +Oswald/M +Othello/M +Otis/M +Ottawa/SM +Otto/M +Ottoman/M +Ouagadougou/M +Ouija/MS +Ovid/M +Owen/SM +Owens/M +Oxford/SM +Oxnard/M +Oxonian/M +Oxus/M +Oxycontin/M +Oz/M +Ozark/MS +Ozarks/M +Ozymandias/M +Ozzie/M +P/MN +PA/M +PAC/M +PARC/S +PASCAL +PBS/M +PBX +PC/SM +PCB +PCMCIA +PCP/M +PD +PDF +PDQ +PDT +PE +PET/M +PFC +PG +PGP +PHP/M +PIN +PJ's +PLO/M +PM/SMDG +PMS/M +PO +POW/M +PP +PPS +PR +PRC/M +PRO +PS/M +PST/M +PT +PTA/M +PTO +PVC/M +PW +PX +Pa/M +Paar/M +Pablo/M +Pablum/M +Pabst/M +Pace/M +Pacheco/M +Pacific/M +Pacino/M +Packard/M +Padang +Paderewski/M +Padilla/M +Paganini/M +Page/M +Paglia/M +Pahlavi/M +Paige/M +Paine/M +Paiute/SM +Pakistan/M +Pakistani/SM +Palaeolithic +Palembang/M +Paleocene/M +Paleogene/M +Paleolithic's +Paleozoic/M +Palermo/M +Palestine/M +Palestinian/SM +Palestrina/M +Paley/M +Palikir/M +Palisades/M +Palladio/M +Palmer/M +Palmerston/M +Palmolive/M +Palmyra/M +Palomar/M +Pam/M +Pamela/M +Pamirs/M +Pampers/M +Pan/M +Panama/SM +Panamanian/MS +Panasonic/M +Pandora/M +Pangaea/M +Pankhurst/M +Panmunjom/M +Pansy/M +Pantagruel/M +Pantaloon/M +Pantheon/M +Panza/M +Paracelsus/M +Paraclete/M +Paradise +Paraguay/M +Paraguayan/MS +Paralympic/S +Paramaribo/M +Paramount/M +Parana/M +Parcheesi/M +Pareto/M +Paris/M +Parisian/MS +Park/SMR +Parker/M +Parkinson/M +Parkinsonism +Parkman/M +Parks/M +Parliament/M +Parmenides +Parmesan/MS +Parnassus/MS +Parnell/M +Parr/M +Parrish/M +Parsifal/M +Parsons/M +Parthenon/M +Parthia/M +Pasadena/M +Pascal/SM +Pasquale/M +Passion/SM +Passover/MS +Pasternak/M +Pasteur/M +Pat/M +Patagonia/M +Patagonian/M +Pate/M +Patel/M +Paterson/M +Patna/M +Patrica/M +Patrice/M +Patricia/M +Patrick/M +Patsy/M +Patterson/M +Patti/M +Patton/M +Patty/M +Paul/GM +Paula/M +Paulette/M +Pauli/M +Pauline/M +Pauling/M +Pavarotti/M +Pavlov/M +Pavlova/M +Pavlovian/M +Pawnee/SM +PayPal/M +Payne/M +Pb/M +Pd/M +Peabody/M +Peace/M +Peale/M +Pearl/M +Pearlie/M +Pearson/M +Peary/M +Pechora/M +Peck/M +Peckinpah/M +Pecos/M +Pedro/M +Peel/M +Peg/M +Pegasus/MS +Peggy/M +Pei/M +Peiping/M +Peking/SM +Pekingese/SM +Pele/M +Pelee/M +Peloponnese/M +Pembroke/M +Pen/M +Pena/M +Penderecki/M +Penelope/M +Penn/M +Penna +Penney/M +Pennington/M +Pennsylvania/M +Pennsylvanian/MS +Penny/M +Pennzoil/M +Pensacola/M +Pentagon/M +Pentateuch/M +Pentax/M +Pentecost/SM +Pentecostal/MS +Pentecostalism +Pentium/SM +Peoria/M +Pepin/M +Pepsi/M +Pepys/M +Pequot/M +Percheron/M +Percival/M +Percy/M +Perelman/M +Perez/M +Periclean/M +Pericles/M +Perkins/M +Perl/SM +Perm/M +Permalloy/M +Permian/M +Pernod/M +Peron/M +Perot/M +Perrier/M +Perry/RM +Perseid/M +Persephone/M +Persepolis/M +Perseus/M +Pershing/M +Persia/M +Persian/SM +Perth/M +Peru/M +Peruvian/MS +Peshawar/M +Petain/M +Pete/RMZ +Peter/M +Peters/MN +Petersen/M +Peterson/M +Petra/M +Petrarch/M +Petty/M +Peugeot/M +Pfc +Pfizer/M +PhD/M +Phaedra/M +Phaethon/M +Phanerozoic/M +Pharaoh/M +Pharaohs +Pharisaic +Pharisaical +Pharisee/MS +Phekda/M +Phelps/M +Phidias/M +Phil/MY +Philadelphia/M +Philby/M +Philemon/M +Philip/MS +Philippe/M +Philippians/M +Philippine/SM +Philippines/M +Philips/M +Philistine/M +Phillip/SM +Phillipa/M +Phillips/M +Philly/M +Phipps/M +Phobos/M +Phoebe/M +Phoenicia/M +Phoenician/SM +Phoenix/M +Photostat/MS +Photostatted +Photostatting +Phrygia/M +Phyllis/M +Piaf/M +Piaget/M +Pianola/M +Picasso/M +Piccadilly/M +Pickering/M +Pickett/M +Pickford/M +Pickwick/M +Pict/M +Piedmont/M +Pierce/M +Pierre/M +Pierrot/M +Pike/M +Pilate/MS +Pilates/M +Pilcomayo/M +Pilgrim/SM +Pillsbury/M +Pinatubo/M +Pincus/M +Pindar/M +Pinkerton/M +Pinocchio/M +Pinochet/M +Pinter/M +Pinyin +Pippin/M +Piraeus/M +Pirandello/M +Pisa/M +Pisces/M +Pisistratus/M +Pissaro/M +Pitcairn/M +Pitt/SM +Pittman/M +Pitts/M +Pittsburgh/M +Pius/M +Pizarro/M +Pkwy +Pl +Planck/M +Plano +Plantagenet/M +Plasticine/M +Plataea/M +Plath/M +Plato/M +Platonic +Platonism/M +Platonist/M +Platte/M +Plautus/M +PlayStation/M +Playboy/M +Playtex/M +Pleiades/M +Pleistocene/M +Plexiglas/MS +Pliny/M +Pliocene/SM +Plutarch/M +Pluto/M +Plymouth/M +Pm/M +Po/M +Pocahontas/M +Pocono/SM +Poconos/M +Podgorica/M +Podhoretz/M +Podunk/M +Poe/M +Pogo/M +Poincare/M +Poiret/M +Poirot/M +Poisson/M +Poitier/M +Pokemon/M +Pol/MY +Poland/M +Polanski/M +Polaris/M +Polaroid/MS +Pole/SM +Polish/M +Politburo/M +Polk/M +Pollard/M +Pollock/M +Pollux/M +Polly/M +Pollyanna/M +Polo/M +Poltava/M +Polyhymnia/M +Polynesia/M +Polynesian/MS +Polyphemus/M +Pomerania/M +Pomeranian/M +Pomona/M +Pompadour/M +Pompeian +Pompeii/M +Pompey/M +Ponce/M +Pontchartrain/M +Pontiac/M +Pontianak/M +Pooh/M +Poole/M +Poona/M +Pope/M +Popeye/M +Popocatepetl/M +Popper/M +Poppins/M +Popsicle/M +Porfirio/M +Porrima/M +Porsche/M +Port/MR +Porter/M +Portia/M +Portland/M +Porto/M +Portsmouth/M +Portugal/M +Portuguese/M +Poseidon/M +Post/M +PostgreSQL/M +Potemkin/M +Potomac/M +Potsdam/M +Pottawatomie/M +Potter/M +Potts/M +Pound/M +Poussin/M +Powell/M +PowerPC/M +PowerPoint/M +Powers/M +Powhatan/M +Poznan/M +Pr/M +Prada/M +Prado/M +Praetorian/M +Prague/M +Praia/M +Prakrit/M +Pratchett/M +Pratt/M +Pravda/M +Praxiteles/M +Preakness/M +Precambrian/M +Preminger/M +Premyslid/M +Prensa/M +Prentice/M +Pres +Presbyterian/SM +Presbyterianism/MS +Prescott/M +Presley/M +Preston/M +Pretoria/M +Priam/M +Pribilof/M +Price/M +Priceline/M +Priestley/M +Prince/M +Princeton/M +Principe/M +Priscilla/M +Prius/M +Private +Procrustean/M +Procrustes/M +Procter/M +Procyon/M +Prof +Prohibition +Prokofiev/M +Promethean/M +Prometheus/M +Prophets +Proserpina/M +Proserpine/M +Protagoras/M +Proterozoic/M +Protestant/MS +Protestantism/SM +Proteus/M +Proudhon/M +Proust/M +Provencal/MS +Provence/M +Proverbs +Providence/SM +Provo/M +Prozac/MS +Prudence/M +Prudential/M +Pruitt/M +Prussia/M +Prussian/MS +Prut/M +Pryor/M +Psalms/M +Psalter/MS +Psyche/M +Pt/M +Ptah/M +Ptolemaic/M +Ptolemy/SM +Pu/M +Puccini/M +Puck/M +Puckett/M +Puebla/M +Pueblo/M +Puerto +Puget/M +Pugh/M +Pulaski/M +Pulitzer/M +Pullman/MS +Punch/M +Punic/M +Punjab/M +Punjabi/M +Purana/M +Purcell/M +Purdue/M +Purim/MS +Purina/M +Puritan/M +Puritanism/MS +Purus/M +Pusan/M +Pusey/M +Pushkin/M +Pushtu/M +Putin/M +Putnam/M +Puzo/M +Pvt +PyTorch/M +Pygmalion/M +Pygmy/SM +Pyle/M +Pym/M +Pynchon/M +Pyongyang/M +Pyotr/M +Pyrenees/M +Pyrex/MS +Pyrrhic/M +Pythagoras/M +Pythagorean/M +Pythias/M +Python/M +Q +QA +QB +QC +QED +QM +QWERTY +Qaddafi/M +Qantas/M +Qatar/M +Qatari/MS +Qingdao/M +Qinghai/M +Qiqihar/M +Qom/M +Quaalude/M +Quaker/MS +Quakerism/SM +Qualcomm/M +Quaoar/M +Quasimodo/M +Quaternary/M +Quayle/M +Que +Quebec/M +Quebecois/M +Quechua/M +Queen/MS +Queens/M +Queensland/M +Quentin/M +Quetzalcoatl/M +Quezon/M +Quincy/M +Quinn/M +Quintilian/M +Quinton/M +Quirinal/M +Quisling/M +Quito/M +Quixote/M +Quixotism/M +Qumran/M +Quonset/M +Quran +Quranic +R/M +RAF/M +RAM/SM +RBI +RC +RCA/M +RCMP +RD +RDA +RDS/M +REIT +REM/SM +RF +RFC/S +RFD +RI +RIF +RIP +RISC +RN/M +RNA/M +ROFL +ROM/M +ROTC/M +RP +RR +RSFSR +RSI +RSV +RSVP +RTFM +RV/SM +Ra/M +Rabat/M +Rabelais/M +Rabelaisian/M +Rabin/M +Rachael/M +Rachel/M +Rachelle/M +Rachmaninoff/M +Racine/M +Radcliffe/M +Rae/M +Rafael/M +Raffles/M +Ragnarok/M +Rainier/M +Raleigh/M +Ralph/M +Rama/M +Ramada/M +Ramadan/MS +Ramakrishna/M +Ramanujan/M +Ramayana/M +Rambo/M +Ramirez/M +Ramiro/M +Ramon/M +Ramona/M +Ramos/M +Ramsay/M +Ramses/M +Ramsey/M +Rand/M +Randal/M +Randall/M +Randell/M +Randi/M +Randolph/M +Randy/M +Rangoon/M +Rankin/M +Rankine/M +Raoul/M +Raphael/M +Rappaport/M +Rapunzel/M +Raquel/M +Rasalgethi/M +Rasalhague/M +Rasmussen/M +Rasputin/M +Rasta +Rastaban/M +Rastafarian/MS +Rastafarianism +Rather/M +Ratliff/M +Raul/M +Ravel/M +Rawalpindi/M +Ray/M +RayBan/M +Rayburn/M +Rayleigh/M +Raymond/M +Raymundo/M +Rb/M +Rd +Re/M +Reading/M +Reagan/M +Reaganomics/M +Realtor/M +Reasoner/M +Reba/M +Rebekah/M +Recife/M +Reconstruction/M +Redeemer/M +Redford/M +Redgrave/M +Redis/M +Redmond/M +Redshift/M +Reebok/M +Reed/M +Reese/M +Reeves/M +Reformation/MS +Refugio/M +Reggie/M +Regina/M +Reginae/M +Reginald/M +Regor/M +Regulus/M +Rehnquist/M +Reich/M +Reichstag's +Reid/M +Reilly/M +Reinaldo/M +Reinhardt/M +Reinhold/M +Remarque/M +Rembrandt/M +Remington/M +Remus/M +Rena/M +Renaissance/SM +Renascence +Renault/M +Rene/M +Renee/M +Reno/M +Renoir/M +Rep +Representative +Republican/SM +Republicanism +Requiem/MS +Resistance +Restoration/M +Resurrection +Reuben/M +Reunion/M +Reuters/M +Reuther/M +Rev +Reva/M +Revelation/SM +Revelations/M +Revere/M +Reverend/M +Revlon/M +Rex/M +Reyes/M +Reykjavik/M +Reyna/M +Reynaldo/M +Reynolds/M +Rf/M +Rh/M +Rhea/M +Rhee/M +Rheingau/M +Rhenish/M +Rhiannon/M +Rhine/M +Rhineland/M +Rhoda/M +Rhode/S +Rhodes/M +Rhodesia/M +Rhodesian +Rhonda/M +Rhone/M +Ribbentrop/M +Ricardo/M +Rice/M +Rich/M +Richard/MS +Richards/M +Richardson/M +Richelieu/M +Richie/M +Richmond/M +Richter/M +Richthofen/M +Rick/M +Rickenbacker/M +Rickey/M +Rickie/M +Rickover/M +Ricky/M +Rico/M +Riddle/M +Ride/M +Riefenstahl/M +Riel/M +Riemann/M +Riesling/MS +Riga/M +Rigel/M +Riggs/M +Right +Rigoberto/M +Rigoletto/M +Riley/M +Rilke/M +Rimbaud/M +Ringling/M +Ringo/M +Rio/SM +Rios/M +Ripley/M +Risorgimento/M +Rita/M +Ritalin/M +Ritz/M +Rivas/M +Rivera/M +Rivers/M +Riverside +Riviera/MS +Riyadh/M +Rizal/M +Rn/M +Roach/M +Roanoke/M +Rob/M +Robbie/M +Robbin/MS +Robbins/M +Robby/M +Roberson/M +Robert/MS +Roberta/M +Roberto/M +Roberts/M +Robertson/M +Robeson/M +Robespierre/M +Robin/M +Robinson/M +Robitussin/M +Robles/M +Robson/M +Robt/M +Robyn/M +Rocco/M +Rocha/M +Rochambeau/M +Roche/M +Rochelle/M +Rochester/M +Rock/M +Rockefeller/M +Rockford/M +Rockies/M +Rockne/M +Rockwell/M +Rocky/SM +Rod/M +Roddenberry/M +Roderick/M +Rodger/MS +Rodgers/M +Rodin/M +Rodney/M +Rodolfo/M +Rodrick/M +Rodrigo/M +Rodriguez/M +Rodriquez/M +Roeg/M +Roentgen +Rogelio/M +Roger/MS +Rogers/M +Roget/M +Rojas/M +Roku/M +Rolaids/M +Roland/M +Rolando/M +Rolex/M +Rolland/M +Rollerblade/M +Rollins/M +Rolodex/M +Rolvaag/M +Rom +Roman/MS +Romanesque/MS +Romanian/MS +Romano/M +Romanov/M +Romans/M +Romansh/M +Romanticism +Romany/SM +Rome/SM +Romeo/M +Romero/M +Rommel/M +Romney/M +Romulus/M +Ron/M +Ronald/M +Ronda/M +Ronnie/M +Ronny/M +Ronstadt/M +Rontgen +Rooney/M +Roosevelt/M +Root/M +Roquefort/SM +Rorschach/M +Rory/M +Rosa/M +Rosales/M +Rosalie/M +Rosalind/M +Rosalinda/M +Rosalyn/M +Rosanna/M +Rosanne/M +Rosario/M +Roscoe/M +Rose/M +Roseann/M +Roseau/M +Rosecrans/M +Rosella/M +Rosemarie/M +Rosemary/M +Rosenberg/M +Rosendo/M +Rosenzweig/M +Rosetta/M +Rosicrucian/M +Rosie/M +Roslyn/M +Ross/M +Rossetti/M +Rossini/M +Rostand/M +Rostov/M +Rostropovich/M +Roswell/M +Rotarian/M +Roth/M +Rothko/M +Rothschild/M +Rotterdam/M +Rottweiler/M +Rouault/M +Roumania/M +Rourke/M +Rousseau/M +Rove/RM +Rover/M +Rowe/M +Rowena/M +Rowland/M +Rowling/M +Roxanne/M +Roxie/M +Roxy/M +Roy/M +Royal/M +Royce/M +Rozelle/M +Rte +Ru/MH +Rubaiyat/M +Rubbermaid/M +Ruben/SM +Rubens/M +Rubicon/MS +Rubik/M +Rubin/M +Rubinstein/M +Ruby/M +Ruchbah/M +Rudolf/M +Rudolph/M +Rudy/M +Rudyard/M +Rufus/M +Ruhr/M +Ruiz/M +Rukeyser/M +Rumpelstiltskin/M +Rumsfeld/M +Runnymede/M +Runyon/M +Rupert/M +Rush/M +Rushdie/M +Rushmore/M +Ruskin/M +Russ/M +Russel/M +Russell/M +Russia/M +Russian/SM +Russo/M +Rustbelt/M +Rusty/M +Rutan/M +Rutgers/M +Ruth/M +Rutherford/M +Ruthie/M +Rutledge/M +Rwanda/MS +Rwandan/SM +Rwy +Rx +Ry +Ryan/M +Rydberg/M +Ryder/M +Ryukyu/M +S/MN +SA +SAC +SALT/M +SAM/M +SAP/M +SARS/M +SASE +SAT +SBA +SC/M +SCSI/M +SD +SDI +SE/M +SEATO +SEC/M +SF +SGML/M +SIDS/M +SJ +SJW +SK +SLR +SO/S +SOB/M +SOP/M +SOS/M +SOSes +SPCA +SPF +SQL +SQLite/M +SRO +SS +SSA +SSE/M +SSS +SST +SSW/M +ST +STD +STOL +SUSE/M +SUV +SVN/M +SW/M +SWAK +SWAT +Saab/M +Saar/M +Saarinen/M +Saatchi/M +Sabbath/M +Sabbaths +Sabik/M +Sabin/M +Sabina/M +Sabine/M +Sabre/M +Sabrina/M +Sacajawea/M +Sacco/M +Sachs/M +Sacramento/M +Sadat/M +Saddam/M +Sadducee/M +Sade/M +Sadie/M +Sadr/M +Safavid/M +Safeway/M +Sagan/M +Saginaw/M +Sagittarius/MS +Sahara/M +Saharan/M +Sahel/M +Saigon/M +Saiph/M +Sakai/M +Sakha/M +Sakhalin/M +Sakharov/M +Saki/M +Saks/M +Sal/MY +Saladin/M +Salado/M +Salamis/M +Salas/M +Salazar/M +Salem/M +Salerno/M +Salesforce/M +Salinas/M +Salinger/M +Salisbury/M +Salish/M +Salk/M +Sallie/M +Sallust/M +Sally/M +Salome/M +Salonika/M +Salton/M +Salvador/M +Salvadoran/SM +Salvadorean/MS +Salvadorian/MS +Salvatore/M +Salween/M +Salyut/M +Sam/M +Samantha/M +Samar/M +Samara/M +Samaritan/MS +Samarkand/M +Sammie/M +Sammy/M +Samoa/M +Samoan/SM +Samoset/M +Samoyed/M +Sampson/M +Samson/M +Samsonite/M +Samsung/M +Samuel/M +Samuelson/M +San'a +San/M +Sana/M +Sanchez/M +Sancho/M +Sand/ZM +Sandburg/M +Sanders/M +Sandinista/M +Sandoval/M +Sandra/M +Sandy/M +Sanford/M +Sanforized/M +Sang/MR +Sanger/M +Sanhedrin/M +Sanka/M +Sankara/M +Sanskrit/M +Santa/M +Santana/M +Santayana/M +Santeria/M +Santiago/M +Santos/M +Sappho/M +Sapporo/M +Sara/M +Saracen/MS +Saragossa/M +Sarah/M +Sarajevo/M +Saran/M +Sarasota/M +Saratov/M +Sarawak/M +Sardinia/M +Sargasso/M +Sargent/M +Sargon/M +Sarnoff/M +Saroyan/M +Sarto/M +Sartre/M +Sasha/M +Sask +Saskatchewan/M +Saskatoon/M +Sasquatch/MS +Sassanian/M +Sassoon/M +Sat/M +Satan/M +Satanism/M +Satanist/M +Saturday/MS +Saturn/M +Saturnalia/M +Saudi/MS +Saul/M +Saunders/M +Saundra/M +Saussure/M +Sauternes +Savage/M +Savannah/M +Savior/M +Savonarola/M +Savoy/M +Savoyard/M +Sawyer/M +Saxon/MS +Saxony/M +Sayers/M +Sb/M +Sc/M +Scala/M +Scan +Scandinavia/M +Scandinavian/MS +Scaramouch/M +Scarborough/M +Scarlatti/M +Scheat/M +Schedar/M +Scheherazade/M +Schelling/M +Schenectady/M +Schiaparelli/M +Schick/M +Schiller/M +Schindler/M +Schlesinger/M +Schliemann/M +Schlitz/M +Schloss/M +Schmidt/M +Schnabel/M +Schnauzer/M +Schneider/M +Schoenberg/M +Schopenhauer/M +Schrieffer/M +Schrodinger/M +Schroeder/M +Schubert/M +Schultz/M +Schulz/M +Schumann/M +Schumpeter/M +Schuyler/M +Schuylkill/M +Schwartz/M +Schwarzenegger/M +Schwarzkopf/M +Schweitzer/M +Schweppes/M +Schwinger/M +Schwinn/M +Scientologist/SM +Scientology/M +Scipio/M +Scopes/M +Scorpio/SM +Scorpius/M +Scorsese/M +Scot/SM +Scotch/MS +Scotchman/M +Scotchmen/M +Scotchwoman/M +Scotchwomen/M +Scotia/M +Scotland/M +Scotsman/M +Scotsmen/M +Scotswoman/M +Scotswomen/M +Scott/M +Scottie/SM +Scottish/M +Scottsdale/M +Scrabble/MS +Scranton/M +Scriabin/M +Scribner/M +Scripture/SM +Scrooge/M +Scruggs/M +Scud/M +Sculley/M +Scylla/M +Scythia/M +Scythian/M +Se/MH +Seaborg/M +Seagram/M +Sean/M +Sears/M +Seattle/M +Sebastian/M +Sec +Seconal/M +Secretariat/M +Secretary +Seder/MS +Sedna/M +Seebeck/M +Seeger/M +Sega/M +Segovia/M +Segre/M +Segundo/M +Segway/S +Seiko/M +Seine/M +Seinfeld/M +Sejong/M +Selassie/M +Selectric/M +Selena/M +Seleucid/M +Seleucus/M +Selim/M +Seljuk/M +Selkirk/M +Sellers/M +Selma/M +Selznick/M +Semarang/M +Seminole/MS +Semiramis/M +Semite/MS +Semitic/SM +Semtex/M +Senate/MS +Sendai/M +Seneca/MS +Senegal/M +Senegalese/M +Senghor/M +Senior/M +Sennacherib/M +Sennett/M +Sensurround/M +Seoul/M +Sep +Sephardi/M +Sepoy/M +Sept/M +September/MS +Septuagint/MS +Sequoya/M +Serb/SM +Serbia/M +Serbian/MS +Serena/M +Serengeti/M +Sergei/M +Sergio/M +Serpens/M +Serra/M +Serrano/M +Set/M +Seth/M +Seton/M +Seurat/M +Seuss/M +Sevastopol/M +Severn/M +Severus/M +Seville/M +Sevres/M +Seward/M +Sextans/M +Sexton/M +Seychelles/M +Seyfert/M +Seymour/M +Sgt +Shaanxi/M +Shackleton/M +Shaffer/M +Shah/M +Shaka/M +Shaker +Shakespeare/M +Shakespearean/M +Shana/M +Shandong/M +Shane/M +Shanghai/M +Shankara/M +Shanna/M +Shannon/M +Shantung/M +Shanxi/M +Shapiro/M +SharePoint/M +Shari'a/M +Shari/M +Sharif/M +Sharlene/M +Sharon/M +Sharp/M +Sharpe/M +Sharron/M +Shasta/M +Shaula/M +Shaun/M +Shauna/M +Shavian/M +Shavuot/M +Shaw/M +Shawn/M +Shawna/M +Shawnee/SM +Shcharansky/M +Shea/M +Sheba/M +Shebeli/M +Sheena/M +Sheetrock/M +Sheffield/M +Sheila/M +Shelby/M +Sheldon/M +Shelia/M +Shell/M +Shelley/M +Shelly/M +Shelton/M +Shenandoah/M +Shenyang/M +Sheol/M +Shepard/M +Shepherd/M +Sheppard/M +Sheratan/M +Sheraton/M +Sheree/M +Sheri/M +Sheridan/M +Sherlock/M +Sherman/M +Sherpa/M +Sherri/M +Sherrie/M +Sherry/M +Sherwood/M +Sheryl/M +Shetland/SM +Shetlands/M +Shevardnadze/M +Shevat/M +Shi'ite/M +Shields/M +Shiite/MS +Shijiazhuang/M +Shikoku/M +Shillong/M +Shiloh/M +Shinto/MS +Shintoism/MS +Shintoist/MS +Shiraz/M +Shirley/M +Shiva/M +Shockley/M +Short/M +Shorthorn/M +Shoshone/SM +Shostakovitch/M +Shrek/M +Shreveport/M +Shriner/M +Shropshire/M +Shula/M +Shylock/M +Shylockian/M +Si/M +Siam/M +Siamese/M +Sibelius/M +Siberia/M +Siberian/MS +Sibyl/M +Sichuan/M +Sicilian/SM +Sicily/M +Sid/M +Siddhartha/M +Sidney/M +Siegfried/M +Siemens/M +Sierpinski/M +Sierras +Sigismund/M +Sigmund/M +Sigurd/M +Sihanouk/M +Sikh/M +Sikhism +Sikhs +Sikkim/M +Sikkimese/M +Sikorsky/M +Silas/M +Silesia/M +Silurian/SM +Silva/M +Silvia/M +Simenon/M +Simmental/M +Simmons/M +Simon/M +Simone/M +Simpson/SM +Simpsons/M +Sims/M +Sinai/M +Sinatra/M +Sinbad/M +Sinclair/M +Sindbad/M +Sindhi/M +Singapore/M +Singaporean/SM +Singer/M +Singh/M +Singleton/M +Sinhalese/M +Sinkiang/M +Sioux/M +Sir/SM +Sirius/M +Sistine/M +Sisyphean/M +Sisyphus/M +Siva/M +Sivan/M +Sjaelland/M +Skinner/M +Skippy/M +Skopje/M +Skye/M +Skylab/M +Skype/M +Slackware/M +Slashdot/M +Slater/M +Slav/SM +Slavic/M +Slavonic/M +Slinky/M +Sloan/M +Sloane/M +Slocum/M +Slovak/SM +Slovakia/M +Slovakian +Slovene/SM +Slovenia/M +Slovenian/MS +Slurpee/M +Sm/M +Small/M +Smetana/M +Smirnoff/M +Smith/M +Smithson/M +Smithsonian/M +Smokey/M +Smolensk/M +Smollett/M +Smuts/M +Smyrna +Sn/M +Snake/M +Snapple/M +Snead/M +Snell/M +Snickers/M +Snider/M +Snoopy/M +Snow/M +Snowbelt/M +Snyder/M +Soave/M +Soc +Socorro/M +Socrates/M +Socratic/M +Soddy/M +Sodom/M +Sofia/M +Soho/M +Sol/M +Solis/M +Solomon/M +Solon/M +Solzhenitsyn/M +Somali/SM +Somalia/M +Somalian/MS +Somme/M +Somoza/M +Son/M +Sondheim/M +Sondra/M +Songhai/M +Songhua/M +Sonia/M +Sonja/M +Sonny/M +Sonora/M +Sontag/M +Sony/M +Sonya/M +Sophia/M +Sophie/M +Sophoclean/M +Sophocles/M +Sopwith/M +Sorbonne/M +Sosa/M +Soto/M +Souphanouvong/M +Sourceforge/M +Sousa/M +South/M +Southampton/M +Southeast/MS +Southerner/SM +Southey/M +Souths +Southwest/MS +Soviet/M +Soweto/M +Soyinka/M +Soyuz/M +Sp +Spaatz/M +Spackle/M +Spahn/M +Spain/M +Spam/M +Span +Spanglish +Spaniard/SM +Spanish/M +Sparks/M +Sparta/M +Spartacus/M +Spartan/MS +Spears/M +Speer/M +Spence/RM +Spencer/M +Spencerian/M +Spengler/M +Spenglerian/M +Spenser/M +Spenserian/M +Sperry/M +Sphinx/M +Spica/M +Spielberg/M +Spillane/M +Spinoza/M +Spinx/M +Spiro/M +Spirograph/M +Spitsbergen/M +Spitz/M +Spock/M +Spokane/M +Springfield/M +Springsteen/M +Sprint/M +Sprite/M +Sputnik/M +Sq +Squanto/M +Squibb/M +Sr/M +Srinagar/M +Srivijaya/M +St +Sta +Stacey/M +Staci/M +Stacie/M +Stacy/M +Stael/M +Stafford/M +StairMaster/M +Stalin/M +Stalingrad/M +Stalinist/M +Stallone/M +Stamford/M +Stan/M +Standish/M +Stanford/M +Stanislavsky/M +Stanley/M +Stanton/M +Staples/M +Starbucks/M +Stark/M +Starkey/M +Starr/M +Staten/M +States +Staubach/M +Ste +Steadicam/M +Steele/M +Stefan/M +Stefanie/M +Stein/MR +Steinbeck/M +Steinem/M +Steiner/M +Steinmetz/M +Steinway/M +Stella/M +Stendhal/M +Stengel/M +Stephan/M +Stephanie/M +Stephen/MS +Stephens/M +Stephenson/M +Sterling/M +Stern/M +Sterne/M +Sterno/M +Stetson/M +Steuben/M +Steve/M +Steven/MS +Stevens/M +Stevenson/M +Stevie/M +Stewart/M +Stieglitz/M +Stilton/SM +Stimson/M +Stine/M +Stirling/M +Stockhausen/M +Stockholm/M +Stockton/M +Stoic/SM +Stoicism/MS +Stokes/M +Stolichnaya/M +Stolypin/M +Stone/M +Stonehenge/M +Stoppard/M +Stout/M +Stowe/M +Strabo/M +Stradivari +Stradivarius/M +Strasbourg/M +Strauss/M +Stravinsky/M +Streisand/M +Strickland/M +Strindberg/M +Stromboli/M +Strong/M +Stu/M +Stuart/MS +Studebaker/M +Stuttgart/M +Stuyvesant/M +Stygian/M +Styrofoam/SM +Styron/M +Styx/M +Suarez/M +Subaru/M +Sucre/M +Sucrets/M +Sudan/M +Sudanese/M +Sudetenland/M +Sudoku/M +Sudra/M +Sue/M +Suetonius/M +Suez/M +Suffolk/M +Sufi/M +Sufism/M +Suharto/M +Sui/M +Sukarno/M +Sukkot +Sulawesi/M +Suleiman/M +Sulla/M +Sullivan/M +Sumatra/M +Sumatran/SM +Sumeria/M +Sumerian/SM +Summer/MS +Summers/M +Sumner/M +Sumter/M +Sun/SM +Sunbeam/M +Sunbelt/M +Sundanese/M +Sundas/M +Sunday/MS +Sung/M +Sunkist/M +Sunni/SM +Sunnite/MS +Sunnyvale/M +Superbowl/M +Superfund/M +Superglue/M +Superior/M +Superman/M +Supt +Surabaya/M +Surat/M +Suriname/M +Surinamese +Surya/M +Susan/M +Susana/M +Susanna/M +Susanne/M +Susie/M +Susquehanna/M +Sussex/M +Sutherland/M +Sutton/M +Suva/M +Suwanee/M +Suzanne/M +Suzette/M +Suzhou/M +Suzuki/M +Suzy/M +Svalbard/M +Sven/M +Svengali/M +Sverdlovsk +Swahili/SM +Swammerdam/M +Swanee/M +Swansea/M +Swanson/M +Swazi/SM +Swaziland/M +Swed/N +Swede/SM +Sweden/M +Swedenborg/M +Swedish/M +Sweeney/M +Sweet/M +Swift/M +Swinburne/M +Swiss/MS +Swissair/M +Switz +Switzerland/M +Sybil/M +Sydney/M +Sykes/M +Sylvester/M +Sylvia/M +Sylvie/M +Synge/M +Syracuse/M +Syria/M +Syriac/M +Syrian/MS +Szilard/M +Szymborska/M +T'ang/M +T/MDG +TA +TARP +TB/M +TBA +TD +TDD +TEFL +TELNET/S +TELNETTed +TELNETTing +TESL +TESOL +TGIF +THC +TKO/M +TLC/M +TM +TN +TNT/M +TOEFL +TQM +TV/SM +TVA +TWA/M +TWX +TX +Ta/M +Tabasco/SM +Tabatha/M +Tabernacle/MS +Tabitha/M +Tabriz/MS +Tacitus/M +Tacoma/M +Tad/M +Tadzhik/M +Taegu/M +Taejon/M +Taft/M +Tagalog/SM +Tagore/M +Tagus/M +Tahiti/M +Tahitian/MS +Tahoe/M +Taichung/M +Tainan +Taine/M +Taipei/M +Taiping/M +Taiwan/M +Taiwanese/M +Taiyuan/M +Tajikistan/M +Taklamakan/M +Talbot/M +Taliban/M +Taliesin/M +Tallahassee/M +Tallchief/M +Talley/M +Talleyrand/M +Tallinn/M +Talmud/MS +Talmudic +Talmudist +Tamara/M +Tameka/M +Tamera/M +Tamerlane/M +Tami/M +Tamika/M +Tamil/MS +Tammany/M +Tammi/M +Tammie/M +Tammuz/M +Tammy/M +Tampa/M +Tampax/M +Tamra/M +Tamworth/M +Tancred/M +Taney/M +Tanganyika/M +Tangier/MS +Tangshan/M +Tania/M +Tanisha/M +Tanner/M +Tannhauser/M +Tantalus/M +Tanya/M +Tanzania/M +Tanzanian/SM +Tao/M +Taoism/MS +Taoist/MS +Tara/M +Tarantino/M +Tarawa/M +Tarazed/M +Tarbell/M +Target/M +Tarim/M +Tarkenton/M +Tarkington/M +Tartary/M +Tartuffe/M +Tarzan/M +Tasha/M +Tashkent/M +Tasman/M +Tasmania/M +Tasmanian/M +Tass/M +Tatar/MS +Tate/M +Tatum/M +Taurus/MS +Tawney/M +Taylor/M +Tb/M +Tbilisi/M +Tc/M +Tchaikovsky/M +Te/M +TeX +TeXes +Teasdale/M +Technicolor/M +Tecumseh/M +Ted/M +Teddy/M +Teflon/MS +Tegucigalpa/M +Tehran +TelePrompTer +TelePrompter/M +Telemachus/M +Telemann/M +Teletype +Tell/MR +Teller/M +Telugu/M +Tempe +Templar/M +Tenn/M +Tennessean/SM +Tennessee/M +Tennyson/M +Tennysonian +Tenochtitlan/M +TensorFlow/M +Teotihuacan/M +Terence/M +Teresa/M +Tereshkova/M +Teri/M +Terkel/M +Terpsichore/M +Terr/M +Terra/M +Terran/M +Terrance/M +Terrell/M +Terrence/M +Terri/M +Terrie/M +Terry/M +Tertiary/M +Tesla/M +Tess/M +Tessa/M +Tessie/M +Tet/M +Tethys/M +Tetons/M +Teuton/MS +Teutonic/M +Tevet/M +Tex/M +Texaco/M +Texan/MS +Texas/M +Th/M +Thackeray/M +Thad/M +Thaddeus/M +Thai/SM +Thailand/M +Thales/M +Thalia/M +Thames/M +Thanh/M +Thanksgiving/MS +Thant/M +Thar/M +Tharp/M +Thatcher/M +Thea/M +Thebes/M +Theiler/M +Thelma/M +Themistocles/M +Theocritus/M +Theodora/M +Theodore/M +Theodoric/M +Theodosius/M +Theosophy/M +Theravada/M +Theresa/M +Therese/M +Thermopylae/M +Thermos +Theron/M +Theseus/M +Thespian/M +Thespis/M +Thessalonian/SM +Thessaloniki/M +Thessaly/M +Thieu/M +Thimbu/M +Thimphu +Thomas/M +Thomism/M +Thomistic/M +Thompson/M +Thomson/M +Thor/M +Thorazine/M +Thoreau/M +Thornton/M +Thoroughbred/M +Thorpe/M +Thoth/M +Thrace/M +Thracian/M +Thu +Thucydides/M +Thule/M +Thunderbird/M +Thur/S +Thurber/M +Thurman/M +Thurmond/M +Thursday/SM +Thutmose/M +Ti/M +Tia/M +Tianjin/M +Tiber/M +Tiberius/M +Tibet/M +Tibetan/MS +Ticketmaster/M +Ticonderoga/M +Tide/M +Tienanmen/M +Tiffany/M +Tigris/M +Tijuana/M +Tillich/M +Tillman/M +Tilsit/M +Tim/M +Timbuktu/M +Timex/M +Timmy/M +Timon/M +Timothy/M +Timour/M +Timur/M +Timurid/M +Tina/M +Ting/M +Tinkerbell/M +Tinkertoy/M +Tinseltown/M +Tintoretto/M +Tippecanoe/M +Tipperary/M +Tirane +Tiresias/M +Tirol/M +Tirolean +Tisha/M +Tishri/M +Titan/SM +Titania/M +Titanic/M +Titian/M +Titicaca/M +Tito/M +Titus/M +Tl/M +Tlaloc/M +Tlingit/M +Tm/M +Tobago/M +Tobit/M +Toby/M +Tocantins/M +Tocqueville/M +Tod/M +Todd/M +Togo/M +Togolese/M +Tojo/M +Tokay/M +Tokugawa/M +Tokyo/M +Tokyoite +Toledo/MS +Tolkien/M +Tolstoy/M +Toltec/M +Tolyatti/M +Tom/M +Tomas/M +Tombaugh/M +Tomlin/M +Tommie/M +Tommy/M +Tompkins/M +Tomsk/M +Tonga/M +Tongan/MS +Toni/M +Tonia/M +Tonto/M +Tony/M +Tonya/M +Topeka/M +Topsy/M +Torah/M +Torahs +Toronto/M +Torquemada/M +Torrance/M +Torrens/M +Torres/M +Torricelli/M +Tortola/M +Tortuga/M +Torvalds/M +Tory/SM +Tosca/M +Toscanini/M +Toshiba/M +Toto/M +Toulouse/M +Townes/M +Townsend/M +Toynbee/M +Toyoda/M +Toyota/M +Tracey/M +Traci/M +Tracie/M +Tracy/M +Trafalgar/M +Trailways/M +Trajan/M +Tran/M +Transcaucasia/M +Transvaal/M +Transylvania/M +Transylvanian/M +Trappist/SM +Travis/M +Travolta/M +Treasury/SM +Treblinka/M +Trekkie/M +Trent/M +Trenton/M +Trevelyan/M +Trevino/M +Trevor/M +Trey/M +Triangulum/M +Triassic/M +Tricia/M +Trident/M +Trieste/M +Trimurti/M +Trina/M +Trinidad/M +Trinidadian/MS +Trinity/SM +Tripitaka/M +Tripoli/M +Trippe/M +Trisha/M +Tristan/M +Triton/M +Trobriand/M +Troilus/M +Trojan/MS +Trollope/M +Trondheim/M +Tropicana/M +Trotsky/M +Troy/M +Troyes +Truckee/M +Trudeau/M +Trudy/M +Truffaut/M +Trujillo/M +Truman/M +Trumbull/M +Trump/M +Truth/M +Tsimshian/M +Tsiolkovsky/M +Tsitsihar/M +Tsongkhapa/M +Tswana/M +Tu/M +Tuamotu/M +Tuareg/M +Tubman/M +Tucker/M +Tucson/M +Tucuman/M +Tudor/SM +Tue/S +Tues/M +Tuesday/MS +Tulane/M +Tull/M +Tulsa/M +Tulsidas/M +Tums/M +Tungus/M +Tunguska/M +Tunis/M +Tunisia/M +Tunisian/MS +Tunney/M +Tupi/M +Tupperware/M +Tupungato/M +Turgenev/M +Turin/M +Turing/M +Turk/SM +Turkestan/M +Turkey/M +Turkic/MS +Turkish/M +Turkmenistan/M +Turner/M +Turpin/M +Tuscaloosa/M +Tuscan/M +Tuscany/M +Tuscarora/MS +Tuscon/M +Tuskegee/M +Tussaud/M +Tut/M +Tutankhamen/M +Tutsi/M +Tutu/M +Tuvalu/M +Tuvaluan +Twain/M +Tweed/M +Tweedledee/M +Tweedledum/M +Twila/M +Twinkies/M +Twitter/M +Twizzlers/M +Twp +Ty/M +Tycho/M +Tylenol/M +Tyler/M +Tyndale/M +Tyndall/M +Tyre/M +Tyree/M +Tyrolean +Tyrone/M +Tyson/M +U/M +UAR +UAW +UBS/M +UCLA/M +UFO/SM +UHF/M +UK/M +UL +UN/M +UNESCO/M +UNICEF/M +UNIX/M +UPC +UPI/M +UPS/M +URL/S +US/M +USA/M +USAF +USB +USCG +USDA/M +USIA +USMC +USN +USO +USP +USPS +USS +USSR/M +UT/M +UTC +UV/M +Ubangi/M +Ubuntu/M +Ucayali/M +Uccello/M +Udall/M +Ufa/M +Uganda/M +Ugandan/MS +Uighur/M +Ujungpandang/M +Ukraine/M +Ukrainian/SM +Ulster/M +Ultrasuede/M +Ulyanovsk/M +Ulysses/M +Umbriel/M +Underwood/M +Ungava/M +Unicode/M +Unilever/M +Union/SM +Unionist +Uniroyal/M +Unitarian/MS +Unitarianism/MS +Unitas/M +Unix/S +Unukalhai/M +Upanishads/M +Updike/M +Upjohn/M +Upton/M +Ur/M +Ural/SM +Urals/M +Urania/M +Uranus/M +Urban/M +Urdu/M +Urey/M +Uriah/M +Uriel/M +Uris/M +Urquhart/M +Ursa/M +Ursula/M +Ursuline/M +Uruguay/M +Uruguayan/MS +Urumqi/M +Usenet/MS +Ustinov/M +Ut +Utah/M +Utahan/MS +Ute/SM +Utopia/SM +Utopian/SM +Utrecht/M +Utrillo/M +Uzbek/M +Uzbekistan/M +Uzi/SM +V/M +VA +VAT/M +VAX +VAXes +VBA/M +VCR/M +VD/M +VDT +VDU +VF +VFW/M +VG +VGA +VHF/M +VHS +VI/M +VIP/SM +VISTA +VJ +VLF/M +VOA +VP +VT +VTOL +Va/M +Vader/M +Vaduz/M +Val/M +Valarie/M +Valdez/M +Valencia/SM +Valenti/M +Valentin/M +Valentine/M +Valentino/M +Valenzuela/M +Valeria/M +Valerian/M +Valerie/M +Valery/M +Valhalla/M +Valium/MS +Valkyrie/SM +Vallejo +Valletta/M +Valois/M +Valparaiso/M +Valvoline/M +Van/M +Vance/M +Vancouver/M +Vandal/MS +Vanderbilt/M +Vandyke/M +Vanessa/M +Vang/M +Vanuatu/M +Vanzetti/M +Varanasi/M +Varese/M +Vargas/M +Vaseline/SM +Vasquez/M +Vassar/M +Vatican/M +Vauban/M +Vaughan/M +Vaughn/M +Vazquez/M +Veblen/M +Veda/SM +Vedanta/M +Vega/SM +Vegas/M +Vegemite/M +Vela/M +Velasquez/M +Velazquez/M +Velcro/MS +Velez/M +Velma/M +Velveeta/M +Venetian/SM +Venezuela/M +Venezuelan/SM +Venice/M +Venn/M +Ventolin/M +Venus/MS +Venusian/M +Vera/M +Veracruz/M +Verde/M +Verdi/M +Verdun/M +Verizon/M +Verlaine/M +Vermeer/M +Vermont/ZMR +Vermonter/M +Vern/M +Verna/M +Verne/M +Vernon/M +Verona/M +Veronese/M +Veronica/M +Versailles/M +Vesalius/M +Vespasian/M +Vespucci/M +Vesta/M +Vesuvius/M +Viacom/M +Viagra/M +Vic/M +Vicente/M +Vichy/M +Vicki/M +Vickie/M +Vicksburg/M +Vicky/M +Victor/M +Victoria/M +Victorian/MS +Victorianism +Victrola/M +Vidal/M +Vienna/M +Viennese/M +Vientiane/M +Vietcong/M +Vietminh/M +Vietnam/M +Vietnamese/M +Vijayanagar/M +Vijayawada/M +Viking/MS +Vila/M +Villa/M +Villarreal/M +Villon/M +Vilma/M +Vilnius/M +Vilyui/M +Vince/M +Vincent/M +Vindemiatrix/M +Vinson/M +Viola/M +Violet/M +Virgie/M +Virgil/M +Virginia/M +Virginian/SM +Virgo/SM +Visa/M +Visayans/M +Vishnu/M +Visigoth/M +Visigoths +Vistula/M +Vitim/M +Vito/M +Vitus/M +Vivaldi/M +Vivekananda/M +Vivian/M +Vivienne/M +Vlad/M +Vladimir/M +Vladivostok/M +Vlaminck/M +Vlasic/M +VoIP +Vogue/M +Volcker/M +Voldemort/M +Volga/M +Volgograd/M +Volkswagen/M +Volstead/M +Volta/M +Voltaire/M +Volvo/M +Vonda/M +Vonnegut/M +Voronezh/M +Vorster/M +Voyager/M +Vt +Vuitton/M +Vulcan/M +Vulg +Vulgate/SM +W/MDT +WA +WAC +WASP/M +WATS/M +WC +WHO/M +WI +WMD +WNW/M +WP +WSW/M +WTO +WV +WW +WWI +WWII +WWW/M +WY +WYSIWYG +Wabash/M +Wac +Waco/M +Wade/M +Wagner/M +Wagnerian/M +Wahhabi/M +Waikiki/M +Waite/M +Wake/M +Waksman/M +Wald/MN +Waldemar/M +Walden/M +Waldensian/M +Waldheim/M +Waldo/M +Waldorf/M +Wales/M +Walesa/M +Walgreen/SM +Walgreens/M +Walker/M +Walkman/M +Wall/SMR +Wallace/M +Wallenstein/M +Waller/M +Wallis/M +Walloon/M +Walls/M +Walmart/M +Walpole/M +Walpurgisnacht/M +Walsh/M +Walt/MRZ +Walter/M +Walters/M +Walton/M +Wanamaker/M +Wanda/M +Wang/M +Wankel/M +Ward/M +Ware/MG +Warhol/M +Waring/M +Warner/M +Warren/M +Warsaw/M +Warwick/M +Wasatch/M +Wash/M +Washington/M +Washingtonian/MS +Wassermann/M +Waterbury/M +Waterford/M +Watergate/M +Waterloo/MS +Waters/M +Watkins/M +Watson/M +Watt/SM +Watteau/M +Watts/M +Watusi/M +Waugh/M +Wave +Wayne/M +Weaver/M +Web/MR +Webb/M +Weber/M +Webern/M +Webster/MS +Wed/M +Weddell/M +Wedgwood/M +Wednesday/MS +Weeks/M +Wehrmacht/M +Wei/M +Weierstrass/M +Weill/M +Weinberg/M +Weiss/M +Weissmuller/M +Weizmann/M +Weldon/M +Welland/M +Weller/M +Welles/M +Wellington/SM +Wells/M +Welsh/M +Welshman/M +Welshmen/M +Welshwoman +Wendell/M +Wendi/M +Wendy/M +Wesak/M +Wesley/M +Wesleyan/M +Wessex/M +Wesson/M +West/SM +Western/MRS +Westinghouse/M +Westminster/M +Weston/M +Westphalia/M +Weyden/M +Wezen/M +Wharton/M +Wheaties/M +Wheatstone/M +Wheeler/M +Wheeling/M +Whig/SM +Whipple/M +Whirlpool/M +Whistler/M +Whitaker/M +White/SM +Whitefield/M +Whitehall/M +Whitehead/M +Whitehorse/M +Whiteley/M +Whitfield/M +Whitley/M +Whitman/M +Whitney/M +Whitsunday/MS +Whittier/M +WiFi +Wicca/M +Wichita/M +Wiemar/M +Wiesel/M +Wiesenthal/M +Wiggins/M +Wigner/M +Wii/M +Wikileaks +Wikipedia/M +Wilberforce/M +Wilbert/M +Wilbur/M +Wilburn/M +Wilcox/M +Wilda/M +Wilde/MR +Wilder/M +Wiles/M +Wiley/M +Wilford/M +Wilfred/M +Wilfredo/M +Wilhelm/M +Wilhelmina/M +Wilkerson/M +Wilkes/M +Wilkins/M +Wilkinson/M +Will/M +Willa/M +Willamette/M +Willard/M +Willemstad/M +William/SM +Williams/M +Williamson/M +Willie/M +Willis/M +Willy/M +Wilma/M +Wilmer/M +Wilmington/M +Wilson/M +Wilsonian/M +Wilton/M +Wimbledon/M +Wimsey/M +Winchell/M +Winchester/MS +Windbreaker/M +Windex/M +Windhoek/M +Windows/M +Windsor/SM +Windward/M +Winesap/M +Winfred/M +Winfrey/M +Winifred/M +Winkle/M +Winnebago/M +Winnie/M +Winnipeg/M +Winston/M +Winters/M +Winthrop/M +Wis +Wisc +Wisconsin/M +Wisconsinite/MS +Wise/M +Witt/M +Wittgenstein/M +Witwatersrand/M +Wm/M +Wobegon/M +Wodehouse/M +Wolf/M +Wolfe/M +Wolff/M +Wolfgang/M +Wollongong/M +Wollstonecraft/M +Wolsey/M +Wolverhampton +Wonder/M +Wonderbra/M +Wong/M +Wood/SM +Woodard/M +Woodhull/M +Woodrow/M +Woods/M +Woodstock/M +Woodward/M +Woolf/M +Woolite/M +Woolongong/M +Woolworth/M +Wooster/M +Wooten/M +Worcester/SM +Worcestershire/M +WordPress/M +Wordsworth/M +Workman/M +Worms/M +Wotan/M +Wovoka/M +Wozniak/M +Wozzeck/M +Wrangell/M +Wren/M +Wright/M +Wrigley/M +Wroclaw/M +Wu/M +Wuhan/M +Wurlitzer/M +Wyatt/M +Wycherley/M +Wycliffe/M +Wyeth/M +Wylie/M +Wynn/M +Wyo +Wyoming/M +Wyomingite/SM +X/M +XEmacs/M +XL/M +XML +XS +XXL +Xamarin/M +Xanadu/M +Xanthippe/M +Xavier/M +Xe/SM +Xenakis/M +Xenia/M +Xenophon/M +Xerox/MS +Xerxes/M +Xhosa/M +Xi'an/M +Xian/SM +Xiaoping/M +Ximenes/M +Xingu/M +Xinjiang/M +Xiongnu/M +Xizang/M +Xmas/MS +Xochipilli/M +Xuzhou/M +Y/M +YMCA/M +YMHA +YMMV +YT +YWCA/M +YWHA +Yacc/M +Yahoo/M +Yahtzee/M +Yahweh/M +Yakima/M +Yakut/M +Yakutsk/M +Yale/M +Yalow/M +Yalta/M +Yalu/M +Yamagata/M +Yamaha/M +Yamoussoukro/M +Yang/M +Yangon/M +Yangtze/M +Yank/SM +Yankee/SM +Yaobang/M +Yaounde/M +Yaqui/M +Yaren +Yaroslavl/M +Yataro/M +Yates/M +Yb/M +Yeager/M +Yeats/M +Yekaterinburg/M +Yellowknife/M +Yellowstone/M +Yeltsin/M +Yemen/M +Yemeni/SM +Yemenite +Yenisei/M +Yerevan/M +Yerkes/M +Yesenia/M +Yevtushenko/M +Yggdrasil/M +Yiddish/M +Ymir/M +Yoda/M +Yoknapatawpha/M +Yoko/M +Yokohama/M +Yolanda/M +Yong/M +Yonkers/M +York/M +Yorkie/M +Yorkshire/MS +Yorktown/M +Yoruba/M +Yosemite/M +Yossarian/M +YouTube/M +Young/M +Youngstown/M +Ypres/M +Ypsilanti/M +Yuan/M +Yucatan/M +Yugo/M +Yugoslav/MS +Yugoslavia/M +Yugoslavian/SM +Yukon/M +Yule/SM +Yuletide/MS +Yuma/SM +Yunnan/M +Yuri/M +Yves/M +Yvette/M +Yvonne/M +Z/SMNXT +Zachariah/M +Zachary/M +Zachery/M +Zagreb/M +Zaire/M +Zairian +Zambezi/M +Zambia/M +Zambian/SM +Zamboni/M +Zamenhof/M +Zamora/M +Zane/M +Zanuck/M +Zanzibar/M +Zapata/M +Zaporozhye/M +Zapotec/M +Zappa/M +Zara/M +Zarathustra/M +Zealand/M +Zebedee/M +Zechariah/M +Zedekiah/M +Zedong/M +Zeffirelli/M +Zeke/M +Zelig/M +Zelma/M +Zen/M +Zenger/M +Zeno/M +Zephaniah/M +Zephyrus/M +Zest/M +Zeus/M +Zhdanov +Zhejiang/M +Zhengzhou/M +Zhivago/M +Zhukov/M +Zibo/M +Ziegfeld/M +Ziegler/M +Ziggy/M +Zika +Zimbabwe/M +Zimbabwean/SM +Zimmerman/M +Zinfandel/M +Zion/SM +Zionism/SM +Zionist/SM +Ziploc/M +Zn/M +Zoe/M +Zola/M +Zollverein/M +Zoloft/M +Zomba/M +Zorn/M +Zoroaster/M +Zoroastrian/MS +Zoroastrianism/SM +Zorro/M +Zosma/M +Zr/M +Zsigmondy/M +Zubenelgenubi/M +Zubeneschamali/M +Zukor/M +Zulu/SM +Zululand +Zuni/M +Zurich/M +Zwingli/M +Zworykin/M +Zyrtec/M +Zyuganov/M +Zzz +a/S +aah +aardvark/SM +ab/SDY +aback +abacus/MS +abaft +abalone/SM +abandon/LSDG +abandonment/M +abase/LGDS +abasement/M +abash/GLDS +abashed/UY +abashment/M +abate/LGDS +abated/U +abatement/M +abattoir/MS +abbe/SM +abbess/MS +abbey/MS +abbot/MS +abbr +abbrev/S +abbreviate/DSGNX +abbreviation/M +abdicate/GNDSX +abdication/M +abdomen/SM +abdominal +abduct/DSG +abductee/MS +abduction/SM +abductor/MS +abeam +aberrant +aberration/MS +aberrational +abet/S +abetted +abetter/SM +abetting +abeyance/M +abhor/S +abhorred +abhorrence/M +abhorrent/Y +abhorring +abidance/M +abide/GS +abiding/Y +ability/IEMS +abject/YP +abjection/M +abjectness/M +abjuration/SM +abjuratory +abjure/ZGDRS +abjurer/M +ablate/XGNVDS +ablation/M +ablative/MS +ablaze +able/UT +abler +abloom +ablution/SM +abnegate/GNDS +abnegation/M +abnormal/Y +abnormality/SM +aboard +abode/MS +abolish/GDS +abolition/M +abolitionism/M +abolitionist/SM +abominable +abominably +abominate/DSGNX +abomination/M +aboriginal/MS +aborigine/SM +aborning +abort/GVDS +abortion/MS +abortionist/MS +abortive/Y +abound/DSG +about +above/M +aboveboard +abracadabra/M +abrade/GDS +abrasion/MS +abrasive/MYPS +abrasiveness/M +abreast +abridge/DSLG +abridgement/MS +abroad +abrogate/XGNDS +abrogation/M +abrogator/MS +abrupt/TPRY +abruptness/M +abs/M +abscess/MDSG +abscissa/SM +abscission/M +abscond/ZGSDR +absconder/M +abseil/MDSG +absence/SM +absent/DYSG +absentee/MS +absenteeism/M +absentminded/YP +absentmindedness/M +absinth/M +absinthe/M +absolute/PMYTNS +absoluteness/M +absolution/M +absolutism/M +absolutist/MS +absolve/DSG +absorb/AGDS +absorbance +absorbency/M +absorbent/SM +absorbing/Y +absorption/M +absorptive +abstain/DRZGS +abstainer/M +abstemious/PY +abstemiousness/M +abstention/MS +abstinence/M +abstinent +abstract/GSPMDY +abstracted/YP +abstractedness/M +abstraction/SM +abstractness/MS +abstruse/YP +abstruseness/M +absurd/TPRY +absurdist/MS +absurdity/SM +absurdness/M +abundance/SM +abundant/Y +abuse's +abuse/EGVDS +abuser/MS +abusive/YP +abusiveness/M +abut/SL +abutment/MS +abutted +abutting +abuzz +abysmal/Y +abyss/MS +abyssal +ac +acacia/MS +academe/M +academia/M +academic/SM +academical/Y +academician/MS +academy/SM +acanthus/MS +accede/GDS +accelerate/GNXDS +acceleration/M +accelerator/SM +accent/MDSG +accented/U +accentual +accentuate/GNDS +accentuation/M +accept/DSBG +acceptability/M +acceptableness/M +acceptably/U +acceptance/SM +acceptation/MS +accepted/U +access/MDSG +accessibility/IM +accessible/I +accessibly/I +accession/MDGS +accessorise/DSG +accessory/SM +accident/MS +accidental/SMY +acclaim/MDGS +acclamation/M +acclimate/DSGN +acclimation/M +acclimatisation/M +acclimatise/DSG +acclivity/SM +accolade/SM +accommodate/XGNDS +accommodating/Y +accommodation/M +accompanied/U +accompaniment/MS +accompanist/SM +accompany/DSG +accomplice/SM +accomplish/DSLG +accomplished/U +accomplishment/MS +accord/GMDS +accordance/M +accordant +according/Y +accordion/MS +accordionist/MS +accost/GMDS +account/MDSBG +accountability/M +accountable/U +accountancy/M +accountant/MS +accounted/U +accounting/M +accouterments's +accoutre/DSG +accoutrements +accredit/SGD +accreditation/M +accredited/U +accretion/MS +accrual/MS +accrue/GDS +acct +acculturate/DSGN +acculturation/M +accumulate/XGNVDS +accumulation/M +accumulator/MS +accuracy/IM +accurate/IY +accurateness/M +accursed/P +accursedness/M +accusation/MS +accusative/MS +accusatory +accuse/ZGDRS +accuser/M +accusing/Y +accustom/DSG +accustomed/U +ace/DSMG +acerbate/DSG +acerbic +acerbically +acerbity/M +acetaminophen/M +acetate/MS +acetic +acetone/M +acetonic +acetyl +acetylene/M +ache/DSMG +achene/MS +achievable/U +achieve/BLZGDRS +achievement/SM +achiever/M +aching/Y +achoo/M +achromatic +achy/TR +acid/SMY +acidic +acidify/GDS +acidity/M +acidosis/M +acidulous +acknowledge/DSGL +acknowledged/U +acknowledgement/MS +acme/SM +acne/M +acolyte/MS +aconite/MS +acorn/MS +acoustic/S +acoustical/Y +acoustics/M +acquaint/AGSD +acquaintance/SM +acquaintanceship/M +acquainted/U +acquiesce/DSG +acquiescence/M +acquiescent/Y +acquire/ZGBDRSL +acquirement/M +acquisition/MS +acquisitive/YP +acquisitiveness/M +acquit/S +acquittal/MS +acquitted +acquitting +acre/SM +acreage/MS +acrid/PTRY +acridity/M +acridness/M +acrimonious/YP +acrimoniousness/M +acrimony/M +acrobat/MS +acrobatic/S +acrobatically +acrobatics/M +acronym/MS +acrophobia/M +acropolis/MS +across +acrostic/SM +acrylamide +acrylic/MS +act's +act/ASDGV +acting/M +actinium/M +action/ASM +actionable +activate/ICANGSD +activation/ICAM +activator/MS +active's +active/IKY +activeness/M +actives +activism/M +activist/MS +activities +activity/IM +actor/AMS +actress/MS +actual/Y +actualisation/M +actualise/GDS +actuality/SM +actuarial +actuary/SM +actuate/GNDS +actuation/M +actuator/SM +acuity/M +acumen/M +acupressure/M +acupuncture/M +acupuncturist/SM +acute/PMYTRS +acuteness/M +acyclovir/M +acyl +ad/SM +adage/MS +adagio/MS +adamant/MY +adapt/BGVDS +adaptability/M +adaptation/MS +adaption/S +adaptor/MS +add/SDRBZG +addend/MS +addenda +addendum/M +adder/M +addict/GVMDS +addiction/SM +addition/SM +additional/Y +additive/SM +addle/GDS +address's +address/AGDS +addressable +addressed/U +addressee/SM +adduce/GDS +adenine/M +adenocarcinoma +adenoid/SM +adenoidal +adept/MYPS +adeptness/M +adequacy/IM +adequate/IY +adequateness/M +adhere/GDS +adherence/M +adherent/SM +adhesion/M +adhesive/PSM +adhesiveness/M +adiabatic +adieu/MS +adios +adipose +adj +adjacency/M +adjacent/Y +adjectival/Y +adjective/MS +adjoin/GDS +adjourn/DGLS +adjournment/SM +adjudge/GDS +adjudicate/GNVXDS +adjudication/M +adjudicator/SM +adjudicatory +adjunct/MS +adjuration/MS +adjure/GDS +adjust/AGDSL +adjustable +adjuster/SM +adjustment/AMS +adjutant/SM +adman/M +admen +admin/S +administer/DGS +administrate/XDSGNV +administration/M +administrative/Y +administrator/MS +admirably +admiral/MS +admiralty/M +admiration/M +admire/BZGDRS +admirer/M +admiring/Y +admissibility/IM +admissible/I +admissibly +admission/AM +admissions +admit/AS +admittance/M +admitted/Y +admitting/A +admix/GDS +admixture/SM +admonish/LDSG +admonishment/MS +admonition/MS +admonitory +ado/M +adobe/MS +adolescence/SM +adolescent/SM +adopt/AGVDS +adoptable +adopter/MS +adoption/SM +adorableness/M +adorably +adoration/M +adore/BZGDRS +adorer/M +adoring/Y +adorn/LGDS +adorned/U +adornment/MS +adrenal/MS +adrenalin's +adrenaline/M +adrenergic +adrift +adroit/PY +adroitness/M +adsorb/SDG +adsorbent/MS +adsorption/SM +adulate/DSGN +adulation/M +adulator/MS +adulatory +adult/MS +adulterant/MS +adulterate/GNDS +adulterated/U +adulteration/M +adulterer/SM +adulteress/MS +adulterous +adultery/SM +adulthood/M +adumbrate/GNDS +adumbration/M +adv +advance/LDSMG +advancement/SM +advantage/EDSMG +advantageous/EY +advent/SM +adventitious/Y +adventure/DRSMZG +adventurer/M +adventuresome +adventuress/MS +adventurism +adventurist/S +adventurous/YP +adventurousness/M +adverb/SM +adverbial/SMY +adversarial +adversary/SM +adverse/PRYT +adverseness/M +adversity/SM +advert/SMDG +advertise/LZGDRS +advertised/U +advertisement/MS +advertiser/M +advertising/M +advertorial/SM +advice/M +advisability/IM +advisable/I +advisably +advise/LDRSZGB +advised/UY +advisement/M +adviser/M +advisory/SM +advocacy/M +advocate/MGDS +advt +adware +adze/SM +aegis/M +aeon/SM +aerate/DSGN +aeration/M +aerator/SM +aerial/SMY +aerialist/MS +aerie/MS +aerobatic/S +aerobatics/M +aerobic/S +aerobically +aerobics/M +aerodrome/MS +aerodynamic/S +aerodynamically +aerodynamics/M +aerofoil/SM +aerogram/S +aeronautic/S +aeronautical +aeronautics/M +aeroplane/SM +aerosol/MS +aerospace/M +aery +aesthete/MS +aesthetic/S +aesthetically +aestheticism/M +aesthetics/M +aetiology/M +afar +affability/M +affable +affably +affair/MS +affect's +affect/EGDS +affectation/SM +affected/UY +affecting/Y +affection/EM +affectionate/Y +affections +afferent +affiance/GDS +affidavit/SM +affiliate's +affiliate/EGNDS +affiliated/U +affiliation/EM +affiliations +affine +affinity/SM +affirm/AGDS +affirmation/AMS +affirmative/MYS +affix/GMDS +afflatus/M +afflict/GDS +affliction/SM +affluence/M +affluent/Y +afford/GDSB +affordability +affordably +afforest/EGSD +afforestation/M +affray/MS +affront/GMDS +afghan/MS +aficionado/MS +afield +afire +aflame +afloat +aflutter +afoot +aforementioned +aforesaid +aforethought +afoul +afraid/U +afresh +aft/RZ +afterbirth/M +afterbirths +afterburner/MS +aftercare/M +aftereffect/MS +afterglow/SM +afterimage/MS +afterlife/M +afterlives +aftermarket/MS +aftermath/M +aftermaths +afternoon/MS +aftershave/SM +aftershock/SM +aftertaste/SM +afterthought/SM +afterwards +afterword/MS +again +against +agape/M +agar/M +agate/MS +agave/M +age/DSM +ageing/SM +ageism/M +ageist/SM +ageless/YP +agelessness/M +agency/SM +agenda/SM +agenesis +agent/AMS +ageratum/M +agglomerate/DSMGNX +agglomeration/M +agglutinate/DSXGN +agglutination/M +aggrandise/GLDS +aggrandisement/M +aggravate/GNXDS +aggravating/Y +aggravation/M +aggregate/MGNDSX +aggregation/M +aggregator/SM +aggression/M +aggressive/PY +aggressiveness/M +aggressor/SM +aggrieve/DSG +aggro +aghast +agile/Y +agility/M +agitate/XGNDS +agitation/M +agitator/MS +agitprop/M +agleam +aglitter +aglow +agnostic/MS +agnosticism/M +ago +agog +agonise/GDS +agonising/Y +agonist/S +agony/SM +agoraphobia/M +agoraphobic/MS +agrarian/MS +agrarianism/M +agree/EBLDS +agreeableness/EM +agreeably/E +agreeing/E +agreement/ESM +agribusiness/MS +agricultural/Y +agriculturalist/MS +agriculture/M +agriculturist/MS +agronomic +agronomist/MS +agronomy/M +aground +ague/M +ah +aha +ahchoo +ahead +ahem +ahoy +aid/SMDG +aide/SM +aided/U +aigrette/MS +ail/SDLG +aileron/SM +ailment/SM +aim/SMDG +aimless/YP +aimlessness/M +ain't +air/SMDJG +airbag/MS +airbase/SM +airbed/S +airborne +airbrush/MDSG +airbus/MS +aircraft/M +aircraftman +aircraftmen +aircrew/S +airdrome/S +airdrop/SM +airdropped +airdropping +airfare/SM +airfield/SM +airflow/M +airfreight/M +airguns +airhead/SM +airily +airiness/M +airing/M +airless/P +airlessness/M +airletters +airlift/SGMD +airline/RSMZ +airliner/M +airlock/SM +airmail/GSMD +airman/M +airmen +airplay/M +airport/SM +airship/SM +airshow/S +airsick/P +airsickness/M +airspace/M +airspeed +airstrike/MS +airstrip/SM +airtight +airtime/M +airwaves/M +airway/MS +airwoman +airwomen +airworthiness/M +airworthy/P +airy/PTR +aisle/MS +aitch/MS +ajar +aka +akimbo +akin +alabaster/M +alack +alacrity/M +alarm/GMDS +alarming/Y +alarmist/SM +alas +alb/SM +albacore/SM +albatross/MS +albeit +albinism/M +albino/MS +album/MNS +albumen/M +albumin/M +albuminous +alchemist/SM +alchemy/M +alcohol/SM +alcoholic/MS +alcoholically +alcoholism/M +alcove/MS +alder/MS +alderman/M +aldermen +alderwoman/M +alderwomen +ale/SMV +aleatory +alehouse/SM +alembic/SM +alert/GMDYPS +alertness/M +alewife/M +alewives +alfalfa/M +alfresco +alga/M +algae +algal +algebra/SM +algebraic +algebraically +algorithm/SM +algorithmic +alias/GMDS +alibi/GMDS +alien/BGMDS +alienable/IU +alienate/DSGN +alienation/M +alienist/SM +alight/GDS +align/ALGDS +aligned/U +aligner/MS +alignment/AMS +alike/U +aliment/MDSG +alimentary +alimony/M +aliveness/M +aliyah/M +aliyahs +alkali/M +alkalies +alkaline +alkalinity/M +alkalise/DSG +alkaloid/SM +alkyd/MS +all/M +allay/GDS +allegation/MS +allege/GDS +alleged/Y +allegiance/MS +allegoric +allegorical/Y +allegorist/MS +allegory/SM +allegretto/MS +allegro/MS +allele/MS +alleluia/SM +allergen/SM +allergenic +allergic +allergically +allergist/SM +allergy/SM +alleviate/DSGN +alleviation/M +alley/MS +alleyway/SM +alliance/SM +alligator/MS +alliterate/DSXGNV +alliteration/M +alliterative/Y +allocate/ADSGN +allocation/AM +allocations +allot/LS +allotment/SM +allotted +allotting +allover +allow/EGDS +allowable/U +allowably +allowance/SM +alloy/GMDS +alloyed/U +allspice/M +allude/GDS +allure/MGLDS +allurement/MS +alluring/Y +allusion/SM +allusive/PY +allusiveness/M +alluvial/M +alluvium/SM +ally/GDSM +almanac/SM +almighty +almond/MS +almoner/SM +almost +alms/M +almshouse/MS +aloe/SM +aloft +aloha/MS +alone +along +alongshore +alongside +aloof/PY +aloofness/M +aloud +alp/SM +alpaca/MS +alpha/MS +alphabet/SM +alphabetic +alphabetical/Y +alphabetisation/SM +alphabetise/ZGDRS +alphabetiser/M +alphanumeric +alphanumerical/Y +alpine/S +already +alright +also +alt/S +altar/MS +altarpiece/SM +alter/GDBS +alterable/U +alteration/MS +altercation/SM +altered/U +alternate/DSMYGNVX +alternation/M +alternative/MYS +alternator/SM +although +altimeter/MS +altitude/MS +alto/SM +altogether +altruism/M +altruist/SM +altruistic +altruistically +alum/SM +alumina/M +aluminium/M +alumna/M +alumnae +alumni +alumnus/M +alveolar/S +always +am/N +amalgam/SM +amalgamate/XGNDS +amalgamation/M +amanuenses +amanuensis/M +amaranth/M +amaranths +amaretto/M +amaryllis/MS +amass/GDS +amateur/SM +amateurish/YP +amateurishness/M +amateurism/M +amatory +amaze/LMGDS +amazement/M +amazing/Y +amazon/MS +amazonian +ambassador/SM +ambassadorial +ambassadorship/MS +ambassadress/MS +amber/M +ambergris/M +ambidexterity/M +ambidextrous/Y +ambience/MS +ambient +ambiguity/SM +ambiguous/UY +ambit +ambition/MS +ambitious/YP +ambitiousness/M +ambivalence/M +ambivalent/Y +amble/MZGDRS +ambler/M +ambrosia/M +ambrosial +ambulance/MS +ambulanceman +ambulancemen +ambulancewoman +ambulancewomen +ambulant +ambulate/DSXGN +ambulation/M +ambulatory/SM +ambuscade/MGDS +ambush/GMDS +ameliorate/GNVDS +amelioration/M +amen/B +amenability/M +amenably +amend/BLGDS +amendment/SM +amenity/SM +amerce/GLDS +amercement/SM +americium/M +amethyst/SM +amiability/M +amiable +amiably +amicability/M +amicable +amicably +amid +amide/MS +amidship/S +amidst +amigo/MS +amine/S +amino +amiss +amitriptyline +amity/M +ammeter/SM +ammo/M +ammonia/M +ammonium +ammunition/M +amnesia/M +amnesiac/MS +amnesic/SM +amnesty/GDSM +amniocenteses +amniocentesis/M +amnion/MS +amniotic +amoeba/MS +amoebae +amoebic +amok +among +amongst +amontillado/SM +amoral/Y +amorality/M +amorous/YP +amorousness/M +amorphous/PY +amorphousness/M +amortisation/MS +amortise/DSGB +amount/GMDS +amour/MS +amoxicillin +amp/SMY +amperage/M +ampere/MS +ampersand/MS +amphetamine/SM +amphibian/MS +amphibious/Y +amphitheatre/SM +amphora/M +amphorae +ampicillin +ample/TR +amplification/M +amplifier/M +amplify/NDRSXZG +amplitude/SM +ampule/MS +amputate/GNDSX +amputation/M +amputee/MS +amt +amulet/MS +amuse/LGDS +amusement/MS +amusing/Y +amygdala +amylase/M +amyloid +an/CS +anabolism/M +anachronism/SM +anachronistic +anachronistically +anaconda/SM +anaemia/M +anaemic +anaemically +anaerobe/SM +anaerobic +anaerobically +anaesthesia/M +anaesthesiologist/SM +anaesthesiology/M +anaesthetic/MS +anaesthetisation/M +anaesthetise/GDS +anaesthetist/MS +anagram/MS +anal/Y +analgesia/M +analgesic/SM +analogical/Y +analogise/GDS +analogous/YP +analogousness/M +analogue/SM +analogy/SM +analysable +analysand/MS +analyse/ADSG +analyser/SM +analysis/AM +analyst/SM +analytic/S +analytical/Y +anapest/SM +anapestic/MS +anarchic +anarchically +anarchism/M +anarchist/MS +anarchistic +anarchy/M +anathema/SM +anathematise/DSG +anatomic +anatomical/Y +anatomise/DSG +anatomist/SM +anatomy/SM +ancestor/SM +ancestral/Y +ancestress/MS +ancestry/SM +anchor/MDGS +anchorage/MS +anchorite/MS +anchorman/M +anchormen +anchorpeople +anchorperson/SM +anchorwoman/M +anchorwomen +anchovy/SM +ancient/SPMRYT +ancientness/M +ancillary/SM +and +andante/SM +andiron/SM +androgen/M +androgenic +androgynous +androgyny/M +android/SM +anecdotal/Y +anecdote/MS +anemometer/SM +anemone/SM +anent +aneurysm/SM +anew +angel/MS +angelfish/MS +angelic +angelica/M +angelical/Y +anger/GMDS +angina/M +angioplasty/SM +angiosperm/SM +angle/MZGDRS +angler/M +angleworm/MS +anglicise/GDS +anglicism/S +angling/M +anglophile/S +anglophone/S +angora/MS +angostura +angrily +angry/TR +angst/M +angstrom/MS +anguish/GMDS +angular +angularity/SM +angulation +anhydrous +aniline/M +anilingus +animadversion/MS +animadvert/GSD +animal/MS +animalcule/SM +animate/ADSGN +animated/Y +animation/AM +animations +animator/MS +anime/M +animism/M +animist/SM +animistic +animosity/SM +animus/M +anion/MS +anionic +anise/M +aniseed/M +anisette/M +ankh/M +ankhs +ankle/MS +anklebone/MS +anklet/MS +annalist/SM +annals/M +anneal/GDS +annelid/MS +annex/GMDS +annexation/MS +annihilate/DSGN +annihilation/M +annihilator/SM +anniversary/SM +annotate/DSXGNV +annotation/M +annotator/MS +announce/DRSLZG +announced/U +announcement/MS +announcer/M +annoy/GDS +annoyance/MS +annoying/Y +annual/MYS +annualised +annuitant/SM +annuity/SM +annul/LS +annular +annulled +annulling +annulment/SM +annulus +annunciation/SM +anode/MS +anodise/GDS +anodyne/MS +anoint/GDLS +anointment/M +anomalous/Y +anomaly/SM +anon/S +anonymity/M +anonymous/Y +anopheles/M +anorak/MS +anorectic/SM +anorexia/M +anorexic/MS +another +answer/BMDGS +answerable/U +answered/U +answerphone/S +ant/SMD +antacid/SM +antagonise/DSG +antagonism/SM +antagonist/SM +antagonistic +antagonistically +antarctic +ante/SM +anteater/MS +antebellum +antecedence/M +antecedent/SM +antechamber/SM +antedate/GDS +antediluvian +anteing +antelope/MS +antenatal +antenna/SM +antennae +anterior +anteroom/MS +anthem/MS +anther/MS +anthill/SM +anthologise/DSG +anthologist/SM +anthology/SM +anthracite/M +anthrax/M +anthropocentric +anthropoid/MS +anthropological/Y +anthropologist/SM +anthropology/M +anthropomorphic +anthropomorphically +anthropomorphise +anthropomorphism/M +anthropomorphous +anti/SM +antiabortion +antiabortionist/MS +antiaircraft +antibacterial/MS +antibiotic/MS +antibody/SM +antic/MS +anticancer +anticipate/GNXDS +anticipated/U +anticipation/M +anticipatory +anticked +anticking +anticlerical +anticlimactic +anticlimactically +anticlimax/MS +anticline/SM +anticlockwise +anticoagulant/MS +anticommunism/M +anticommunist/SM +anticyclone/SM +anticyclonic +antidemocratic +antidepressant/MS +antidote/MS +antifascist/MS +antiferromagnetic +antifreeze/M +antigen/SM +antigenic +antigenicity/M +antihero/M +antiheroes +antihistamine/SM +antiknock/M +antilabour +antilogarithm/SM +antimacassar/MS +antimalarial +antimatter/M +antimicrobial +antimissile +antimony/M +antineutrino/SM +antineutron/MS +antinuclear +antioxidant/MS +antiparticle/SM +antipasti +antipasto/MS +antipathetic +antipathy/SM +antipersonnel +antiperspirant/SM +antiphon/SM +antiphonal/MYS +antipodal/S +antipodean/MS +antipodes/M +antipollution +antipoverty +antiproton/MS +antiquarian/SM +antiquarianism/M +antiquary/SM +antiquate/GDS +antique/DSMG +antiquity/SM +antirrhinum/S +antiscience +antisemitic +antisemitism/M +antisepsis/M +antiseptic/SM +antiseptically +antiserum/MS +antislavery +antisocial/Y +antispasmodic/MS +antisubmarine +antitank +antitheses +antithesis/M +antithetic +antithetical/Y +antitoxin/MS +antitrust +antivenin/MS +antivenom +antiviral/MS +antivirus +antivivisectionist/MS +antiwar +antler/MDS +antonym/SM +antonymous +antrum +antsy/TR +anus/MS +anvil/MS +anxiety/SM +anxious/YP +anxiousness/M +any +anybody/SM +anyhow +anymore +anyone/M +anyplace +anything/SM +anytime +anyway/S +anywhere +anywise +aorta/MS +aortic +apace +apart +apartheid/M +apartment/MS +apathetic +apathetically +apathy/M +apatite/M +ape/DSMG +apelike +aperitif/MS +aperture/SM +apex/MS +aphasia/M +aphasic/MS +aphelia +aphelion/SM +aphid/MS +aphorism/MS +aphoristic +aphoristically +aphrodisiac/SM +apiarist/SM +apiary/SM +apical/Y +apiece +apish/Y +aplenty +aplomb/M +apocalypse/SM +apocalyptic +apocrypha/M +apocryphal/Y +apogee/MS +apolitical/Y +apologetic/U +apologetically +apologia/SM +apologise/GDS +apologist/MS +apology/SM +apoplectic +apoplexy/SM +apoptosis +apoptotic +apostasy/SM +apostate/SM +apostatise/GDS +apostle/MS +apostleship/M +apostolic +apostrophe/MS +apothecary/SM +apothegm/SM +apotheoses +apotheosis/M +app/SM +appal/S +appalled +appalling/Y +appaloosa/MS +apparatchik/S +apparatus/MS +apparel/MS +apparelled +apparelling +apparent/Y +apparition/SM +appeal/GMDS +appealing/UY +appear/AESDG +appearance/EAMS +appease/LZGDRS +appeasement/SM +appeaser/M +appellant/SM +appellate/XN +appellation/M +append/GDS +appendage/SM +appendectomy/SM +appendices +appendicitis/M +appendix/MS +appertain/GDS +appetiser/MS +appetising/Y +appetite/SM +applaud/ZGDRS +applauder/M +applause/M +apple/MS +applejack/M +applesauce/M +applet/MS +appliance/SM +applicability/M +applicable/I +applicably +applicant/SM +application/AM +applicator/SM +applier/MS +applique/DSM +appliqueing +apply/ANXGDS +appoint/AELSVGD +appointee/SM +appointment's/A +appointment/ESM +apportion/AGDLS +apportionment/AM +appose/GDS +apposite/YNVP +appositeness/M +apposition/M +appositive/SM +appraisal/AMS +appraise/ADSG +appraiser/MS +appreciable/I +appreciably/I +appreciate/DSXGNV +appreciated/U +appreciation/M +appreciative/Y +appreciator/MS +appreciatory +apprehend/GDS +apprehension/MS +apprehensive/YP +apprehensiveness/M +apprentice/DSMG +apprenticeship/MS +apprise/GDS +approach/GBMDS +approachable/UI +approbation/EM +approbations +appropriate/PYGNXDS +appropriated/U +appropriateness/IM +appropriation/M +appropriator/SM +approval/EM +approvals +approve/EGDS +approved/U +approving/EY +approx +approximate/DSXYGN +approximation/M +appurtenance/SM +appurtenant +apricot/MS +apron/MS +apropos +apse/SM +apt/IYPT +apter +aptitude/SM +aptness/IM +aqua/SM +aquaculture/M +aqualung/MS +aquamarine/SM +aquanaut/MS +aquaplane/MGDS +aquarium/MS +aquatic/SM +aquatically +aquatics/M +aquatint/S +aquavit/M +aqueduct/MS +aqueous +aquifer/SM +aquiline +arabesque/MS +arability/M +arachnid/MS +arachnophobia +arbiter/SM +arbitrage/MZGDRS +arbitrager/M +arbitrageur/SM +arbitrament/SM +arbitrarily +arbitrariness/M +arbitrary/P +arbitrate/GNDS +arbitration/M +arbitrator/MS +arboreal +arboretum/SM +arborvitae/SM +arbour/MS +arbutus/MS +arc/SMDG +arcade/MS +arcane +arch/PZTGVMDRSY +archaeological/Y +archaeologist/SM +archaeology/M +archaic +archaically +archaism/MS +archaist/MS +archangel/MS +archbishop/SM +archbishopric/SM +archdeacon/SM +archdiocesan +archdiocese/MS +archduchess/MS +archduke/MS +archenemy/SM +archer/M +archery/M +archetypal +archetype/MS +archfiend/MS +archiepiscopal +archipelago/MS +architect/SM +architectonic/S +architectonics/M +architectural/Y +architecture/MS +architrave/SM +archival +archive/DSMG +archivist/MS +archness/M +archway/SM +arctic/MS +ardent/Y +ardour/MS +arduous/YP +arduousness/M +are/SMB +area/SM +areal +aren't +arena/MS +argent/M +arginine +argon/M +argosy/SM +argot/MS +arguable/IU +arguably/U +argue/ZGDRS +arguer/M +argument/MS +argumentation/M +argumentative/PY +argumentativeness/M +argyle/MS +aria/SM +arid/Y +aridity/M +aright +arise/GS +arisen +aristocracy/SM +aristocrat/SM +aristocratic +aristocratically +arithmetic/M +arithmetical/Y +arithmetician/MS +ark/SM +arm's +arm/EAGDS +armada/MS +armadillo/SM +armament/AEM +armaments +armature/MS +armband/MS +armchair/MS +armed/U +armful/MS +armhole/SM +armistice/SM +armlet/MS +armload/S +armorial +armour/MDRZGS +armoured/U +armourer/M +armoury/SM +armpit/MS +armrest/SM +army/SM +aroma/MS +aromatherapist/MS +aromatherapy/M +aromatic/MS +aromatically +arose +around +arousal/M +arouse/GDS +arpeggio/MS +arr +arraign/DGSL +arraignment/SM +arrange/AESDLG +arrangement's/E +arrangement/ASM +arranger/SM +arrant +arras/MS +array/EGMDS +arrears/M +arrest/AGMDS +arrhythmia/M +arrhythmic +arrhythmical +arrival/MS +arrive/GDS +arrogance/M +arrogant/Y +arrogate/GNDS +arrogation/M +arrow/MS +arrowhead/MS +arrowroot/M +arroyo/MS +arse/DSMG +arsehole/SM! +arsenal/MS +arsenic/M +arson/M +arsonist/SM +art/SM +artefact/MS +arterial +arteriole/MS +arteriosclerosis/M +artery/SM +artful/PY +artfulness/M +arthritic/MS +arthritis/M +arthropod/MS +arthroscope/SM +arthroscopic +arthroscopy +artichoke/SM +article/MDS +articulacy/I +articular +articulate/YGNPDSX +articulateness/IM +articulation/M +artifice/RSMZ +artificer/M +artificial/Y +artificiality/M +artillery/M +artilleryman/M +artillerymen +artiness/M +artisan/MS +artist/MS +artiste/MS +artistic/I +artistically +artistry/M +artless/PY +artlessness/M +artsy/TR +artwork/MS +arty/PTR +arugula +arum/SM +asap +asbestos/M +ascend/AGDS +ascendance/M +ascendancy/M +ascendant/SM +ascension/MS +ascent/MS +ascertain/GDSBL +ascertainment/M +ascetic/MS +ascetically +asceticism/M +ascot/MS +ascribe/GBDS +ascription/M +aseptic +aseptically +asexual/Y +asexuality/M +ash/MDNSG +ashamed/UY +ashcan/MS +ashlar/MS +ashore +ashram/MS +ashtray/SM +ashy/TR +aside/MS +asinine/Y +asininity/SM +ask/SDG +askance +asked/U +askew +aslant +asleep +asocial +asp/SMNX +asparagus/M +aspartame/M +aspect/MS +aspen/M +asperity/SM +aspersion/MS +asphalt/MDGS +asphodel/SM +asphyxia/M +asphyxiate/DSXGN +asphyxiation/M +aspic/MS +aspidistra/MS +aspirant/MS +aspirate/MGNDSX +aspiration/M +aspirator/SM +aspire/GDS +aspirin/MS +ass/MS +assail/GBDS +assailable/U +assailant/SM +assassin/SM +assassinate/GNXDS +assassination/M +assault/MDRGS +assay/ZGMDRS +assayer/M +assemblage/SM +assemble/AEGSD +assembler/MS +assemblies +assembly/AM +assemblyman/M +assemblymen +assemblywoman/M +assemblywomen +assent/GMDS +assert/AGVDS +assertion/AM +assertions +assertive/YP +assertiveness/M +assess/ALGDS +assessment/ASM +assessor/MS +asset/MS +asseverate/DSGN +asseveration/M +assiduity/M +assiduous/PY +assiduousness/M +assign's +assign/ALGDS +assignable +assignation/MS +assigned/U +assignee/M +assigner/MS +assignment/AMS +assignor/MS +assimilate/DSGN +assimilated/U +assimilation/M +assist/GVMDS +assistance/M +assistant/SM +assisted/U +assize/MS +assn +assoc +associate's +associate/EDSGNV +association/EM +associations +associativity +assonance/M +assonant/MS +assort/GLDS +assortative +assortment/MS +asst +assuage/GDS +assume/BGDS +assumption/SM +assumptive +assurance/ASM +assure/AGDS +assured/MYS +astatine/M +aster/EMS +asterisk/GMDS +astern +asteroid/MS +asthma/M +asthmatic/SM +asthmatically +astigmatic +astigmatism/SM +astir +astonish/DSLG +astonishing/Y +astonishment/M +astound/GDS +astounding/Y +astraddle +astrakhan/M +astral +astray +astride +astringency/M +astringent/SMY +astrolabe/SM +astrologer/SM +astrological/Y +astrologist/MS +astrology/M +astronaut/MS +astronautic/S +astronautical +astronautics/M +astronomer/SM +astronomic +astronomical/Y +astronomy/M +astrophysical +astrophysicist/MS +astrophysics/M +astute/PYTR +astuteness/M +asunder +asylum/SM +asymmetric +asymmetrical/Y +asymmetry/SM +asymptomatic +asymptotic +asymptotically +asynchronous/Y +at +atavism/M +atavist/SM +atavistic +ataxia/M +ataxic/MS +ate +atelier/SM +atheism/M +atheist/MS +atheistic +atherosclerosis/M +atherosclerotic +athirst +athlete/MS +athletic/S +athletically +athleticism +athletics/M +athwart +atilt +atishoo +atlas/MS +atmosphere/MS +atmospheric/S +atmospherically +atmospherics/M +atoll/MS +atom/SM +atomic +atomically +atomise/ZGDRS +atomiser/M +atonal/Y +atonality/M +atone/LGDS +atonement/M +atop +atria +atrial +atrioventricular +atrium/M +atrocious/PY +atrociousness/M +atrocity/SM +atrophy/DSMG +atropine/M +attach/ALGDS +attache/BM +attached/U +attachment/AM +attachments +attack/ZGMDRS +attacker/M +attain/AGDS +attainability/M +attainable/U +attainder/M +attainment/SM +attar/M +attempt's +attempt/ASDG +attend/SDRZG +attendance/SM +attendant/SM +attended/U +attendee/SM +attention/IM +attentions +attentive/IPY +attentiveness/IM +attenuate/DSGN +attenuation/M +attest/SDG +attestation/SM +attested/U +attic/SM +attire/DSMG +attitude/SM +attitudinal +attitudinise/GDS +attn +attorney/MS +attract/SGVDB +attractant/MS +attraction/MS +attractive/UY +attractiveness/M +attribute/DSMGNVBX +attributed/U +attribution/M +attributive/MYS +attrition/M +attune/DSG +atty +atwitter +atypical/Y +aubergine/S +auburn/M +auction/MDGS +auctioneer/SM +audacious/YP +audaciousness/M +audacity/M +audibility/IM +audible/MS +audibly/I +audience/MS +audio/MS +audiological +audiologist/SM +audiology/M +audiometer/SM +audiophile/SM +audiotape/SM +audiovisual/S +audiovisuals/M +audit/GMDS +audition/SMDG +auditor/MS +auditorium/SM +auditory +auger/MS +aught/MS +augment/DRZGS +augmentation/MS +augmentative +augmenter/M +augur/GMDS +augury/SM +august/PTRY +augustness/M +auk/SM +aunt/SM +auntie/SM +aura/MS +aural/Y +aureole/SM +aureus +auricle/SM +auricular +aurora/SM +auscultate/GNDSX +auscultation/M +auspice/SM +auspicious/IY +auspiciousness/M +austere/RYT +austerity/SM +austral +authentic/IU +authentically +authenticate/XGNDS +authenticated/U +authentication/M +authenticity/M +author/SMDG +authoress/MS +authorial +authorisation/SM +authorise/GDS +authorised/U +authoritarian/MS +authoritarianism/M +authoritative/YP +authoritativeness/M +authority/SM +authorship/M +autism/M +autistic +auto/MS +autobahn/SM +autobiographer/SM +autobiographic +autobiographical/Y +autobiography/SM +autoclave/MS +autocracy/SM +autocrat/SM +autocratic +autocratically +autocross +autodidact/SM +autograph/MDG +autographs +autoimmune +autoimmunity/M +automaker/SM +automate/GNDS +automatic/SM +automatically +automation/M +automatise/GDS +automatism/M +automaton/SM +automobile/DSMG +automotive +autonomic +autonomous/Y +autonomy/M +autopilot/SM +autopsy/GDSM +autosuggestion +autoworker/MS +autumn/SM +autumnal +aux +auxiliary/SM +auxin/M +av/RZ +avail/BGMDS +availability/UM +available/U +avalanche/SM +avarice/M +avaricious/Y +avast +avatar/MS +avaunt +avdp +ave +avenge/ZGDRS +avenger/M +avenue/MS +average/MYGDS +averred +averring +averse/XN +aversion/M +avert/GDS +avg +avian +aviary/SM +aviation/M +aviator/MS +aviatrices +aviatrix/MS +avid/Y +avidity/M +avionic/S +avionics/M +avitaminosis/M +avocado/SM +avocation/MS +avocational +avoid/SDGB +avoidable/U +avoidably/U +avoidance/M +avoidant +avoirdupois/M +avouch/DSG +avow/EDGS +avowal/ESM +avowed/Y +avuncular/Y +aw +await/GDS +awake/GS +awaken/AGDS +awakening/SM +award/GMDS +awardee/S +aware/UP +awareness/UM +awash +away +awe/DSMG +aweigh +awesome/YP +awesomeness/M +awestruck +awful/YP +awfuller +awfullest +awfulness/M +awhile +awkward/RYPT +awkwardness/M +awl/SM +awn/GJSM +awning/M +awoke +awoken +awry +axe/DSMG +axial/Y +axiom/SM +axiomatic +axiomatically +axis/M +axle/MS +axletree/SM +axolotl/SM +axon/MS +ayah/M +ayahs +ayatollah/M +ayatollahs +aye/SM +azalea/SM +azimuth/M +azimuths +azure/SM +b/KDT +baa/SMDG +babble/MZGDRS +babbler/M +babe/SM +babel/MS +baboon/MS +babushka/SM +baby/TGDRSM +babyhood/M +babyish +babysat +babysit/S +babysitter/MS +babysitting/M +baccalaureate/SM +baccarat/M +bacchanal/MS +bacchanalia/M +bacchanalian/MS +baccy +bachelor/SM +bachelorhood/M +bacillary +bacilli +bacillus/M +back/SJZGMDR +backache/MS +backbench/S +backbit +backbite/ZGRS +backbiter/M +backbitten +backboard/SM +backbone/MS +backbreaking +backchat +backcloth +backcloths +backcomb/DSG +backdate/GDS +backdoor +backdrop/MS +backer/M +backfield/SM +backfire/MGDS +backgammon/M +background/MRZS +backgrounder/M +backhand/MDRSZG +backhanded/Y +backhander/M +backhoe/MS +backing/M +backlash/MS +backless +backlog/MS +backlogged +backlogging +backpack/ZGMDRS +backpacker/M +backpacking/M +backpedal/S +backpedalled +backpedalling +backrest/SM +backroom/S +backscratching/M +backseat/SM +backside/SM +backslapper/SM +backslapping/M +backslash/MS +backslid +backslide/RSZG +backslider/M +backspace/DSMG +backspin/M +backstabber/MS +backstabbing +backstage/M +backstair/S +backstop/SM +backstopped +backstopping +backstory/S +backstreet/S +backstretch/MS +backstroke/MGDS +backtalk/M +backtrack/SDG +backup/MS +backward/PSY +backwardness/M +backwash/M +backwater/SM +backwoods/M +backwoodsman/M +backwoodsmen +backyard/SM +bacon/M +bacteria/M +bacterial +bactericidal +bactericide/SM +bacteriologic +bacteriological +bacteriologist/SM +bacteriology/M +bacterium/M +bad/MYP +badder +baddest +baddie/MS +bade +badge/MZRS +badger/GMD +badinage/M +badlands/M +badman/M +badmen +badminton/M +badmouth/GD +badmouths +badness/M +baffle/MZGDRSL +bafflement/M +baffler/M +bag/SM +bagatelle/SM +bagel/MS +bagful/MS +baggage/M +bagged +baggie/M +baggily +bagginess/M +bagging +baggy/PTRS +bagpipe/MZRS +bagpiper/M +baguette/MS +bah +baht/SM +bail/SBGMD +bailey/S +bailiff/S +bailiwick/MS +bailout/SM +bailsman/M +bailsmen +bairn/MS +bait/SGMD +baize/M +bake/DRSMZG +baked/U +baker/M +bakery/SM +bakeshop/MS +baklava/M +baksheesh/M +balaclava/MS +balalaika/MS +balance's +balance/UDSG +balboa/SM +balcony/SM +bald/STGPDRY +balderdash/M +baldfaced +baldness/M +baldric/SM +baldy/S +bale/DRSMZG +baleen/M +baleful/PY +balefulness/M +baler/M +balky/RT +ball/SGMD +ballad/SM +balladeer/MS +balladry/M +ballast/GSMD +ballcock/MS +ballerina/SM +ballet/SM +balletic +ballgame/MS +ballgirl/S +ballgown/S +ballistic/S +ballistics/M +balloon/SGMD +balloonist/MS +ballot/SMDG +ballpark/MS +ballplayer/MS +ballpoint/MS +ballroom/MS +balls/DSG +ballsy/RT +bally +ballyhoo/SMDG +balm/SM +balminess/M +balmy/RTP +baloney/M +balsa/MS +balsam/SM +balsamic +baluster/SM +balustrade/MS +bamboo/SM +bamboozle/DSG +ban/SM +banal/Y +banality/SM +banana/SM +band's +band/ESGD +bandage/DSMG +bandanna/MS +bandbox/MS +bandeau/M +bandeaux +bandit/SM +banditry/M +bandleader/S +bandmaster/SM +bandoleer/SM +bandsman/M +bandsmen +bandstand/SM +bandwagon/SM +bandwidth +bandwidths +bandy/DRSTG +bane/SM +baneful +bang/SGMDR +bangle/SM +bani +banish/GLDS +banishment/M +banister/SM +banjo/MS +banjoist/SM +bank/SZGBMDR +bankbook/SM +bankcard/SM +banker/M +banking/M +banknote/SM +bankroll/SGMD +bankrupt/SGMD +bankruptcy/SM +banned +banner/SM +banning +bannock/MS +banns/M +banquet/ZGMDRS +banqueter/M +banquette/SM +banshee/MS +bantam/SM +bantamweight/SM +banter/GSMD +bantering/Y +banyan/SM +banzai/SM +baobab/SM +bap/S +baptise/ZGDRS +baptised/U +baptiser/M +baptism/MS +baptismal +baptist/S +baptistery/SM +bar's +bar/ECUTS +barb/SZGMDR +barbacoa +barbarian/SM +barbarianism/MS +barbaric +barbarically +barbarise/DSG +barbarism/SM +barbarity/SM +barbarous/Y +barbecue/DSMG +barbel/SM +barbell/MS +barber/GMD +barberry/SM +barbershop/MS +barbie/S +barbiturate/SM +barbwire/M +barcarole/SM +bard/SM +bardic +bare/DRSPYG +bareback/D +barefaced/Y +barefoot/D +barehanded +bareheaded +barelegged +bareness/M +barf/SGMDY +barfly/SM +bargain/MDRZGS +bargainer/M +barge/MGDS +bargeman/M +bargemen +barhop/S +barhopped +barhopping +barista/MS +baritone/MS +barium/M +bark's +bark/CSGD +barkeep/ZMRS +barkeeper/M +barker/SM +barley/M +barmaid/MS +barman/M +barmen +barmy/RT +barn/SM +barnacle/MDS +barney/S +barnstorm/SDRZG +barnstormer/M +barnyard/SM +barometer/MS +barometric +barometrically +baron/MS +baronage/MS +baroness/MS +baronet/MS +baronetcy/SM +baronial +barony/SM +baroque/M +barque/SM +barrack/MDGS +barracuda/SM +barrage/MGDS +barre/MGJDS +barred/UEC +barrel/SM +barrelled +barrelling +barren/TPSMR +barrenness/M +barrette/SM +barricade/MGDS +barrier/MS +barring/ECU +barrio/SM +barrister/MS +barroom/MS +barrow/SM +bartender/SM +barter/ZGSMDR +barterer/M +baryon/SM +basal/Y +basalt/M +basaltic +base's +base/CDSLTG +baseball/SM +baseboard/MS +baseless +baseline/MS +basely +baseman/M +basemen +basement/CMS +baseness/M +baser +bash/GMDS +bashful/PY +bashfulness/M +bashing/M +basic/MS +basically +basil/M +basilica/MS +basilisk/MS +basin/MS +basinful/MS +basis/M +bask/SGD +basket/SM +basketball/MS +basketry/M +basketwork/M +basque/S +bass/MS +basset/SM +bassinet/MS +bassist/MS +basso/MS +bassoon/MS +bassoonist/SM +basswood/MS +bast/M +bastard/MS +bastardisation/MS +bastardise/GDS +bastardy/M +baste/ZGNXDRS +baster/M +bastion/M +bat/SM +batch/MDSG +bate/KACGSD +bath/ZGMDRS +bathe/M +bather/M +bathetic +bathhouse/MS +bathing/M +bathmat/MS +bathos/M +bathrobe/SM +bathroom/SM +baths +bathtub/MS +bathwater +bathyscaphe/SM +bathysphere/MS +batik/MS +batiste/M +batman/M +batmen +baton/MS +batsman/M +batsmen +battalion/SM +batted +batten/GSMD +batter/JZGSMDR +batterer/M +battery/SM +batting/M +battle/LDRSMZG +battleaxe/MS +battledore/SM +battledress +battlefield/MS +battlefront/MS +battleground/MS +battlement/SM +battler/M +battleship/SM +batty/RT +bauble/SM +baud/SM +baulk/MDGS +bauxite/M +bawd/SM +bawdily +bawdiness/M +bawdy/PRT +bawl/SGMD +bay/SMDG +bayberry/SM +bayonet/SMDG +bayou/MS +bazaar/SM +bazillion/S +bazooka/SM +bbl +bdrm +be +beach/MDSG +beachcomber/SM +beachfront +beachhead/MS +beachwear/M +beacon/SM +bead/SGMD +beading/M +beadle/SM +beady/RT +beagle/SM +beak/SZMDR +beaker/M +beam/SGMD +bean/SGMD +beanbag/MS +beanfeast/S +beanie/SM +beanpole/MS +beansprout/S +beanstalk/MS +bear/SZGBJMR +bearable/U +bearably/U +beard/MDGS +beardless +bearer/M +bearing/M +bearish/PY +bearishness/M +bearlike +bearskin/MS +beast/MS +beastliness/M +beastly/TPRM +beat/SZGBMNRJ +beatable/U +beaten/U +beater/M +beatific +beatifically +beatification/M +beatify/GXNDS +beating/M +beatitude/SM +beatnik/MS +beau/SM +beaut/MS +beauteous/Y +beautician/SM +beautification/M +beautifier/M +beautiful/Y +beautify/NDRSZG +beauty/SM +beaver/SGMD +bebop/MS +becalm/GSD +became +because +beck/SM +beckon/SGD +becloud/GDS +become/S +becoming/UY +becquerel/S +bed/SM +bedaub/GSD +bedazzle/GDSL +bedazzlement/M +bedbug/SM +bedchamber/S +bedclothes/M +bedded +bedder +bedding/M +bedeck/GSD +bedevil/LS +bedevilled +bedevilling +bedevilment/M +bedfellow/SM +bedhead/S +bedim/S +bedimmed +bedimming +bedizen/GDS +bedlam/SM +bedpan/SM +bedpost/SM +bedraggle/GDS +bedridden +bedrock/SM +bedroll/SM +bedroom/SM +bedside/SM +bedsit/S +bedsitter/S +bedsore/SM +bedspread/SM +bedstead/SM +bedtime/SM +bee/RSMZGJ +beebread/M +beech/MS +beechnut/MS +beef/SGMD +beefburger/SM +beefcake/MS +beefiness/M +beefsteak/MS +beefy/RPT +beehive/MS +beekeeper/MS +beekeeping/M +beeline/MS +been +beep/SZGMDR +beeper/M +beer/M +beery/TR +beeswax/M +beet/SM +beetle/MGDS +beetroot/S +beeves +befall/SGN +befell +befit/S +befitted +befitting/Y +befog/S +befogged +befogging +before +beforehand +befoul/DGS +befriend/SGD +befuddle/GLDS +befuddlement/M +beg/S +began +begat +beget/S +begetter/S +begetting +beggar/MDYGS +beggary/M +begged +begging +begin/S +beginner/SM +beginning/MS +begone +begonia/SM +begot +begotten +begrime/DSG +begrudge/DSG +begrudging/Y +beguile/DRSZGL +beguilement/M +beguiler/M +beguiling/Y +beguine/SM +begum/MS +begun +behalf/M +behalves +behave/GDS +behaviour/SM +behavioural/Y +behaviourism/M +behaviourist/SM +behead/DGS +beheld +behemoth/M +behemoths +behest/MS +behind/MS +behindhand +behold/NRZGS +beholder/M +behove/GDS +beige/M +being/M +bejewel/S +bejewelled +bejewelling +belabour/GSD +belated/Y +belay/GDS +belch/GMDS +beleaguer/GSD +belfry/SM +belie/DS +belief/EUM +beliefs +believable/U +believably/U +believe/EDRSZG +believer/EUMS +believing/U +belittle/LDSG +belittlement/M +bell/SGMD +belladonna/M +bellboy/SM +belle/MS +belled/A +belletrist/MS +belletristic +bellhop/SM +bellicose +bellicosity/M +belligerence/M +belligerency/M +belligerent/MYS +belling/A +bellman/M +bellmen +bellow/MDGS +bellwether/MS +belly/GDSM +bellyache/MGDS +bellybutton/SM +bellyful/MS +belong/JDGS +belonging/M +beloved/SM +below +belt/SGMD +beltway/SM +beluga/MS +belying +bemire/GDS +bemoan/DGS +bemuse/LGDS +bemused/Y +bemusement/M +bench/GMDS +benchmark/MS +bend/BSZGMR +bender/M +bendy/TR +beneath +benedictine +benediction/SM +benedictory +benefaction/SM +benefactor/MS +benefactress/MS +benefice/SM +beneficence/M +beneficent/Y +beneficial/Y +beneficiary/SM +benefit/SMDG +benevolence/SM +benevolent/Y +benighted/Y +benign/Y +benignant +benignity/M +bent/SM +bentonite +bentwood/M +benumb/DSG +benzene/M +benzine/M +benzyl +bequeath/DG +bequeaths +bequest/MS +berate/GDS +bereave/DSLG +bereavement/MS +bereft +beret/MS +berg/SM +beriberi/M +berk/S +berkelium/M +berm/SM +berry/GDSM +berrylike +berserk +berth/GMD +berths +beryl/MS +beryllium/M +beseech/ZGRS +beseecher/M +beseeching/Y +beseem/DSG +beset/S +besetting +beside/S +besiege/ZGDRS +besieger/M +besmear/DSG +besmirch/GDS +besom/MS +besot/S +besotted +besotting +besought +bespangle/DSG +bespatter/GSD +bespeak/SG +bespectacled +bespoke +bespoken +best/SGMD +bestial/Y +bestiality/M +bestiary/SM +bestir/S +bestirred +bestirring +bestow/DGS +bestowal/SM +bestrew/SDG +bestrewn +bestridden +bestride/SG +bestrode +bestseller/MS +bestselling +bet/SM +beta/SM +betake/GS +betaken +betcha +betel/M +bethink/SG +bethought +betide/GDS +betimes +betoken/GDS +betook +betray/DRZGS +betrayal/SM +betrayer/M +betroth/DG +betrothal/SM +betrothed/M +betroths +better/MDGLS +betterment/M +betting +bettor/MS +between +betwixt +bevel/MS +bevelled +bevelling/S +beverage/SM +bevvy/S +bevy/SM +bewail/DGS +beware/GDS +bewhiskered +bewigged +bewilder/LSGD +bewildering/Y +bewilderment/M +bewitch/GLDS +bewitching/Y +bewitchment/M +bey/SM +beyond +bezel/MS +bf +bhaji +bi/SMRZ +biannual/Y +bias/GMDS +biased/U +biathlon/SM +bib/SM +bible/MS +biblical +bibliographer/MS +bibliographic +bibliographical/Y +bibliography/SM +bibliophile/SM +bibulous +bicameral +bicameralism/M +bicarb/MS +bicarbonate/MS +bicentenary/SM +bicentennial/SM +bicep/MS +biceps/M +bicker/MDRZGS +bickerer/M +biconcave +biconvex +bicuspid/MS +bicycle/DRSMZG +bicycler/M +bicyclist/SM +bid/SMG +biddable +bidden/U +bidder/MS +bidding/M +biddy/SM +bide/S +bidet/MS +bidirectional/Y +biennial/MYS +biennium/MS +bier/M +biff/SGD +bifocal/S +bifocals/M +bifurcate/XDSGN +bifurcation/M +big/P +bigamist/SM +bigamous +bigamy/M +bigger +biggest +biggie/MS +biggish +bighead/SM +bighearted/P +bigheartedness/M +bighorn/SM +bight/MS +bigmouth/M +bigmouths +bigness/M +bigot/MDS +bigotry/SM +bigwig/MS +bijou/M +bijoux +bike/DRSMZG +biker/M +bikini/MS +bilabial/MS +bilateral/Y +bilberry/S +bile/M +bilge/MS +bilingual/SMY +bilingualism/M +bilious/P +biliousness/M +bilirubin +bilk/SZGDR +bilker/M +bill/SBJGMD +billboard/MS +billet/GMDS +billfold/SM +billhook/S +billiard/S +billiards/M +billing/M +billingsgate/M +billion/MHS +billionaire/SM +billionth/M +billionths +billow/GMDS +billowy +billy/SM +billycan/S +bimbo/MS +bimetallic/SM +bimetallism/M +bimodal +bimonthly/SM +bin/SM +binary/SM +binaural +bind's +bind/AUGS +binder/MS +bindery/SM +binding/MS +bindweed/M +binge/MDS +bingo/M +binman +binmen +binnacle/SM +binned +binning +binocular/MS +binomial/SM +bio/SM +biochemical/SMY +biochemist/MS +biochemistry/M +biodegradability/M +biodegrade/DSGB +biodiversity/M +bioethics/M +biofeedback/M +biofilm/MS +biog +biographer/SM +biographic +biographical/Y +biography/SM +biol +biologic +biological/Y +biologist/MS +biology/M +biomarker/MS +biomass/M +biomedical +bionic/S +bionically +bionics/M +biophysical +biophysicist/MS +biophysics/M +biopic/MS +biopsy/GDSM +bioreactor/S +biorhythm/MS +biosensor/S +biosphere/SM +biosynthesis +biotech +biotechnological +biotechnology/M +biotin/M +bipartisan +bipartisanship/M +bipartite +biped/MS +bipedal +biplane/MS +bipolar +bipolarity/M +biracial +birch/GMDS +bird/SZGMDR +birdbath/M +birdbaths +birdbrain/SMD +birdcage/S +birder/M +birdhouse/MS +birdie/MDS +birdieing +birdlike +birdlime/M +birdseed/M +birdsong +birdwatcher/SM +birdying +biretta/SM +birth/ZGMDR +birthday/MS +birther/M +birthmark/MS +birthplace/MS +birthrate/MS +birthright/MS +births/A +birthstone/SM +biscuit/SM +bisect/DGS +bisection/MS +bisector/SM +bisexual/MYS +bisexuality/M +bishop/MS +bishopric/SM +bismuth/M +bison/M +bisque/M +bistro/MS +bit/CSMG +bitch/GMDS +bitchily +bitchiness/M +bitchy/PRT +bitcoin/SM +bite/RSMZ +biter/M +biting/Y +bitmap/S +bitten +bitter/PMRYTS +bittern/SM +bitterness/M +bitters/M +bittersweet/MS +bitty/TR +bitumen/M +bituminous +bivalent +bivalve/SM +bivouac/MS +bivouacked +bivouacking +biweekly/SM +biyearly +biz/M +bizarre/Y +bk +bl/DG +blab/SM +blabbed +blabber/DGS +blabbermouth/M +blabbermouths +blabbing +black/PXTGMDNRYS +blackamoor/MS +blackball/SGMD +blackberry/GSM +blackbird/SM +blackboard/MS +blackcurrant/S +blacken/DG +blackface +blackguard/SM +blackhead/MS +blacking/M +blackish +blackjack/MDGS +blackleg/S +blacklist/MDSG +blackmail/MDRSZG +blackmailer/M +blackness/M +blackout/SM +blacksmith/M +blacksmiths +blacksnake/SM +blackthorn/SM +blacktop/SM +blacktopped +blacktopping +bladder/MS +blade/MDS +blag/S +blagged +blagging +blah/M +blahs/M +blame/MGDRS +blameable +blameless/YP +blamelessness/M +blameworthiness/M +blameworthy/P +blammo +blanch/GDS +blancmange/MS +bland/PTRY +blandish/DSLG +blandishment/SM +blandness/M +blank/TGPMDRYS +blanket/GMDS +blankness/M +blare/MGDS +blarney/SMDG +blase +blaspheme/ZGDRS +blasphemer/M +blasphemous/Y +blasphemy/SM +blast/ZGMDRS +blaster/M +blastoff/MS +blat/S +blatancy/SM +blatant/Y +blather/SMDG +blaze/MZGDRS +blazer/M +blazon/MDGS +bldg +bleach/MDRSZG +bleached/U +bleacher/M +bleak/TPRY +bleakness/M +blear +blearily +bleariness/M +bleary/PRT +bleat/GMDS +bleed/ZGRS +bleeder/M +bleeding/M +bleep/ZGMDRS +bleeper/M +blemish/GMDS +blemished/U +blench/DSG +blend/ZGMDRS +blender/M +bless/GDSJ +blessed/YP +blessedness/M +blessing/M +bletch +blew +blight/ZGMDRS +blimey +blimp/MS +blimpish +blind/PZTGMDRYS +blinder/M +blindfold/SMDG +blinding/Y +blindness/M +blindside/DSG +blini/MS +blink/ZGMDRS +blinker/MDG +blintz/MS +blintze/M +blip/SM +bliss/M +blissful/YP +blissfulness/M +blister/GMDS +blistering/Y +blistery +blithe/PYTR +blitheness/M +blither/G +blithesome +blitz/GMDS +blitzkrieg/MS +blivet/S +blizzard/SM +bloat/ZGDRS +bloatware +blob/SM +blobbed +blobbing +bloc/SM +block's +block/UGDS +blockade/MZGDRS +blockader/M +blockage/MS +blockbuster/SM +blockbusting/M +blockchain/MS +blocker/MS +blockhead/SM +blockhouse/MS +blog/SM +blogged +blogger/MS +blogging +bloke/MS +blokish +blond/PTMRS +blonde/MS +blondish +blondness/M +blood/GMDS +bloodbath/M +bloodbaths +bloodcurdling +bloodhound/SM +bloodily +bloodiness/M +bloodless/YP +bloodlessness/M +bloodletting/M +bloodline/SM +bloodmobile/MS +bloodshed/M +bloodshot +bloodstain/SMD +bloodstock/M +bloodstream/SM +bloodsucker/SM +bloodsucking +bloodthirstily +bloodthirstiness/M +bloodthirsty/RPT +bloody/PTGDRS +bloom/ZGMDRS +bloomer/M +bloop/ZGMDRS +blooper/M +blossom/GMDS +blossomy +blot/SM +blotch/GMDS +blotchy/TR +blotted +blotter/MS +blotting +blotto +blouse/MGDS +blow/SZGMR +blower/M +blowfly/SM +blowgun/MS +blowhard/MS +blowhole/S +blowjob/SM +blowlamp/S +blown +blowout/SM +blowpipe/SM +blowsy/RT +blowtorch/MS +blowup/MS +blowy/TR +blubber/GSMD +blubbery +bludgeon/MDGS +blue/DRSPMTG +bluebell/MS +blueberry/SM +bluebird/MS +bluebonnet/SM +bluebottle/SM +bluefish/MS +bluegill/MS +bluegrass/M +blueish +bluejacket/SM +bluejeans/M +blueness/M +bluenose/MS +bluepoint/MS +blueprint/MDGS +bluestocking/SM +bluesy/RT +bluet/MS +bluff/ZTGPMDRYS +bluffer/M +bluffness/M +bluing/M +bluish +blunder/MDRZGS +blunderbuss/MS +blunderer/M +blunt/PTGDRYS +bluntness/M +blur/SM +blurb/MS +blurred +blurriness/M +blurring +blurry/TRP +blurt/GDS +blush/ZGMDRS +blusher/M +bluster/MDRSZG +blusterer/M +blusterous +blustery +blvd +boa/SM +boar/SM +board/ZGMDRS +boarder/M +boarding/M +boardinghouse/MS +boardroom/MS +boardwalk/MS +boast/ZGMDRS +boaster/M +boastful/PY +boastfulness/M +boat/SZGMDR +boater/M +boathouse/MS +boating/M +boatload/S +boatman/M +boatmen +boatswain/SM +boatyard/S +bob/SM +bobbed +bobbin/MS +bobbing +bobble/MGDS +bobby/SM +bobbysoxer/SM +bobcat/MS +bobolink/SM +bobsled/SM +bobsledded +bobsledder/MS +bobsledding +bobsleigh/M +bobsleighs +bobtail/SM +bobwhite/MS +boccie/M +bock/M +bod/SMDG +bodacious +bode/S +bodega/MS +bodge/GDS +bodice/MS +bodily +bodkin/MS +body/DSM +bodybuilder/SM +bodybuilding/M +bodyguard/MS +bodysuit/SM +bodywork/M +boffin/S +boffo +bog/SM +boga +bogey/GMDS +bogeyman/M +bogeymen +bogged +bogging +boggle/GDS +boggy/TR +bogie/MS +bogon +bogosity +bogus +bogyman/M +bogymen +bohemian/SM +bohemianism/M +boil/SJZGMDR +boiler/M +boilermaker/SM +boilerplate/M +boink/GDS +boisterous/YP +boisterousness/M +bola/SM +bold/PTRY +boldface/DM +boldness/M +bole/SM +bolero/MS +bolivar/MS +bolivares +boll/SM +bollard/S +bollix/GMDS +bollocking/S +bollocks +bologna/M +bolshie +bolster/GMDS +bolt's +bolt/USGD +bolthole/S +bolus/MS +bomb/SJZGMDR +bombard/GDLS +bombardier/MS +bombardment/SM +bombast/M +bombastic +bombastically +bomber/M +bombproof +bombshell/SM +bombsite/S +bonanza/MS +bonbon/MS +bonce/S +bond/SGMD +bondage/M +bondholder/MS +bonding/M +bondman/M +bondmen +bondsman/M +bondsmen +bondwoman/M +bondwomen +bone/DRSMZG +bonehead/SMD +boneless +boner/M +boneshaker/S +boneyard +bonfire/MS +bong/SGMD +bongo/MS +bonhomie/M +boniness/M +bonito/MS +bonk/SZGD +bonnet/MS +bonny/TR +bonobo/MS +bonsai/M +bonus/MS +bony/PTR +boo/SMDHG +boob/SGMD +booby/SM +boodle/MS +booger/S +boogeyman/M +boogeymen +boogie/MDS +boogieing +boogieman/M +boohoo/GMDS +book/SBJGMD +bookbinder/SM +bookbindery/SM +bookbinding/M +bookcase/MS +bookend/MS +bookie/MS +booking/M +bookish +bookkeeper/MS +bookkeeping/M +booklet/MS +bookmaker/SM +bookmaking/M +bookmark/SMDG +bookmobile/SM +bookplate/MS +bookseller/MS +bookshelf/M +bookshelves +bookshop/SM +bookstall/S +bookstore/MS +bookworm/SM +boolean +boom/SZGMDR +boombox/MS +boomerang/MDGS +boon/SM +boondocks/M +boondoggle/MZGDRS +boondoggler/M +boonies/M +boor/SM +boorish/PY +boorishness/MS +boost/ZGMDRS +booster/M +boot's +boot/ASGD +bootblack/SM +bootee/MS +booth/M +booths +bootlace/S +bootleg/MS +bootlegged +bootlegger/MS +bootlegging/M +bootless +bootstrap/MS +bootstrapped +bootstrapping +booty/SM +booze/MZGDRS +boozer/M +boozy/TR +bop/SM +bopped +bopping +borax/M +bordello/MS +border/GMDS +borderland/MS +borderline/MS +bore/DRSMZG +boredom/M +borehole/S +borer/M +boring/Y +born/IAU +borne +boron/M +borough/M +boroughs +borrow/SDRZGJ +borrower/M +borrowing/M +borscht/M +borstal/S +borzoi/SM +bosh/M +bosom's +bosom/US +bosomy +boss/DSGM +bossily +bossiness/M +bossism/M +bossy/RTP +bot/S +botanic +botanical/Y +botanist/SM +botany/M +botch/DRSZGM +botcher/M +both +bother/SMDG +botheration +bothered/U +bothersome +botnet/SM +bottle/DRSMZG +bottleneck/MS +bottler/M +bottom/SMDG +bottomless +botulinum +botulism/M +boudoir/SM +bouffant/SM +bougainvillea/MS +bough/M +boughs +bought +bouillabaisse/SM +bouillon/MS +boulder/SM +boules +boulevard/SM +bounce/DRSMZG +bouncer/M +bouncily +bounciness/M +bouncy/RTP +bound/ASMGD +boundary/SM +bounden +bounder/SM +boundless/PY +boundlessness/M +bounteous/YP +bounteousness/M +bountiful/YP +bountifulness/M +bounty/SM +bouquet/SM +bourbon/SM +bourgeois/M +bourgeoisie/M +boustrophedon +bout/MS +boutique/SM +boutonniere/MS +bouzouki/MS +bovine/SM +bovver +bow/ZGSMDR +bowdlerisation/MS +bowdlerise/DSG +bowed/U +bowel/SM +bower/M +bowl/MDRZGS +bowleg/SM +bowlegged +bowler/M +bowlful/SM +bowline/SM +bowling/M +bowman/M +bowmen +bowsprit/SM +bowstring/SM +bowwow/SM +box/ZGMDNRS +boxcar/SM +boxer/M +boxing/M +boxlike +boxroom/S +boxwood/M +boxy/RT +boy/SM +boycott/SGMD +boyfriend/MS +boyhood/SM +boyish/YP +boyishness/M +boysenberry/SM +bozo/MS +bpm +bps +bra/SM +brace/MZGDRS +bracelet/MS +bracer/M +bracero/MS +bracken/M +bracket/GMDS +brackish/P +brackishness/M +bract/MS +brad/SM +bradawl/S +bradycardia +brae/SM +brag/SM +braggadocio/SM +braggart/SM +bragged +bragger/MS +bragging +braid/GMDS +braiding/M +braille/M +brain/GMDS +brainchild/M +brainchildren/M +braininess/M +brainless/Y +brainpower +brainstorm/SMDG +brainstorming/M +brainteaser/SM +brainwash/DSG +brainwashing/M +brainwave/S +brainy/PTR +braise/GDS +brake/MGDS +brakeman/M +brakemen +bramble/MS +brambly +bran/M +branch/GMDS +branchlike +brand/ZGMDRS +branded/U +brander/M +brandish/DSG +brandy/GDSM +brash/PTRY +brashness/M +brass/MS +brasserie/MS +brassiere/MS +brassily +brassiness/M +brassy/PTR +brat/SM +bratty/RT +bratwurst/SM +bravado/M +brave/GPMYDTRS +braveness/M +bravery/M +bravo/SM +bravura/SM +brawl/SDRZGM +brawler/M +brawn/M +brawniness/M +brawny/RTP +bray/DGSM +braze/DRSZG +brazen/SDYGP +brazenness/M +brazer/M +brazier/SM +breach/GMDS +bread/GMDHS +breadbasket/SM +breadboard/SM +breadbox/MS +breadcrumb/MS +breadfruit/SM +breadline/MS +breadth/M +breadths +breadwinner/SM +break/BMZGRS +breakable/MS +breakage/MS +breakaway/MS +breakdown/MS +breaker/M +breakfast/MDGS +breakfront/MS +breakneck +breakout/MS +breakpoints +breakthrough/M +breakthroughs +breakup/SM +breakwater/SM +bream/MS +breast/SMDG +breastbone/MS +breastfed +breastfeed/GS +breastplate/SM +breaststroke/SM +breastwork/MS +breath/MDRSZGB +breathalyse/ZGDRS +breathe +breather/M +breathing/M +breathless/PY +breathlessness/M +breaths +breathtaking/Y +breathy/RT +bred/I +breech/MS +breed/SRZGM +breeder/M +breeding/IM +breeze/DSMG +breezeway/SM +breezily +breeziness/M +breezy/RTP +brethren +breve/SM +brevet/SM +brevetted +brevetting +breviary/SM +brevity/M +brew/MDRZGS +brewer/M +brewery/SM +brewpub/SM +briar/SM +bribe/DRSMZG +briber/M +bribery/M +brick/SMDG +brickbat/SM +brickie/S +bricklayer/MS +bricklaying/M +brickwork/M +brickyard/S +bridal/SM +bride/SM +bridegroom/SM +bridesmaid/MS +bridge/DSMG +bridgeable/U +bridgehead/SM +bridgework/M +bridle/DSMG +bridled/U +bridleway/S +brie/M +brief's +brief/CSDTGJ +briefcase/SM +briefer +briefing/CM +briefly +briefness/M +brig/MS +brigade/SM +brigadier/MS +brigand/SM +brigandage/M +brigantine/MS +bright/SPNRYXT +brighten/DRZG +brightener/M +brightness/M +brights/M +brill +brilliance/M +brilliancy/M +brilliant/MYS +brilliantine/M +brim/MS +brimful +brimless +brimmed +brimming +brimstone/M +brindle/DM +brine/M +bring/SRZG +bringer/M +brininess/M +brink/SM +brinkmanship/M +briny/RTP +brioche/SM +briquette/MS +brisk/SDRYTGP +brisket/SM +briskness/M +bristle/DSMG +bristly/TR +britches/M +brittle/PRMT +brittleness/M +bro/SMH +broach/MDSG +broad/SMNRYXTP +broadband/M +broadcast/AMGS +broadcaster/MS +broadcasting/M +broadcloth/M +broaden/DG +broadloom/M +broadminded +broadness/M +broadsheet/SM +broadside/MGDS +broadsword/SM +brocade/DSMG +broccoli/M +brochette/SM +brochure/MS +brogan/SM +brogue/SM +broil/SMDRZG +broiler/M +broke +broken/YP +brokenhearted/Y +brokenness/M +broker/SMDG +brokerage/MS +brolly/S +bromide/SM +bromidic +bromine/M +bronc/SM +bronchi +bronchial +bronchitic +bronchitis/M +bronchus/M +bronco/SM +broncobuster/SM +brontosaur/MS +brontosaurus/MS +bronze/DSMG +brooch/MS +brood/SMDRZG +brooder/M +broodily +brooding/MY +broodmare/MS +broody/RMPT +brook/SMDG +brooklet/SM +broom/SM +broomstick/MS +broth/MRZ +brothel/MS +brother/MY +brotherhood/MS +brotherliness/M +broths +brougham/SM +brought +brouhaha/SM +brow/MS +browbeat/SNG +brown/SMDRPTG +brownfield +brownie/MS +brownish +brownness/M +brownout/SM +brownstone/MS +browse/DRSMZG +browser/M +brr +bruin/SM +bruise/DRSMZG +bruiser/M +bruising/M +bruit/SDG +brunch/MDSG +brunet/SM +brunette/MS +brunt/M +brush/MDSG +brushoff/SM +brushstroke/S +brushwood/M +brushwork/M +brusque/RPYT +brusqueness/M +brutal/Y +brutalisation/M +brutalise/GDS +brutality/SM +brute/SM +brutish/PY +brutishness/M +bu +bub/SM +bubble/DSMG +bubblegum/M +bubbly/RMT +bubo/M +buboes +buccaneer/SGMD +buck/MDGS +buckaroo/SM +buckboard/MS +bucket/SGMD +bucketful/MS +buckeye/MS +buckle's +buckle/UDSG +buckler/MS +buckram/M +bucksaw/MS +buckshot/M +buckskin/MS +buckteeth +bucktooth/MD +buckwheat/M +buckyball/SM +bucolic/MS +bucolically +bud/SM +budded +budding/S +buddy/SM +budge/DSG +budgerigar/MS +budget/SGMD +budgetary +budgie/SM +buff/AMDGS +buffalo/MDG +buffaloes +buffer/SMDG +buffet/SMDGJ +buffoon/SM +buffoonery/M +buffoonish +bug's +bug/CS +bugaboo/SM +bugbear/SM +bugged/C +bugger/SMDG +buggery +bugging/C +buggy/RSMT +bugle/DRSMZG +bugler/M +build/SMRZGJ +builder/M +building/M +buildup/SM +built/AI +builtin +bulb/MS +bulbous +bulge/DSMG +bulgy/RT +bulimarexia/M +bulimia/M +bulimic/SM +bulk/MDGS +bulkhead/MS +bulkiness/M +bulky/RTP +bull/MDGS +bulldog/SM +bulldogged +bulldogging +bulldoze/ZGDRS +bulldozer/M +bullet/SMD +bulletin/MDGS +bulletproof/SDG +bullfight/SMRZG +bullfighter/M +bullfighting/M +bullfinch/MS +bullfrog/MS +bullhead/MDS +bullheaded/PY +bullheadedness/M +bullhorn/MS +bullion/M +bullish/YP +bullishness/M +bullock/SM +bullpen/SM +bullring/MS +bullseye +bullshit/MS! +bullshitted/! +bullshitter/SM! +bullshitting/! +bullwhip/S +bully/DSMG +bulrush/MS +bulwark/MS +bum/SM +bumbag/S +bumble/DRSZG +bumblebee/SM +bumbler/M +bumf +bummed +bummer/SM +bummest +bumming +bump/MDRZGS +bumper/M +bumph +bumpiness/M +bumpkin/MS +bumptious/PY +bumptiousness/M +bumpy/PRT +bun/SM +bunch/MDSG +bunchy/RT +bunco/SMDG +bundle/DSMG +bung/MDGS +bungalow/MS +bungee/SM +bunghole/MS +bungle/DRSMZG +bungler/M +bunion/SM +bunk's +bunk/CDGS +bunker/SM +bunkhouse/SM +bunkum/M +bunny/SM +bunt/MDGSJ +bunting/M +buoy/MDGS +buoyancy/M +buoyant/Y +bur/SMY +burble/DSMG +burbs/M +burden's +burden/USGD +burdensome +burdock/M +bureau/SM +bureaucracy/SM +bureaucrat/MS +bureaucratic +bureaucratically +bureaucratisation/M +bureaucratise/GDS +burg/MRZS +burgeon/DSG +burger/M +burgh/MRZ +burgher/M +burghs +burglar/MS +burglarise/GDS +burglarproof +burglary/SM +burgle/DSG +burgomaster/SM +burgundy/SM +burial/ASM +burka/SM +burl/MDS +burlap/M +burlesque/MGDS +burliness/M +burly/RPT +burn/MDRZGSB +burnable/SM +burner/M +burnish/ZGMDRS +burnisher/M +burnoose/MS +burnout/MS +burnt +burp/MDGS +burqa/SM +burr/MDGS +burrito/MS +burro/SM +burrow/SMDRZG +burrower/M +bursa/M +bursae +bursar/SM +bursary/SM +bursitis/M +burst/SMG +bury/ADSG +bus/AMS +busboy/SM +busby/SM +busgirl/MS +bush/MDSGJ +bushel/SM +bushelled +bushelling/S +bushiness/M +bushing/M +bushman/M +bushmaster/SM +bushmen +bushwhack/DRSZG +bushwhacker/M +bushy/RPT +busily +business/MS +businesslike +businessman/M +businessmen +businessperson/SM +businesswoman/M +businesswomen +busk/DRZGS +buskin/SM +busload/S +buss/MDSG +bussing/M +bust/MDRZGS +buster/M +bustle/DSMG +busty/RZT +busy/DRSTGP +busybody/SM +busyness/M +busywork/M +but/ACS +butane/M +butch/MRSZ +butcher/MDG +butchery/SM +butler/SM +butt/MDRZGS +butte/SM +butted/A +butter/MDG +butterball/MS +buttercream +buttercup/SM +butterfat/M +butterfingered +butterfingers/M +butterfly/GDSM +buttermilk/M +butternut/SM +butterscotch/M +buttery/TRSM +butting/A +buttock/SM +button's +button/USDG +buttonhole/DSMG +buttonwood/MS +buttress/MDSG +butty/S +buxom +buy/ZGSMR +buyback/SM +buyer/M +buyout/SM +buzz/MDRSZG +buzzard/MS +buzzer/M +buzzkill/SM +buzzword/SM +bx +bxs +by/M +bye/SM +bygone/SM +bylaw/SM +byline/SM +bypass/GMDS +bypath/M +bypaths +byplay/M +byproduct/MS +byre/S +byroad/SM +bystander/MS +byte/MS +byway/SM +byword/SM +byzantine +c/IES +ca +cab/SMRZ +cabal/MS +cabala's +caballero/MS +cabana/SM +cabaret/SM +cabbage/MS +cabbed +cabbing +cabby/SM +cabdriver/SM +cabin/MS +cabinet/SM +cabinetmaker/MS +cabinetmaking/M +cabinetry/M +cabinetwork/M +cable/MGDS +cablecast/GMS +cablegram/MS +cabochon/SM +caboodle/M +caboose/SM +cabriolet/SM +cabstand/SM +cacao/MS +cache/MGDS +cachepot/SM +cachet/MS +cackle/MZGDRS +cackler/M +cacophonous +cacophony/SM +cacti +cactus/M +cad/SM +cadaver/SM +cadaverous +caddie/MDS +caddish/YP +caddishness/M +caddying +cadence/DSM +cadenza/SM +cadet/MS +cadge/ZGDRS +cadger/M +cadmium/M +cadre/MS +caducei +caduceus/M +caesium/M +caesura/SM +cafe/SM +cafeteria/MS +cafetiere/S +caff/CS +caffeinated +caffeine/M +cage/DSMG +cagey +cagier +cagiest +cagily +caginess/M +cagoule/S +cahoot/MS +caiman/MS +cairn/MS +caisson/SM +caitiff/SM +cajole/ZGLDRS +cajolement/M +cajoler/M +cajolery/M +cake/DSMG +cakewalk/SM +cal +calabash/MS +calaboose/SM +calamari/SM +calamine/M +calamitous/Y +calamity/SM +calcareous +calciferous +calcification/M +calcify/GNDS +calcimine/DSMG +calcine/DSG +calcite/M +calcium/M +calculable/I +calculate/AGNVDSX +calculated/Y +calculating/Y +calculation/AM +calculator/SM +calculi +calculus/M +caldera/SM +calendar/MDGS +calf/M +calfskin/M +calibrate/GNDSX +calibration/M +calibrator/SM +calibre/SM +calico/M +calicoes +californium/M +caliper/SGMD +caliph/M +caliphate/MS +caliphs +calisthenics's +call/ASGMD +calla/MS +callable +callback/MS +called/U +caller/MS +calligrapher/SM +calligraphic +calligraphist/MS +calligraphy/M +calling/SM +calliope/MS +callisthenic/S +callosity/SM +callous/PGDSY +callousness/M +callow/RPT +callowness/M +callus/MDSG +calm/PSTGMDRY +calmness/M +caloric +calorie/MS +calorific +calumet/MS +calumniate/GNDS +calumniation/M +calumniator/MS +calumnious +calumny/SM +calve/GDS +calypso/MS +calyx/MS +cam/SM +camaraderie/M +camber/MDSG +cambial +cambium/SM +cambric/M +camcorder/SM +came +camel/MS +camelhair +camellia/MS +cameo/MS +camera/MS +cameraman/M +cameramen +camerapeople +cameraperson +camerawoman/M +camerawomen +camerawork +camiknickers +camisole/SM +camouflage/MZGDRS +camouflager/M +camp's +camp/CSGD +campaign/SMDRZG +campaigner/M +campanile/SM +campanologist/MS +campanology/M +camper/MS +campfire/SM +campground/SM +camphor/M +camping/M +campsite/SM +campus/MS +campy/TR +camshaft/SM +can't +can/SMDRZG +canal/MS +canalisation/M +canalise/GDS +canape/MS +canard/MS +canary/SM +canasta/M +cancan/MS +cancel/S +cancellation/SM +cancelled +canceller/SM +cancelling +cancellous +cancer/MS +cancerous +candelabra/SM +candelabrum/M +candid/YP +candida +candidacy/SM +candidate/MS +candidature/SM +candidness/M +candle/MZGDRS +candlelight/M +candlelit +candlepower/M +candler/M +candlestick/MS +candlewick/SM +candour/M +candy/GDSM +candyfloss +cane/SM +canebrake/MS +caner/M +canine/MS +canister/SM +canker/GMDS +cankerous +cannabis/MS +canned +cannelloni/M +cannery/SM +cannibal/SM +cannibalisation/M +cannibalise/GDS +cannibalism/M +cannibalistic +cannily/U +canniness/M +canning +cannon/GMDS +cannonade/MGDS +cannonball/SM +cannot +canny/UTR +canoe/MDS +canoeing +canoeist/SM +canola/M +canon/MS +canonical/Y +canonisation/MS +canonise/DSG +canoodle/DSG +canopy/GDSM +canst +cant's +cant/CZRDGS +cantabile +cantaloupe/SM +cantankerous/PY +cantankerousness/M +cantata/MS +canteen/MS +canter/CM +cantered +cantering +canticle/MS +cantilever/MDGS +canto/MS +canton/MLS +cantonal +cantonment/MS +cantor/MS +canvas/MGDS +canvasback/SM +canvass/MDRSZG +canvasser/M +canyon/MGS +cap/SMDRBZ +capabilities +capability/IM +capable/I +capably/I +capacious/PY +capaciousness/M +capacitance/M +capacities +capacitor/SM +capacity/IM +caparison/MDGS +cape/SM +caper/GMD +capeskin/M +capillarity/M +capillary/SM +capital/MSY +capitalisation/M +capitalise/ADSG +capitalism/M +capitalist/SM +capitalistic +capitalistically +capitation/CSM +capitol/SM +capitulate/ADSXGN +capitulation/AM +caplet/MS +capo/SM +capon/MS +capped/UA +capping/UA +cappuccino/SM +caprice/SM +capricious/PY +capriciousness/M +capsicum/SM +capsize/DSG +capstan/SM +capstone/MS +capsular +capsule/DSMG +capsulise/DSG +capt +captain/SMDG +captaincy/SM +caption/SMDG +captious/YP +captiousness/M +captivate/DSGN +captivation/M +captivator/SM +captive/SM +captivity/SM +captor/MS +capture/ADSMG +car/SMDRZG +carafe/MS +caramel/SM +caramelise/DSG +carapace/SM +carat/MS +caravan/SM +caravansary/SM +caravel/SM +caraway/SM +carbide/SM +carbine/SM +carbohydrate/SM +carbolic +carbon/MS +carbonaceous +carbonate/MGNDS +carbonation/M +carboniferous +carbonise/GDS +carborundum/M +carboy/MS +carbs +carbuncle/SM +carbuncular +carburettor/MS +carcass/MS +carcinogen/SM +carcinogenic/MS +carcinogenicity/M +carcinoma/MS +card/ESGMD +cardamom/SM +cardamon/S +cardboard/M +carder/MS +cardholder/S +cardiac +cardiae +cardies +cardigan/SM +cardinal/SMY +cardio +cardiogram/SM +cardiograph/M +cardiographs +cardiologist/MS +cardiology/M +cardiomyopathy +cardiopulmonary +cardiovascular +cardsharp/MRZS +cardsharper/M +care/SM +careen/DGS +career/MDGS +careerism +careerist/SM +carefree +careful/YP +carefuller +carefullest +carefulness/M +caregiver/SM +careless/PY +carelessness/M +carer/M +caress/MDSG +caret/MS +caretaker/MS +careworn +carfare/M +cargo/M +cargoes +carhop/MS +caribou/SM +caricature/MGDS +caricaturist/SM +caries/M +carillon/SM +caring/M +carious +carjack/JSDRZG +carjacker/M +carjacking/M +carload/SM +carmaker/S +carmine/SM +carnage/M +carnal/Y +carnality/M +carnation/IMS +carnelian/MS +carnival/MS +carnivora +carnivore/SM +carnivorous/PY +carnivorousness/M +carny/SM +carob/MS +carol/MS +carolled +caroller/MS +carolling +carom/GMDS +carotene/M +carotid/SM +carousal/SM +carouse/DRSMZG +carousel/SM +carouser/M +carp/SZGMDR +carpal/MS +carpel/MS +carpenter/MDGS +carpentry/M +carper/M +carpet/MDGS +carpetbag/MS +carpetbagged +carpetbagger/MS +carpetbagging +carpeting/M +carpi +carpool/SMDG +carport/SM +carpus/M +carrel/MS +carriage/SM +carriageway/S +carrier/M +carrion/M +carrot/MS +carroty +carry/ZGDRSM +carryall/SM +carrycot/S +carryout +carryover/MS +carsick/P +carsickness/M +cart/SZGMDR +cartage/M +cartel/MS +carter/M +carthorse/SM +cartilage/SM +cartilaginous +cartload/SM +cartographer/SM +cartographic +cartography/M +carton/MS +cartoon/SMDG +cartoonist/MS +cartridge/MS +cartwheel/GMDS +carve/JZGDRS +carver/M +carvery/S +carving/M +caryatid/MS +casaba/MS +cascade/DSMG +cascara/SM +case/LDSJMG +casebook/S +cased/U +caseharden/DGS +casein/M +caseload/MS +casement/MS +casework/ZMR +caseworker/M +cash/GMDS +cashback/M +cashbook/MS +cashew/MS +cashier/GSMD +cashless +cashmere/M +casing/M +casino/MS +cask/SM +casket/MS +cassava/SM +casserole/DSMG +cassette/MS +cassia/MS +cassock/SM +cassowary/SM +cast/ASGM +castanet/MS +castaway/MS +caste/JMZRS +castellated +caster/M +castigate/DSGN +castigation/M +castigator/SM +casting/AM +castle/MGDS +castoff/SM +castor/MS +castrate/GNXDS +castration/M +casual/PMYS +casualness/M +casualty/SM +casuist/SM +casuistic +casuistry/M +cat/SM +cataclysm/MS +cataclysmal +cataclysmic +catacomb/SM +catafalque/MS +catalepsy/M +cataleptic/MS +catalogue/DRSMZG +catalogued/U +cataloguer/M +catalpa/SM +catalyse/GDS +catalysis/M +catalyst/MS +catalytic/M +catamaran/SM +catapult/GMDS +cataract/MS +catarrh/M +catastrophe/MS +catastrophic +catastrophically +catatonia/M +catatonic/SM +catbird/SM +catboat/SM +catcall/GSMD +catch/ZGJLMRS +catchall/MS +catcher/M +catchment/MS +catchpenny +catchphrase/SM +catchword/MS +catchy/RT +catechise/DSG +catechism/SM +catechist/SM +categorical/Y +categorisation/SM +categorise/GDS +category/SM +cater/ZGJDRS +catercorner +caterer/M +caterpillar/MS +caterwaul/SMDG +catfish/MS +catgut/M +catharses +catharsis/M +cathartic/SM +cathedral/SM +catheter/SM +catheterise/DSG +cathode/SM +cathodic +catholic +catholicity/M +cation/MS +catkin/MS +catlike +catnap/MS +catnapped +catnapping +catnip/M +catsuit/S +cattail/SM +catted +cattery/S +cattily +cattiness/M +catting +cattle/M +cattleman/M +cattlemen +catty/TPR +catwalk/SM +caucus/MDSG +caudal/Y +caught/U +cauldron/MS +cauliflower/SM +caulk/ZGMDRS +caulker/M +causal/Y +causality/SM +causation/M +causative +cause/MZGDRS +causeless +causer/M +causerie/SM +causeway/SM +caustic/SM +caustically +causticity/M +cauterisation/M +cauterise/GDS +caution/SMDG +cautionary +cautious/IY +cautiousness/M +cavalcade/MS +cavalier/SMY +cavalry/SM +cavalryman/M +cavalrymen +cave/DRSMZG +caveat/MS +caveman/M +cavemen +cavern/MS +cavernous/Y +caviar/M +cavil/MS +cavilled +caviller/MS +cavilling/S +caving/M +cavitation +cavity/FSM +cavort/DGS +caw/SMDG +cay/CSM +cayenne/M +cayuse/MS +cc +cease/CMGDS +ceasefire/MS +ceaseless/YP +ceaselessness/M +ceca +cecal +cecum/M +cedar/MS +cede/FAGSD +ceder/MS +cedilla/SM +ceilidh +ceilidhs +ceiling/MS +celandine/M +celeb/S +celebrant/SM +celebrate/DSGNX +celebration/M +celebrator/SM +celebratory +celebrity/SM +celeriac +celerity/M +celery/M +celesta/MS +celestial/Y +celibacy/M +celibate/MS +cell/SMD +cellar/MS +cellist/SM +cellmate/SM +cello/MS +cellophane/M +cellphone/MS +cellular/SM +cellulite/M +cellulitis +celluloid/M +cellulose/M +cement/MDRZGS +cementer/M +cementum/M +cemetery/SM +cenotaph/M +cenotaphs +censer/MS +censor/MDGS +censored/U +censorial +censorious/PY +censoriousness/M +censorship/M +censure/BDRSMZG +censurer/M +census/MDSG +cent/SM +centaur/SM +centavo/SM +centenarian/MS +centenary/SM +centennial/MYS +centigrade +centigram/SM +centilitre/MS +centime/SM +centimetre/MS +centipede/SM +central/SMY +centralisation/CM +centralise/CGDS +centraliser/MS +centralism +centralist +centrality/M +centre/MGDS +centreboard/SM +centrefold/SM +centrepiece/SM +centrifugal/Y +centrifuge/DSMG +centripetal/Y +centrism/M +centrist/MS +centurion/SM +century/SM +cephalic +ceramic/SM +ceramicist/SM +ceramics/M +ceramist/MS +cereal/MS +cerebellar +cerebellum/SM +cerebra +cerebral +cerebrate/GNDS +cerebration/M +cerebrovascular +cerebrum/MS +cerement/MS +ceremonial/SMY +ceremonious/UY +ceremoniousness/M +ceremony/SM +cerise/M +cerium/M +cermet/M +cert/S +certain/UY +certainty/USM +certifiable +certifiably +certificate/MGNXDS +certification/M +certify/DSG +certitude/IM +certitudes +cerulean/M +cervical +cervices +cervix/M +cesarean/MS +cessation/MS +cession/KAFSM +cesspit/S +cesspool/MS +cetacean/MS +ceteris +cf +cg +ch/IFVT +chad/S +chafe/GDS +chaff/GMDS +chaffinch/MS +chagrin/GSMD +chain's +chain/UGDS +chainsaw/MDGS +chair/GMDS +chairlift/MS +chairman/M +chairmanship/SM +chairmen +chairperson/SM +chairwoman/M +chairwomen +chaise/MS +chalcedony/M +chalet/MS +chalice/SM +chalk/GMDS +chalkboard/SM +chalkiness/M +chalky/PRT +challenge/DRSMZG +challenged/U +challenger/M +challis/M +chamber/SMD +chamberlain/MS +chambermaid/MS +chambray/M +chameleon/SM +chamois/M +chamomile/MS +champ/ZGMDS +champagne/MS +champion/GMDS +championship/MS +chance/MGDS +chancel/SM +chancellery/SM +chancellor/MS +chancellorship/M +chancery/SM +chanciness/M +chancre/SM +chancy/PRT +chandelier/SM +chandler/MS +change/MZGDRS +changeability/M +changeable/P +changeableness/M +changeably +changed/U +changeless/Y +changeling/SM +changeover/SM +changer/M +changing/U +channel/SM +channelisation/M +channelise/DSG +channelled +channelling +chanson/SM +chant/ZGMDRS +chanter/M +chanteuse/MS +chantey/SM +chanticleer/MS +chaos/M +chaotic +chaotically +chap/SM +chaparral/SM +chapati/S +chapatti/S +chapbook/MS +chapeau/SM +chapel/MS +chaperonage/M +chaperone/DSMG +chaperoned/U +chaplain/MS +chaplaincy/SM +chaplet/SM +chapped +chapping +chappy/S +chapter/SM +char/SM +charabanc/MS +character/MS +characterful +characterisation/SM +characterise/DSG +characteristic/SM +characteristically/U +characterless +charade/SM +charbroil/GDS +charcoal/MS +chard/M +chardonnay/SM +charge/AESDGM +chargeable/A +charged/U +charger/SM +charily +chariness/M +chariot/SM +charioteer/MS +charisma/M +charismatic/MS +charitable/P +charitableness/M +charitably/U +charity/SM +charlady/S +charlatan/SM +charlatanism/M +charlatanry/M +charlie/S +charm/ZGMDRS +charmer/M +charming/Y +charmless +charred +charring +chart/GMDS +charted/U +charter's +charter/ASGD +charterer/MS +chartreuse/M +charwoman/M +charwomen +chary/TRP +chase/MZGDRS +chaser/M +chasm/MS +chassis/M +chaste/PYTR +chasten/DGS +chasteness/M +chastise/DRSZGL +chastisement/SM +chastiser/M +chastity/M +chasuble/SM +chat/SM +chateau/SM +chateaux +chatelaine/SM +chatline/S +chatroom/M +chatted +chattel/MS +chatter/MDRZGS +chatterbox/MS +chatterer/M +chattily +chattiness/M +chatting +chatty/TPR +chauffeur/GMDS +chauvinism/M +chauvinist/SM +chauvinistic +chauvinistically +cheap/PXTNRY +cheapen/DG +cheapness/M +cheapo +cheapskate/MS +cheat/ZGMDRS +cheater/M +check/AGMDS +checkbox +checked/U +checker/MS +checkers/M +checklist/MS +checkmate/MGDS +checkoff/SM +checkout/SM +checkpoint/SM +checkroom/MS +checksum +checkup/MS +cheddar/M +cheek/GMDS +cheekbone/SM +cheekily +cheekiness/M +cheeky/TPR +cheep/GMDS +cheer/ZGMDRS +cheerer/M +cheerful/YP +cheerfuller +cheerfullest +cheerfulness/M +cheerily +cheeriness/M +cheerio/MS +cheerleader/SM +cheerless/PY +cheerlessness/M +cheery/TPR +cheese/MGDS +cheeseboard/S +cheeseburger/SM +cheesecake/SM +cheesecloth/M +cheeseparing/M +cheesiness/M +cheesy/TPR +cheetah/M +cheetahs +chef/SM +chem +chemical/SMY +chemise/MS +chemist/MS +chemistry/M +chemo/M +chemotherapeutic +chemotherapy/M +chemurgy/M +chenille/M +cheque/MZGDRS +chequebook/MS +chequer/MDG +chequerboard/MS +chequers/M +cherish/DSG +cheroot/MS +cherry/SM +chert/M +cherub/MS +cherubic +cherubim +chervil/M +chess/M +chessboard/MS +chessman/M +chessmen +chest/MDS +chesterfield/SM +chestful/SM +chestnut/SM +chesty/TR +chevalier/SM +cheviot/M +chevron/MS +chew/SZGMDR +chewer/M +chewiness/M +chewy/PTR +chg +chge +chi/SM +chiaroscuro/M +chic/PTMR +chicane/MS +chicanery/SM +chichi/MS +chick/XMNS +chickadee/SM +chicken/MDG +chickenfeed/M +chickenhearted +chickenpox/M +chickenshit/S! +chickpea/SM +chickweed/M +chicle/M +chicness/M +chicory/SM +chide/GDS +chiding/Y +chief/TMRYS +chiefdom/M +chieftain/MS +chieftainship/SM +chiffon/M +chiffonier/MS +chigger/MS +chignon/MS +chihuahua/SM +chilblain/SM +child/M +childbearing/M +childbirth/M +childbirths +childcare/M +childhood/SM +childish/YP +childishness/M +childless/P +childlessness/M +childlike +childminder/S +childminding +childproof/GSD +children/M +chill/JPZTGMDRS +chiller/M +chilli/TPMR +chilliness/M +chilling/Y +chillness/M +chilly/S +chime/MZGDRS +chimer/M +chimera/MS +chimeric +chimerical +chimney/MS +chimp/MS +chimpanzee/SM +chin/SM +china/M +chinaware/M +chinchilla/MS +chine/MS +chink/GMDS +chinless +chinned +chinning +chino/MS +chinstrap/MS +chintz/M +chintzy/RT +chinwag/S +chip/SM +chipboard +chipmunk/SM +chipolata/S +chipped +chipper/MS +chippie +chipping/S +chippy/S +chirography/M +chiropodist/MS +chiropody/M +chiropractic/SM +chiropractor/SM +chirp/GMDS +chirpily +chirpy/PTR +chirrup/GMDS +chisel/MS +chiselled +chiseller/MS +chiselling +chit/SM +chitchat/SM +chitchatted +chitchatting +chitin/M +chitinous +chitosan +chitterlings/M +chivalrous/PY +chivalrousness/M +chivalry/M +chive/MS +chivy/GDS +chlamydia/MS +chlamydiae +chloral/M +chlordane/M +chloride/MS +chlorinate/GNDS +chlorination/M +chlorine/M +chlorofluorocarbon/SM +chloroform/SGMD +chlorophyll/M +chloroplast/MS +chm +choc/S +chock/GMDS +chockablock +chocoholic/SM +chocolate/MS +chocolatey +choice/MTRS +choir/MS +choirboy/MS +choirmaster/SM +choke/MZGDRS +chokecherry/SM +choker/M +cholecystectomy +cholecystitis +choler/M +cholera/M +choleric +cholesterol/M +chomp/ZGMDRS +choose/ZGRS +chooser/M +choosiness/M +choosy/TPR +chop/SM +chophouse/SM +chopped +chopper/MDGS +choppily +choppiness/M +chopping +choppy/TPR +chopstick/SM +choral/MYS +chorale/MS +chord/MS +chordal +chordate/SM +chore/MS +chorea/M +choreograph/DRZG +choreographer/M +choreographic +choreographically +choreographs +choreography/M +chorister/SM +choroid/MS +chortle/MZGDRS +chortler/M +chorus/GMDS +chose +chosen +chow/SGMD +chowder/MS +chrism/M +christen/ASGD +christening/MS +christian/U +christology +chromatic +chromatically +chromatin/M +chromatography +chrome/MGDS +chromium/M +chromosomal +chromosome/MS +chronic +chronically +chronicle/DRSMZG +chronicler/M +chronograph/M +chronographs +chronological/Y +chronologist/MS +chronology/SM +chronometer/SM +chrysalis/MS +chrysanthemum/MS +chub/SM +chubbiness/M +chubby/TPR +chuck/GMDS +chuckhole/SM +chuckle/MGDS +chuffed +chug/SM +chugged +chugging +chukka/MS +chum/SM +chummed +chummily +chumminess/M +chumming +chummy/PTR +chump/MS +chunder/GDS +chunk/GMDS +chunkiness/M +chunky/PTR +chunter/DGS +church/MS +churchgoer/SM +churchgoing/M +churchman/M +churchmen +churchwarden/MS +churchwoman +churchwomen +churchyard/SM +churl/MS +churlish/PY +churlishness/M +churn/ZGMDRS +churner/M +chute/MS +chutney/MS +chutzpah/M +chyme/M +chyron/MS +ciabatta/SM +ciao/S +cicada/MS +cicatrices +cicatrix/M +cicerone/SM +ciceroni +cider's +cider/S +cigar/MS +cigarette/MS +cigarillo/MS +cilantro/M +cilia +cilium/M +cinch/GMDS +cinchona/SM +cincture/SM +cinder/GMDS +cine +cinema/MS +cinematic +cinematographer/MS +cinematographic +cinematography/M +cinnabar/M +cinnamon/M +cipher's +cipher/CGDS +cir +circa +circadian +circle/MGDS +circlet/MS +circuit/MDGS +circuital +circuitous/YP +circuitousness/M +circuitry/M +circuity/M +circular/SMY +circularise/DSG +circularity/M +circulate/ADSG +circulation/SM +circulatory +circumcise/XDSGN +circumcised/U +circumcision/M +circumference/MS +circumferential +circumflex/MS +circumlocution/MS +circumlocutory +circumnavigate/XGNDS +circumnavigation/M +circumpolar +circumscribe/GDS +circumscription/MS +circumspect/Y +circumspection/M +circumstance/MGDS +circumstantial/Y +circumvent/DSG +circumvention/M +circus/MS +cirque/MS +cirrhosis/M +cirrhotic/SM +cirri +cirrus/M +cis +cisgender +cistern/MS +cit +citadel/MS +citation/AMS +cite's +cite/IAGSD +citified +citizen/MS +citizenry/M +citizenship/M +citric +citron/MS +citronella/M +citrus/MS +city/SM +citywide +civet/MS +civic/S +civically +civics/M +civil/UY +civilian/MS +civilisation/SM +civilise/GDS +civilised/U +civility/ISM +civvies/M +ck +cl +clack/GMDS +clad/U +cladding/M +clade +claim's +claim/CKEAGDS +claimable/A +claimant/MS +claimed/U +claimer/ECSM +clairvoyance/M +clairvoyant/MS +clam/SM +clambake/MS +clamber/ZGMDRS +clamberer/M +clammed +clammily +clamminess/M +clamming +clammy/PTR +clamorous +clamour/GMDS +clamp/GMDS +clampdown/MS +clan/SM +clandestine/Y +clang/ZGMDRS +clangorous/Y +clangour/M +clank/GMDS +clannish/P +clannishness/M +clansman/M +clansmen +clanswoman +clanswomen +clap/SM +clapboard/MDGS +clapped +clapper/MS +clapperboard/S +clapping/M +claptrap/M +claque/MS +claret/MS +clarification/M +clarify/XDSNG +clarinet/SM +clarinettist/MS +clarion/MDGS +clarity/M +clash/GMDS +clasp's +clasp/UGDS +class/GMDS +classic/MS +classical/MY +classicism/M +classicist/MS +classifiable +classification/CAM +classifications +classified's +classified/U +classifieds +classifier/MS +classify/ACSDGN +classiness/M +classism +classless/P +classmate/MS +classroom/MS +classwork/M +classy/TRP +clatter/GMDS +clausal +clause/MS +claustrophobia/M +claustrophobic +clavichord/SM +clavicle/MS +clavier/MS +claw's +claw/CSGD +clay/M +clayey +clayier +clayiest +clean/BJPZTGDRYS +cleaner/M +cleaning/M +cleanliness/UM +cleanly/UTPR +cleanness/UM +cleanse/ZGDRS +cleanser/M +cleanup/MS +clear/JPTGMDRYS +clearance/SM +clearheaded +clearing/M +clearinghouse/SM +clearness/M +clearway/S +cleat/MS +cleavage/MS +cleave/ZGDRS +cleaver/M +clef/SM +cleft/MS +clematis/MS +clemency/IM +clement/Y +clementine/S +clench/GMDS +clerestory/SM +clergy/SM +clergyman/M +clergymen +clergywoman/M +clergywomen +cleric/MS +clerical/Y +clericalism/M +clerk/GMDS +clerkship/M +clever/PTRY +cleverness/M +clevis/MS +clew/SGMD +cliche/MDS +click/BZGMDRS +clickbait +clicker/M +client/MS +clientele/MS +cliff/MS +cliffhanger/SM +cliffhanging +clifftop/S +clii +climacteric/M +climactic +climate/SM +climatic +climatically +climatologist/SM +climatology/M +climax/MDSG +climb/SMDRZGB +climber/M +climbing/M +clime/SM +clinch/MDRSZG +clincher/M +cling/SMRZG +clinger/M +clingfilm +clingy/RT +clinic/SM +clinical/Y +clinician/SM +clink/SMDRZG +clinker/M +cliometric/S +cliometrician/MS +cliometrics/M +clip/SM +clipboard/MS +clipped +clipper/SM +clipping/SM +clique/SM +cliquey +cliquish/YP +cliquishness/M +clit/SM +clitoral +clitorides +clitoris/MS +clix +cloaca/M +cloacae +cloak's +cloak/USDG +cloakroom/MS +clobber/SMDG +cloche/SM +clock/SMDG +clockwise +clockwork/SM +clod/MS +cloddish +clodhopper/MS +clog's +clog/US +clogged/U +clogging/U +cloisonne/M +cloister/SMDG +cloistral +clomp/SDG +clonal +clone/DSMG +clonidine +clonk/SMDG +clop/MS +clopped +clopping +close/DRSMYTGJP +closefisted +closemouthed +closeness/M +closeout/MS +closet/SMDG +closeup/SM +closing/M +closure/ESM +clot/MS +cloth/M +clothe/UDSG +clotheshorse/MS +clothesline/SM +clothespin/SM +clothier/MS +clothing/M +cloths +clotted +clotting +cloture/SM +cloud/SMDG +cloudburst/SM +clouded/U +cloudiness/M +cloudless +cloudy/RPT +clout/SMDG +clove/RSMZ +cloven +clover/M +cloverleaf/SM +cloverleaves +clown/SMDG +clownish/YP +clownishness/M +cloy/DGS +cloying/Y +club/MS +clubbable +clubbed +clubber/S +clubbing +clubfeet +clubfoot/MD +clubhouse/SM +clubland +cluck/SMDG +clue/MGDS +clueless +clump/SMDG +clumpy/TR +clumsily +clumsiness/M +clumsy/TRP +clung +clunk/SMDRZG +clunker/M +clunky/TR +cluster/MDSG +clutch/GMDS +clutter's +clutter/UDSG +clvi +clvii +clxi +clxii +clxiv +clxix +clxvi +clxvii +cm +cnidarian/MS +co/ESD +coach/MDSG +coachload/S +coachman/M +coachmen +coachwork +coadjutor/MS +coagulant/MS +coagulate/GNDS +coagulation/M +coagulator/MS +coal/MDGS +coalesce/GDS +coalescence/M +coalescent +coalface/MS +coalfield/S +coalition/MS +coalitionist/MS +coalmine/S +coarse/RYTP +coarsen/SDG +coarseness/M +coast/SMDRZG +coastal +coaster/M +coastguard/S +coastline/MS +coat/MDGJS +coating/M +coatroom/S +coattail/SM +coauthor/MDGS +coax/DRSZG +coaxer/M +coaxial +coaxing/Y +cob/SM +cobalt/M +cobber/S +cobble/DRSMZG +cobbler/M +cobblestone/SM +cobnut/S +cobra/SM +cobweb/SM +cobwebbed +cobwebby/RT +coca/M +cocaine/M +cocci/S +coccus/M +coccyges +coccyx/M +cochineal/M +cochlea/SM +cochleae +cochlear +cock/MDGS +cockade/SM +cockamamie +cockatiel/MS +cockatoo/SM +cockatrice/SM +cockchafer/S +cockcrow/SM +cockerel/SM +cockeyed +cockfight/MGS +cockfighting/M +cockily +cockiness/M +cockle/SM +cockleshell/SM +cockney/SM +cockpit/SM +cockroach/MS +cockscomb/SM +cocksucker/MS! +cocksure +cocktail/MS +cocky/RTP +coco/MS +cocoa/SM +coconut/SM +cocoon/SMDG +cod/SM +coda/MS +codded +codding +coddle/DSG +code's +code/CZGDRS +codeine/M +codependency/M +codependent/SM +coder/CM +codex/M +codfish/MS +codger/SM +codices +codicil/SM +codification/M +codifier/M +codify/XDRSNZG +codon/S +codpiece/MS +codswallop +coed/MS +coeducation/M +coeducational +coefficient/MS +coelenterate/MS +coenobite/SM +coenobitic +coenzyme +coequal/MYS +coerce/DRSZGNV +coercer/M +coercion/M +coeval/SMY +coexist/DSG +coexistence/M +coexistent +coextensive +coffee/SM +coffeecake/SM +coffeehouse/MS +coffeemaker/SM +coffeepot/MS +coffer/SM +cofferdam/MS +coffin/SMDG +cog/SM +cogency/M +cogent/Y +cogitate/DSXGNV +cogitation/M +cogitator/MS +cognac/SM +cognate/MS +cognisable +cognisance/AM +cognisant +cognition/AM +cognitional +cognitive/Y +cognomen/SM +cognoscente/M +cognoscenti +cogwheel/SM +cohabit/SGD +cohabitant/MS +cohabitation/M +coheir/SM +cohere/DSG +coherence/IM +coherency/M +coherent/IY +cohesion/M +cohesive/YP +cohesiveness/M +coho/MS +cohort/SM +coif/MS +coiffed +coiffing +coiffure/DSMG +coil's/A +coil/UADGS +coin/MDRZGS +coinage/SM +coincide/DSG +coincidence/MS +coincident +coincidental/Y +coiner/M +coinsurance/M +coir +coital +coitus/M +coke/MGDS +col/S +cola/MS +colander/SM +cold/MRYTPS +coldblooded +coldness/M +coleslaw/M +coleus/MS +coley/S +colic/M +colicky +coliseum/MS +colitis/M +coll +collaborate/DSXGNV +collaboration/M +collaborationist +collaborative/Y +collaborator/MS +collage/SM +collagen +collapse/MGDS +collapsible +collar/SMDG +collarbone/SM +collard/SM +collarless +collate/DSXGN +collateral/MY +collateralise +collation/M +collator/MS +colleague/MS +collect's +collect/ASGVD +collectable/MS +collected/U +collectedly +collection/AMS +collective/MYS +collectivisation/M +collectivise/DSG +collectivism/M +collectivist/SM +collector/MS +colleen/SM +college/SM +collegiality/M +collegian/MS +collegiate +collide/DRSZG +collie/RSMZ +collier/M +colliery/SM +collision/SM +collocate/MGNDSX +collocation/M +colloid/SM +colloidal +colloq +colloquial/Y +colloquialism/SM +colloquies +colloquium/MS +colloquy/M +collude/DSG +collusion/M +collusive +cologne/SM +colon/SM +colonel/SM +colonelcy/M +colones +colonial/SMY +colonialism/M +colonialist/MS +colonisation/ACM +colonise/CAGSD +coloniser/MS +colonist/SM +colonnade/MDS +colonoscopy/SM +colony/SM +colophon/SM +coloration/EM +coloratura/MS +colossal/Y +colossi +colossus/M +colostomy/SM +colostrum/M +colour's +colour/AEGDS +colourant/SM +colouration/EM +colourblind/P +colourblindness/M +coloured's +coloured/U +coloureds +colourfast/P +colourfastness/M +colourful/YP +colourfulness/M +colouring's +colourisation/M +colourise/DSG +colourist/S +colourless/PY +colourlessness/M +colourway/S +colt/MS +coltish +columbine/SM +column/SMD +columnar +columnist/SM +com/JL +coma/MS +comaker/SM +comatose +comb/MDRZGJS +combat/SMDGV +combatant/SM +combativeness/M +combed/U +comber/M +combination/SM +combine's +combine/ADSG +combined/U +combiner/MS +combings/M +combo/SM +combust/SGVD +combustibility/M +combustible/MS +combustion/M +come/IMZGRS +comeback/MS +comedian/MS +comedic +comedienne/MS +comedown/MS +comedy/SM +comeliness/M +comely/RPT +comer's +comestible/SM +comet/SM +comeuppance/SM +comfit's +comfit/ES +comfort/ESMDG +comfortable/P +comfortableness/M +comfortably/U +comforter/MS +comforting/Y +comfortless +comfy/RT +comic/SM +comical/Y +comicality/M +coming/M +comity/M +comm +comma/SM +command/SMDRLZG +commandant/MS +commandeer/GDS +commander/M +commandment/MS +commando/SM +commemorate/XGNVDS +commemoration/M +commemorator/MS +commence/ADSLG +commencement/AM +commencements +commend/ASDBG +commendably +commendation/AMS +commendatory +commensurable +commensurate/IY +comment/GSMD +commentary/SM +commentate/DSG +commentator/SM +commerce/M +commercial/SMY +commercialisation/M +commercialise/GDS +commercialism/M +commie/SM +commingle/DSG +commiserate/GNVDSX +commiseration/M +commissar/SM +commissariat/SM +commissary/SM +commission's +commission/ACSGD +commissionaire/S +commissioner/SM +commit/AS +commitment/MS +committal/SM +committed/AU +committee/SM +committeeman/M +committeemen +committeewoman/M +committeewomen +committer/S +committing/A +commode's +commode/EIS +commodification +commodious/Y +commodity/SM +commodore/SM +common's +common/UPRYT +commonality/S +commonalty/M +commoner/MS +commonness/UM +commonplace/MS +commons +commonsense +commonweal/MH +commonwealth/M +commonwealths +commotion/SM +communal/Y +commune/XDSMGN +communicability/M +communicable/I +communicably +communicant/MS +communicate/GNVDSX +communication/M +communicative/U +communicator/SM +communion/M +communique/SM +communism/M +communist/SM +communistic +community/SM +commutation/MS +commutative +commutativity +commutator/SM +commute/BDRSMZG +commuter/M +comorbidity +comp/MDYGS +compact/TGSMDRYP +compaction +compactness/M +compactor/SM +companion/SBM +companionably +companionship/M +companionway/MS +company/SM +comparability/M +comparable/I +comparably/I +comparative/MYS +compare/BDSG +comparison/MS +compartment/SM +compartmental +compartmentalisation/M +compartmentalise/DSG +compass/GMDS +compassion/M +compassionate/Y +compatibility/IM +compatible/IMS +compatibly/I +compatriot/MS +compeer/SM +compel/S +compelled +compelling/Y +compendious +compendium/SM +compensate/DSXGN +compensated/U +compensation/M +compensatory +compere/DSG +compete/DSG +competence/IM +competences +competencies +competency/IM +competent/IY +competition/SM +competitive/PY +competitiveness/M +competitor/SM +compilation/SM +compile/DRSZG +compiler/M +complacence/M +complacency/M +complacent/Y +complain/DRZGS +complainant/MS +complainer/M +complaint/SM +complaisance/M +complaisant/Y +complected +complement/SGMD +complementary +complete/PYTGNXDRS +completed/U +completeness/IM +completion/M +complex/MSY +complexion/MDS +complexional +complexity/SM +compliance/M +compliant/Y +complicate/GDS +complicated/Y +complication/M +complicit +complicity/M +compliment/MDGS +complimentary/U +comply/NDSXG +compo/S +component/SM +comport/LSGD +comportment/M +compose/AECGSD +composedly +composer/MS +composite/MYGNXDS +composition/CM +compositional +compositor/SM +compost/SGMD +composure/EM +compote/SM +compound/GMDBS +compounded/U +comprehend/SDG +comprehensibility/IM +comprehensible/I +comprehensibly/I +comprehension/IM +comprehensions +comprehensive/PMYS +comprehensiveness/M +compress's +compress/CGVDS +compressed/U +compressible +compression/CM +compressor/SM +comprise/GDS +compromise/MGDS +comptroller/MS +compulsion/MS +compulsive/YP +compulsiveness/M +compulsorily +compulsory/SM +compunction/SM +computation/SM +computational/Y +compute/ADSG +computer/MS +computerate +computerisation/M +computerise/GDS +computing/M +comrade/SMY +comradeship/M +con/GSM +concatenate/XDSGN +concatenation/M +concave/YP +concaveness/M +conceal/SDRZGBL +concealed/U +concealer/M +concealment/M +conceit/SMD +conceited/PY +conceitedness/M +conceivable/I +conceivably/I +conceive/DSGB +concentrate/DSMGNX +concentration/M +concentric +concentrically +concept/SM +conception/SM +conceptional +conceptual/Y +conceptualisation/SM +conceptualise/DSG +concern/UMD +concerned/UY +concerning +concerns +concert's +concert/ESDG +concerted/Y +concertgoer/S +concertina/SGMD +concertise/DSG +concertmaster/MS +concerto/SM +concessionaire/MS +concessional +concessionary +conch/M +conchie/S +conchs +concierge/MS +conciliate/DSGN +conciliation/AM +conciliator/SM +conciliatory +concise/RPYTN +conciseness/M +concision/M +conclave/SM +conclude/DSG +conclusion/MS +conclusive/IYP +conclusiveness/IM +concoct/SDG +concoction/MS +concomitant/MYS +concord/M +concordance/SM +concordant +concordat/SM +concourse/SM +concrete/DSPMYGNX +concreteness/M +concretion/M +concubinage/M +concubine/MS +concupiscence/M +concupiscent +concur/S +concurred +concurrence/SM +concurrency +concurring +concuss/V +concussion/SM +condemn/SDRZG +condemnation/MS +condemnatory +condemner/M +condensate/MNXS +condensation/M +condense/DRSZG +condenser/M +condescending/Y +condescension/M +condign +condiment/MS +condition's +condition/AGSD +conditional/SMY +conditionality +conditioned/U +conditioner/SM +conditioning/M +condo/SM +condolence/SM +condom/SM +condominium/MS +condone/DSG +condor/SM +conduce/DSGV +conduct/MDGV +conductance/M +conductibility/M +conductible +conduction/M +conductivity/M +conductor/MS +conductress/MS +conduit/SM +cone/M +coneys +confab/SM +confabbed +confabbing +confabulate/XDSGN +confabulation/M +confection/SZMR +confectioner/M +confectionery/SM +confederacy/SM +confederate/M +confer/S +conferee/SM +conference/MGS +conferrable +conferral/M +conferred +conferrer/MS +conferring +confessed/Y +confession/SM +confessional/SM +confessor/MS +confetti/M +confidant/MS +confidante/SM +confide/DRSZG +confidence/SM +confident/Y +confidential/Y +confidentiality/M +confider/M +confiding/Y +configuration/S +configure/B +confined/U +confinement/MS +confirm/ASDG +confirmation/ASM +confirmatory +confirmed/U +confiscate/DSGNX +confiscation/M +confiscator/SM +confiscatory +conflagration/MS +conflate/XDSGN +conflation/M +conflict/SGMD +confluence/MS +confluent +conform/ZB +conformable/U +conformal +conformance/M +conformism/M +conformist/SM +conformity/M +confrere/MS +confrontation/SM +confrontational +confuse/RZ +confused/Y +confusing/Y +confutation/M +confute/DSG +conga/SMDG +congeal/SLDG +congealment/M +conger/SM +congeries/M +congest/SDGV +congestion/M +conglomerate/DSXMGN +conglomeration/M +congrats/M +congratulate/XGNDS +congratulation/M +congratulatory +congregant/MS +congregate/GNDSX +congregation/M +congregational +congregationalism/M +congregationalist/MS +congress/MS +congressional +congressman/M +congressmen +congresspeople +congressperson/MS +congresswoman/M +congresswomen +congruence/M +congruent/Y +congruity/ISM +congruous +conic/SM +conical/Y +conifer/SM +coniferous +conjectural +conjecture/MGDS +conjoint +conjugal/Y +conjugate/DSXGN +conjugation/M +conjunct/VMS +conjunctiva/SM +conjunctive/SM +conjunctivitis/M +conjuration/MS +conjure/DRSZG +conjurer/M +conk/MDRZ +conman +connect/AEDVGS +connectable +connected/U +connection/EMS +connective/MS +connectivity/M +connector/MS +conned +conning +conniption/MS +connivance/M +connive/DRSZG +conniver/M +connoisseur/SM +connotative +connubial +conquer/ASDG +conquerable/U +conquered/U +conqueror/MS +conquest/AM +conquistador/SM +cons/DSG +consanguineous +consanguinity/M +conscienceless +conscientious/PY +conscientiousness/M +conscious/UYP +consciousness/UM +consciousnesses +conscription/M +consecrate/ADSGN +consecrated/U +consecration/AM +consecrations +consecutive/Y +consensual +consensus/MS +consent/SMDG +consequence/SM +consequent/Y +consequential/IY +conservancy/SM +conservation/M +conservationism/M +conservationist/SM +conservatism/M +conservative/MYS +conservatoire/S +conservator/SM +conservatory/SM +consider/AGSD +considerable/I +considerably +considerate/IPYN +considerateness/IM +consideration/AIM +considerations +considered/U +consign/ASDG +consignee/MS +consignment/MS +consist/SDG +consistence/MS +consistency/ISM +consistent/IY +consistory/SM +consolable/I +consolation/MS +consolatory +consolidate/XDSGN +consolidated/U +consolidation/M +consolidator/MS +consoling/Y +consomme/M +consonance/SM +consonant/SMY +consortia +consortium/M +conspectus/MS +conspicuous/IPY +conspicuousness/IM +conspiracy/SM +conspirator/MS +conspiratorial/Y +conspire/GD +constable/SM +constabulary/SM +constancy/IM +constant/MYS +constellation/SM +consternation/M +constipate/GNDS +constipation/M +constituency/SM +constituent/SM +constitute/ADSGNV +constitution/AM +constitutional/MYS +constitutionalism +constitutionality/UM +constitutions +constrained/U +constraint/SM +constrict/GVSD +constriction/SM +constrictor/SM +construable +construct's +construct/CADVGS +construction/CAMS +constructional +constructionist's +constructionist/CS +constructive/YP +constructiveness/M +constructor/MS +construe/GDS +consul/KSM +consular/K +consulate/SM +consulship/M +consult/GSD +consultancy/SM +consultant/MS +consultation/MS +consultative +consumable/SM +consume/BDRSZG +consumed/U +consumer/M +consumerism/M +consumerist/MS +consummate/YGNXDS +consummated/U +consumption/M +consumptive/SM +cont +contact/ASDG +contactable +contactless +contagion/MS +contagious/PY +contagiousness/M +contain/SBLDRZG +container/M +containerisation/M +containerise/DSG +containment/M +contaminant/SM +contaminate/ACDSG +contaminated/U +contamination/CM +contaminator/SM +contd +contemn/SDG +contemplate/DSGNV +contemplation/M +contemplative/SMY +contemporaneity/M +contemporaneous/Y +contempt/M +contemptible +contemptibly +contemptuous/YP +contemptuousness/M +contender/MS +content/ESLMDG +contented/EY +contentedness/M +contention/SM +contentious/YP +contentiousness/M +contently +contentment/EM +conterminous/Y +contestable/I +contestant/MS +contested/U +contextualisation +contextualise/DSG +contiguity/M +contiguous/Y +continence/IM +continent/SM +continental/SM +contingency/SM +contingent/SMY +continua +continual/Y +continuance/EMS +continuation/EMS +continue/EGDS +continuity/ESM +continuous/EY +continuum/M +contort/GD +contortion/MS +contortionist/SM +contra +contraband/M +contrabassoon/S +contraception/M +contraceptive/SM +contract/MDG +contractible +contractile +contractility +contraction/S +contractual/Y +contradict/SDG +contradiction/SM +contradictory +contradistinction/MS +contraflow/S +contrail/MS +contraindicate/GNXDS +contraindication/M +contralto/SM +contraption/SM +contrapuntal/Y +contrarian/SM +contrarianism +contrariety/M +contrarily +contrariness/M +contrariwise +contrary/PSM +contrast/MDGS +contravene/GDS +contravention/SM +contretemps/M +contribute/XGND +contribution/M +contributor/MS +contributory +contrition/M +contrivance/MS +contrive/ZGDRS +contriver/M +control's +control/CS +controllable/U +controlled/UC +controller/MS +controlling/C +controversial/Y +controversy/SM +controvert/DSG +controvertible/I +contumacious/Y +contumacy/M +contumelious +contumely/SM +contuse/XDSGN +contusion/M +conundrum/SM +conurbation/MS +convalesce/DSG +convalescence/MS +convalescent/SM +convection/M +convectional +convective +convector/S +convene/ADSG +convener/MS +convenience/IMS +convenient/IY +convent/SM +conventicle/MS +convention/SM +conventional/UY +conventionalise/GDS +conventionality/UM +conventioneer/S +convergence/MS +convergent +conversant +conversation/MS +conversational/Y +conversationalist/SM +converse/Y +convert's +convert/AGSD +converted/U +converter/SM +convertibility/M +convertible/SM +convex/Y +convexity/M +convey/SBDG +conveyance/MGS +conveyor/MS +convict/GSMD +conviction/MS +convince/GDS +convinced/U +convincing/UY +convivial/Y +conviviality/M +convoke/DSG +convoluted +convolution/MS +convoy/SMDG +convulse/GNVXDS +convulsion/M +convulsive/Y +cony/M +coo/GSMD +cook's +cook/ADGS +cookbook/MS +cooked/U +cooker/SM +cookery/SM +cookhouse/S +cookie/SM +cooking/M +cookout/SM +cookware/SM +cool/MDRYZTGPS +coolant/SM +cooler/M +coolie/SM +coolness/M +coon/MS! +coonskin/MS +coop/MDRZGS +cooper/MDG +cooperage/M +cooperate/DSGNV +cooperation/M +cooperative/PMYS +cooperativeness/M +cooperator/SM +coordinate/DSMYGN +coordinated/U +coordination/M +coordinator/MS +coot/MS +cootie/SM +cop/GJSMD +copacetic +copay/M +cope/MS +copier/SM +copilot/SM +coping/M +copious/PY +copiousness/M +copped +copper/SM +copperhead/SM +copperplate/M +coppery +copping +copra/M +copse/SM +copter/SM +copula/SM +copulate/GNVDS +copulation/M +copulative/SM +copy's +copy/ADSG +copybook/SM +copycat/MS +copycatted +copycatting +copyist/MS +copyleft +copyright/GSMD +copywriter/MS +coquetry/SM +coquette/DSMG +coquettish/Y +cor +coracle/SM +coral/SM +corbel/SM +cord/EASGDM +cordage/M +cordial/SMY +cordiality/M +cordillera/MS +cordite/M +cordless +cordon/SMDG +cordovan/M +corduroy/MS +corduroys/M +core/MZGDRS +coreligionist/S +corer/M +corespondent/MS +corgi/SM +coriander/M +cork's +cork/UDGS +corkage +corker/SM +corkscrew/SMDG +corm/MS +cormorant/SM +corn/MDRZGS +cornball/MS +cornbread/M +corncob/MS +corncrake/S +cornea/SM +corneal +corner/GMD +cornerstone/SM +cornet/SM +cornfield/S +cornflakes/M +cornflour +cornflower/SM +cornice/MS +cornily +corniness/M +cornmeal/M +cornrow/MDGS +cornstalk/SM +cornstarch/M +cornucopia/MS +corny/PRT +corolla/MS +corollary/SM +corona/SM +coronal/MS +coronary/SM +coronation/SM +coronavirus/MS +coroner/MS +coronet/MS +corp +corpora +corporal/SM +corporate/XYN +corporation/IM +corporatism +corporeal/Y +corporeality/M +corps/MS +corpse/M +corpsman/M +corpsmen +corpulence/M +corpulent +corpus/M +corpuscle/MS +corpuscular +corr +corral/SM +corralled +corralling +correct/DRYTGVSBP +corrected/U +correction/SM +correctional +corrective/SM +correctness/IM +corrector +correlate/XDSMGNV +correlated/U +correlation/M +correlational +correlative/MS +correspond/SDG +correspondence/SM +correspondent/SM +corresponding/Y +corridor/SM +corrie/S +corroborate/GNVDSX +corroborated/U +corroboration/M +corroborator/SM +corroboratory +corrode/GDS +corrosion/M +corrosive/SMY +corrugate/GNXDS +corrugation/M +corrupt/DRYPSTG +corruptibility/IM +corruptible/I +corruption/MS +corruptness/M +corsage/MS +corsair/MS +corset/SGMD +cortege/MS +cortex/M +cortical +cortices +cortisol +cortisone/M +corundum/M +coruscate/GNDS +coruscation/M +corvette/SM +cos/M +cosh/DSG +cosign/ZGSDR +cosignatory/SM +cosigner/M +cosily +cosine/SM +cosiness/M +cosmetic/SM +cosmetically +cosmetician/MS +cosmetologist/MS +cosmetology/M +cosmic +cosmically +cosmogonist/SM +cosmogony/SM +cosmological +cosmologist/SM +cosmology/SM +cosmonaut/SM +cosmopolitan/MS +cosmopolitanism/M +cosmos/MS +cosplay +cosponsor/GSMD +cosset/SGD +cossetted +cossetting +cost/MDYGSJ +costar/SM +costarred +costarring +costliness/M +costly/PTR +costume/MZGDRS +costumer/M +costumiers +costumire +cosy/RSMTP +cot/SM +cotangent/MS +cote/MS +coterie/MS +coterminous +cotillion/SM +cottage/MZGRS +cottager/M +cottar/SM +cotter/SM +cotton/SGMD +cottonmouth/M +cottonmouths +cottonseed/MS +cottontail/MS +cottonwood/SM +cottony +cotyledon/MS +couch/MDSG +couchette/S +cougar/SM +cough/MDG +coughs +could +could've +couldn't +coulee/SM +coulis +coulomb/MS +council/MS +councillor/SM +councilman/M +councilmen +councilperson/SM +councilwoman/M +councilwomen +counsel/JMS +counselled +counselling +counsellor/SM +count/EASMDG +countable/U +countably +countdown/MS +counted/U +countenance's +countenance/EGDS +counter/EMS +counteract/SGVD +counteraction/MS +counterargument/S +counterattack/GMDS +counterbalance/MGDS +counterblast/S +counterclaim/GSMD +counterclockwise +counterculture/SM +countered +counterespionage/M +counterexample/S +counterfactual +counterfeit/ZGMDRS +counterfeiter/M +counterfoil/MS +countering +counterinsurgency/SM +counterintelligence/M +counterman/M +countermand/GMDS +countermeasure/SM +countermelody/S +countermen +countermove/S +counteroffensive/SM +counteroffer/SM +counterpane/SM +counterpart/SM +counterpetition +counterpoint/MDGS +counterpoise/MGDS +counterproductive +counterrevolution/SM +counterrevolutionary/SM +countersign/GSMD +countersignature/MS +countersink/GSM +counterspy/SM +counterstroke/SM +countersunk +countertenor/MS +countervail/GSD +counterweight/MS +countess/MS +countless +countrified +country/SM +countryman/M +countrymen +countryside/MS +countrywide +countrywoman/M +countrywomen +county/SM +countywide +coup's +coup/AS +coupe/SM +couple's +couple/UCGSD +couplet/MS +coupling/SM +coupon/SM +courage/M +courageous/YP +courageousness/M +courgette/S +courier/MDSG +course/EDGMS +coursebook/S +courser/MS +coursework +court/SMDYG +courteous/EY +courteousness/M +courtesan/SM +courtesy/ESM +courthouse/MS +courtier/SM +courtliness/M +courtly/PRT +courtroom/MS +courtship/MS +courtyard/MS +couscous/M +cousin/SM +couture/M +couturier/MS +covalent +covariance +covariant +cove/MS +coven/SM +covenant/MDSG +cover's +cover/AEUGDS +coverage/M +coverall/MS +covering's +coverings +coverlet/MS +covert/SPMY +covertness/M +covet/SDG +covetous/YP +covetousness/M +covey/SM +cow/ZGSMDR +coward/SMY +cowardice/M +cowardliness/M +cowbell/MS +cowbird/MS +cowboy/SM +cowcatcher/MS +cower/DG +cowgirl/MS +cowhand/MS +cowherd/MS +cowhide/MS +cowl/MGSJ +cowlick/MS +cowling/M +cowman/M +cowmen +coworker/MS +cowpat/S +cowpoke/MS +cowpox/M +cowpuncher/SM +cowrie/SM +cowshed/S +cowslip/SM +cox/GDS +coxcomb/MS +coxswain/MS +coy/TPRY +coyness/M +coyote/SM +coypu/SM +cozen/SDG +cozenage/M +cpd +cpl +cps +crab/MS +crabbed +crabber/SM +crabbily +crabbiness/M +crabbing +crabby/PRT +crabgrass/M +crablike +crabwise +crack/SMDRYZGJ +crackdown/MS +cracker/M +crackerjack/MS +crackhead/MS +crackle/DSJMG +crackling/M +crackpot/MS +crackup/SM +cradle/DSMG +craft/SMDG +craftily +craftiness/M +craftsman/M +craftsmanship/M +craftsmen +craftspeople +craftswoman/M +craftswomen +crafty/RTP +crag/MS +cragginess/M +craggy/RPT +cram/S +crammed +crammer/S +cramming +cramp/SMDG +cramping/M +crampon/SM +cranberry/SM +crane/DSMG +cranial +cranium/SM +crank/SMDG +crankcase/SM +crankily +crankiness/M +crankshaft/MS +cranky/PRT +cranny/DSM +crap/MS +crape/SM +crapped +crapper/S +crappie/RSMT +crapping +crappy +craps/M +crapshooter/MS +crash/MDSG +crass/RYTP +crassness/M +crate/DRSMZG +crater/MDG +cravat/SM +crave/DSGJ +craven/SMYP +cravenness/M +craving/M +craw/MS +crawdad/SM +crawl/SMDRZG +crawler/M +crawlspace/SM +crawly/TRSM +cray/S +crayfish/MS +crayola/S +crayon/GSMD +craze/DSMG +crazily +craziness/M +crazy/PRSMT +creak/SMDG +creakily +creakiness/M +creaky/RPT +cream/SMDRZG +creamer/M +creamery/SM +creamily +creaminess/M +creamy/RPT +crease/ICGMSD +create/KADSGNV +creation's/K +creation/ASM +creationism/SM +creationist/SM +creative/SMYP +creativeness/M +creativity/M +creator/MS +creature/SM +creche/SM +cred +credence/M +credential/SGMD +credenza/SM +credibility/IM +credible/I +credibly/I +credit/EGSBMD +creditably/E +creditor/SM +creditworthy/P +credo/SM +credulity/IM +credulous/IY +credulousness/M +creed/SM +creek/SM +creel/SM +creep/SMRZG +creeper/M +creepily +creepiness/M +creepy/TPR +cremains/M +cremate/GNDSX +cremation/M +crematoria +crematorium/MS +crematory/SM +creme/SM +crenellate/DSGNX +crenellation/M +creole/SM +creosote/MGDS +crepe/SM +crept +crepuscular +crescendo/CSM +crescent/MS +cress/M +crest/SMDG +crestfallen +crestless +cretaceous +cretin/SM +cretinism/M +cretinous +cretonne/M +crevasse/SM +crevice/MS +crew/MDGS +crewel/M +crewelwork/M +crewman/M +crewmen +crib/MS +cribbage/M +cribbed +cribber/MS +cribbing +crick/SMDG +cricket/MRSZG +cricketer/M +crier/M +crikey +crime/SM +criminal/MYS +criminalise/CGDS +criminality/M +criminologist/MS +criminology/M +crimp/SMDG +crimson/SMDG +cringe/DSMG +crinkle/DSMG +crinkly/RT +crinoline/SM +cripes +cripple/DRSMZG +crippler/M +crippleware +crippling/Y +crises +crisis/M +crisp/SMDRYTGP +crispbread/S +crispiness/M +crispness/M +crispy/PRT +crisscross/GMDS +criteria +criterion/M +critic/SM +critical/UY +criticality +criticise/ZGDRS +criticiser/M +criticism/MS +critique/MGDS +critter/SM +croak/SMDG +croaky/RT +crochet/SMDRZG +crocheter/M +crocheting/M +crock/SMD +crockery/M +crocodile/SM +crocus/MS +croft/SRZG +croissant/MS +crone/SM +crony/SM +cronyism/M +crook/SMDG +crooked/PTRY +crookedness/M +crookneck/SM +croon/SMDRZG +crooner/M +crop/MS +cropland/SM +cropped +cropper/MS +cropping +croquet/M +croquette/SM +cross's +cross/AUGTSD +crossbar/SM +crossbeam/MS +crossbones/M +crossbow/SM +crossbowman/M +crossbowmen +crossbred +crossbreed/SGM +crosscheck/SMDG +crosscurrent/MS +crosscut/SM +crosscutting +crosser +crossfire/MS +crosshatch/GDS +crossing/SM +crossly +crossness/M +crossover/MS +crosspatch/MS +crosspiece/SM +crossroad/MS +crossroads/M +crosstown +crosswalk/MS +crosswind/MS +crosswise +crossword/MS +crotch/MS +crotchet/SM +crotchety +crouch/GMDS +croup/M +croupier/M +croupy/ZTR +crouton/MS +crow/MDGS +crowbar/MS +crowd/SMDG +crowded/U +crowdfund/SDG +crowfeet +crowfoot/SM +crown/SMDG +crowned/U +crozier/MS +crucial/Y +crucible/SM +crucifix/MS +crucifixion/SM +cruciform/SM +crucify/DSG +crud/M +cruddy/TR +crude/RMYTP +crudeness/M +crudites/M +crudity/SM +cruel/YP +crueller +cruellest +cruelness/M +cruelty/SM +cruet/SM +cruft/SD +crufty +cruise/DRSMZG +cruiser/M +cruller/MS +crumb/SMDYG +crumble/MGDS +crumbliness/M +crumbly/TPR +crumby/TR +crumminess/M +crummy/PTR +crumpet/MS +crumple/MGDS +crunch/GMDRS +crunchiness/M +crunchy/TRP +crupper/MS +crusade/MZGDRS +crusader/M +cruse/SM +crush/MDRSZG +crusher/M +crushing/Y +crust/SMDG +crustacean/SM +crustal +crustily +crustiness/M +crusty/TRP +crutch/MS +crux/MS +cry/ZGJDRSM +crybaby/SM +cryogenic/S +cryogenics/M +cryonics +cryosurgery/M +crypt/SM +cryptanalysis +cryptic +cryptically +cryptocurrency/SM +cryptogram/SM +cryptographer/SM +cryptography/M +crystal/SM +crystalline +crystallisation/M +crystallise/ADSG +crystallographic +crystallography +ct +ctn +ctr +cu +cub/ZGSMDR +cubbyhole/MS +cube/MS +cuber/M +cubic +cubical +cubicle/MS +cubism/M +cubist/SM +cubit/SM +cuboid/S +cuckold/MDSG +cuckoldry/M +cuckoo/SM +cucumber/SM +cud/SM +cuddle/DSMG +cuddly/TR +cudgel/SM +cudgelled +cudgelling/S +cue/DSMG +cuff/MDGS +cuisine/SM +culinary +cull/MDGS +culminate/XDSGN +culmination/M +culotte/SM +culpability/M +culpable/I +culpably +culprit/SM +cult/MS +cultism/M +cultist/MS +cultivable +cultivar/SM +cultivate/BDSGN +cultivated/U +cultivation/M +cultivator/MS +cultural/Y +culture/MGDS +cultured/U +culvert/MS +cum/SM +cumber/SDG +cumbersome/P +cumbersomeness/M +cumbrous +cumin/M +cummerbund/MS +cumming +cumulative/Y +cumuli +cumulonimbi +cumulonimbus/M +cumulus/M +cuneiform/M +cunnilingus/M +cunning/MRYT +cunt/MS! +cup/SM +cupboard/SM +cupcake/MS +cupful/SM +cupid/SM +cupidity/M +cupola/SMD +cuppa/S +cupped +cupping +cupric +cur/SMY +curability/M +curacao +curacy/SM +curare/M +curate/DSMGV +curative/MS +curator/KMS +curatorial +curb/MDGS +curbing/M +curbside +curbstone/SM +curd/MS +curdle/DSG +cure's +cure/KZGBDRS +cured/U +curer/KM +curettage/M +curfew/SM +curia/M +curiae +curie/SM +curio/SM +curiosity/SM +curious/YP +curiousness/M +curium/M +curl's +curl/UDGS +curler/SM +curlew/SM +curlicue/DSMG +curliness/M +curling/M +curly/RPT +curmudgeon/MYS +currant/MS +currency/SM +current's +current/FAY +currents +curricula +curricular +curriculum/M +curry/DSMG +currycomb/SGMD +curse/DSMGV +cursed/Y +cursive's +cursive/EAY +cursor/SM +cursorily +cursoriness/M +cursory/P +curt/RYTP +curtail/GDSL +curtailment/SM +curtain/GMDS +curtness/M +curtsy/GDSM +curvaceous/P +curvaceousness/M +curvature/SM +curve/DSMG +curvy/RT +cushion/MDSG +cushy/RT +cusp/MS +cuspid/SM +cuspidor/SM +cuss's +cuss/FEGSD +cussed/PY +custard/MS +custodial +custodian/MS +custodianship/M +custody/M +custom/SZMR +customarily +customary/U +customer/M +customhouse/SM +customisation/M +customise/DSG +cut/TSMR +cutaneous +cutaway/MS +cutback/MS +cute/YP +cuteness/M +cutesy/TR +cutey/S +cuticle/MS +cutie/SM +cutlass/MS +cutler/SM +cutlery/M +cutlet/SM +cutoff/SM +cutout/SM +cutter/SM +cutthroat/SM +cutting/MYS +cuttlefish/MS +cutup/SM +cutworm/MS +cw +cwt +cyan/M +cyanide/M +cyanobacteria +cyberbully/SM +cybercafe/S +cybernetic/S +cybernetics/M +cyberpunk/SM +cybersex +cyberspace/MS +cyborg/SM +cyclamen/MS +cycle/ADSMG +cyclic +cyclical/Y +cyclist/MS +cyclometer/MS +cyclone/MS +cyclonic +cyclopedia/MS +cyclopes +cyclops/M +cyclotron/MS +cygnet/MS +cylinder/MS +cylindrical +cymbal/MS +cymbalist/MS +cynic/SM +cynical/Y +cynicism/M +cynosure/MS +cypress/MS +cyst/MS +cystic +cystitis +cytokines +cytologist/SM +cytology/M +cytoplasm/M +cytoplasmic +cytosine/M +czarina/SM +czarism +czarist/SM +d'Arezzo/M +d'Estaing/M +d/NXGJ +dB +dab/SM +dabbed +dabber/MS +dabbing +dabble/ZGDRS +dabbler/M +dace/SM +dacha/MS +dachshund/MS +dactyl/MS +dactylic/MS +dad/SM +dadaism/M +dadaist/MS +daddy/SM +dado/M +dadoes +daemon/MS +daemonic +daffiness/M +daffodil/SM +daffy/PTR +daft/PTRY +daftness/M +dag/S +dagger/MS +dago/S +dagoes +daguerreotype/DSMG +dahlia/MS +dailiness/M +daily/PSM +daintily +daintiness/M +dainty/RSMTP +daiquiri/MS +dairy/GSM +dairying/M +dairymaid/MS +dairyman/M +dairymen +dairywoman/M +dairywomen +dais/MS +daisy/SM +dale/SM +dalliance/MS +dallier/M +dally/ZGDRS +dalmatian/MS +dam/SM +damage/MGDS +damageable +damaged/U +damages/M +damask/MDGS +dame/SM +dammed +damming +dammit +damn/SBGMD +damnably +damnation/M +damned/T +damp/SPXZTGMDNRY +dampen/ZGDR +dampener/M +damper/M +dampness/M +damsel/MS +damselfly/SM +damson/MS +dance/MZGDRS +dancer/M +dancing/M +dandelion/SM +dander/M +dandify/GDS +dandle/GDS +dandruff/M +dandy/TRSM +dang/SZGDR +danger/M +dangerous/Y +dangle/ZGDRS +dangler/M +danish/MS +dank/PTRY +dankness/M +danseuse/MS +dapper/TR +dapple/MGDS +dare/DRSMZG +daredevil/MS +daredevilry/M +darer/M +daresay +daring/MY +dark/PXTMNRY +darken/ZGDR +darkener/M +darkie/S +darkness/M +darkroom/MS +darling/MS +darn/SZGMDR +darned/TR +darner/M +dart/SZGMDR +dartboard/MS +darter/M +dash/ZGMDRS +dashboard/SM +dasher/M +dashiki/MS +dashing/Y +dastard/MYS +dastardliness/M +data +database/SM +dataset/MS +datatype +date/DRSMZGV +datebook/S +dated/U +dateless +dateline/MGDS +dater/M +dateset +dative/MS +datum/M +daub/SZGMDR +dauber/M +daughter/SMY +daunt/GDS +daunting/Y +dauntless/YP +dauntlessness/M +dauphin/MS +davenport/MS +davit/MS +dawdle/ZGDRS +dawdler/M +dawn/SGMD +day/SM +daybed/MS +daybreak/M +daycare/M +daydream/MDRZGS +daydreamer/M +daylight/MS +daylights/M +daylong +daytime/M +daze/DSMG +dazed/Y +dazzle/MZGDRS +dazzler/M +dazzling/Y +db +dbl +dc +dd/SDG +dded/K +dding/K +deacon/MS +deaconess/MS +dead/XTMNRY +deadbeat/MS +deadbolt/SM +deaden/GD +deadhead/SDG +deadline/SM +deadliness/M +deadlock/GSMD +deadly/TPR +deadpan/MS +deadpanned +deadpanning +deadwood/M +deaf/PXTNR +deafen/GD +deafening/Y +deafness/M +deal/SJZGMR +dealer/M +dealership/SM +dealing/M +dealt +dean/M +deanery/SM +deanship/M +dear/SPTMRYH +dearest/S +dearness/M +dearth/M +dearths +deary/SM +death/MY +deathbed/SM +deathblow/MS +deathless/Y +deathlike +deaths +deathtrap/MS +deathwatch/MS +deaves +deb/SM +debacle/MS +debarkation/M +debarment/M +debate/BMZR +debater/M +debating/M +debauch/MDSG +debauchee/MS +debauchery/SM +debenture/MS +debilitate/DSGN +debilitation/M +debility/SM +debit/D +debonair/PY +debonairness/M +debouch/GDS +debridement +debris/M +debt/SM +debtor/MS +debugger/S +debut/GMD +debutante/SM +decade/MS +decadence/M +decadency/M +decadent/MYS +decaf/MS +decaffeinate/DSG +decagon/MS +decal/MS +decampment/M +decapitate/XGNDS +decapitator/MS +decathlete/S +decathlon/SM +decay/GD +deceased/M +decedent/MS +deceit/MS +deceitful/YP +deceitfulness/M +deceive/UGDS +deceiver/MS +deceiving/Y +decelerate/GNDS +deceleration/M +decelerator/SM +decency/ISM +decennial/SM +decent/IY +deception/MS +deceptive/YP +deceptiveness/M +decibel/MS +decidable/U +decide/BZGDRS +decided/Y +deciduous +decilitre/MS +decimal/SM +decimalisation +decimate/DSGN +decimation/M +decimetre/MS +decipherable/UI +decision/IM +decisions +decisive/IPY +decisiveness/IM +deck/SGMD +deckchair/S +deckhand/SM +deckle/S +declamation/MS +declamatory +declaration/MS +declarative +declaratory +declare/DRSZGB +declared/U +declarer/M +declension/SM +declination/M +decline/DRSMZG +decliner/M +declivity/SM +decoherence +decolletage/SM +decollete +decongestant/MS +deconstructionism +decor/MS +decorate/AGNVDS +decorating/M +decoration/AM +decorations +decorative/Y +decorator/MS +decorous/IY +decorousness/M +decorum/M +decoupage/DSMG +decoy/GMDS +decreasing/Y +decree/MDS +decreeing +decrement/GDS +decrepit +decrepitude/M +decriminalisation/M +decry/GDS +decryption +dedicate/AGDS +dedication/SM +dedicator/SM +dedicatory +deduce/GDS +deducible +deduct/GVD +deductible/SM +deduction/SM +deductive/Y +deed/GD +deejay/MS +deem/ASGD +deep/SPXTMNRY +deepen/GD +deepfake/SM +deepness/M +deer/M +deerskin/M +deerstalker/S +def/Z +defacement/M +defacer/SM +defalcate/DSXGN +defalcation/M +defamation/M +defamatory +defame/ZGDRS +defamer/M +defaulter/SM +defeat/MDRZGS +defeated/U +defeater/M +defeatism/M +defeatist/MS +defecate/GNDS +defecation/M +defect/MDGVS +defection/MS +defective/MPYS +defectiveness/M +defector/MS +defenceless/YP +defencelessness/M +defendant/SM +defended/U +defenestration/S +defensible/I +defensibly/I +defensive/MYP +defensiveness/M +deference/M +deferential/Y +deferral/MS +deferred +deferring +deffer +deffest +defiant/Y +defibrillation +defibrillator/S +deficiency/SM +deficient +deficit/SM +defilement/M +definable/IU +define/AGDS +defined/U +definer/MS +definite/IYVP +definiteness/IM +definition/AM +definitions +definitive/Y +deflate/GNDS +deflation/M +deflationary +deflect/DGVS +deflection/MS +deflector/SM +defogger/SM +defoliant/SM +defoliate/DSGN +defoliation/M +defoliator/MS +deformity/SM +defraud/DRZGS +defrauder/M +defrayal/M +defrock/DG +defroster/MS +deft/PTRY +deftness/M +defunct +defy/GDS +deg +degeneracy/M +degenerate/MV +degrade/B +degree/MS +dehydrator/SM +dehydrogenase +deicer/MS +deification/M +deify/NGDS +deign/GDS +deist/MS +deistic +deity/SM +deject/GDS +dejected/Y +dejection/M +delay/ZDR +delectable +delectably +delectation/M +delegate/GD +delete/XGNDS +deleterious +deletion/M +delft/M +delftware/M +deli/SM +deliberate/XYVP +deliberateness/M +delicacy/ISM +delicate/IY +delicateness/M +delicatessen/SM +delicious/PY +deliciousness/M +delighted/Y +delightful/Y +deliminator +delineate/GNXDS +delineation/M +delinquency/SM +delinquent/SMY +deliquesce/DSG +deliquescent +delirious/YP +deliriousness/M +delirium/SM +deliver/ADGS +deliverable/S +deliverance/M +delivered/U +deliverer/SM +dell/SM +delphinium/MS +delta/MS +delude/GDS +deluge/MGDS +delusion/MS +delusional +delusive/Y +deluxe +delve/ZGDRS +delver/M +demagogic +demagogically +demagogue/SM +demagoguery/M +demagogy/M +demand/GMDS +demanding/U +demarcate/DSGNX +demarcation/M +demean/GDS +demeanour/M +demented/Y +dementia/M +demesne/MS +demigod/MS +demigoddess/MS +demijohn/SM +demimondaine/SM +demimonde/M +demise/MGDS +demitasse/MS +demo/GMD +democracy/SM +democrat/MS +democratic/U +democratically +democratisation/M +democratise/GDS +demode +demographer/SM +demographic/SM +demographically +demographics/M +demography/M +demolish/DSG +demolition/MS +demon/MS +demonetisation/M +demoniac +demoniacal/Y +demonic +demonically +demonise/GDS +demonology/SM +demonstrability +demonstrable/I +demonstrably +demonstrate/XGNVDS +demonstration/M +demonstrative/MYSP +demonstrativeness/M +demonstrator/MS +demote/GD +demotic +demount +demulcent/SM +demur/TMRS +demure/PY +demureness/M +demurral/SM +demurred +demurrer/SM +demurring +den/M +denationalisation +denaturation +denature/DG +dendrite/SM +dengue/M +deniability +deniable/U +denial/MS +denier/M +denigrate/DSGN +denigration/M +denim/MS +denitrification +denizen/MS +denominational +denotative +denouement/MS +denounce/LDSG +denouncement/SM +dense/PYTR +denseness/M +density/SM +dent/ISGMD +dental/Y +dentifrice/SM +dentine/M +dentist/MS +dentistry/M +dentition/M +denture/IMS +denuclearise/GDS +denudation/M +denude/GDS +denunciation/SM +deny/ZGDRS +deodorant/SM +deodorisation/M +deodorise/DRSZG +deodoriser/M +departed/M +department/MS +departmental/Y +departmentalisation/M +departmentalise/GDS +departure/SM +dependability/M +dependable/U +dependably +dependence/IM +dependency/SM +dependent/IY +depict/GDS +depiction/MS +depilatory/SM +deplete/GNDS +depletion/M +deplorably +deplore/BGDS +deploy/ALGDS +deployment/AM +deployments +deponent/MS +deportation/MS +deportee/MS +deportment/M +deposit/AGMDS +depositor/MS +depository/SM +deprave/GDS +depravity/SM +deprecate/GNDS +deprecating/Y +deprecation/M +deprecatory +depreciate/DSGN +depreciation/M +depredation/SM +depressant/SM +depressing/Y +depression/SM +depressive/SM +depressor/MS +depressurisation +deprive/GDS +deprogramming +depth/M +depths +deputation/MS +depute/DSG +deputise/DSG +deputy/SM +derailleur/SM +derailment/SM +derangement/M +derby/SM +derelict/MS +dereliction/M +deride/GDS +derision/M +derisive/PY +derisiveness/M +derisory +derivation/MS +derivative/MS +derive/B +dermal +dermatitis/M +dermatological +dermatologist/SM +dermatology/M +dermis/M +derogate/DSGN +derogation/M +derogatorily +derogatory +derrick/SM +derriere/SM +derringer/SM +derv +dervish/MS +desalinate/GNDS +desalination/M +desalinisation/M +desalinise/GDS +descant/M +descend/FGDS +descendant/MS +descendent +descender +describable/I +describe/BZGDR +describer/M +description/SM +descriptive/PY +descriptiveness/M +descriptor/S +descry/GDS +desecrate/DSGN +desecration/M +deselection +desert/SDRZGM +deserter/M +desertification +desertion/SM +deserved/UY +deserving/U +desiccant/SM +desiccate/DSGN +desiccation/M +desiccator/SM +desiderata +desideratum/M +design/ASDG +designate/DSGNX +designation/M +desirability/UM +desirableness/M +desirably/U +desire/B +desired/U +desirous +desist/SDG +desk/SM +deskill/G +desktop/SM +desolate/PDSYGN +desolateness/M +desolation/M +despair/SMDG +despairing/Y +desperado/M +desperadoes +desperate/YNP +desperateness/M +desperation/M +despicable +despicably +despise/DSG +despite +despoilment/M +despondence/M +despondency/M +despondent/Y +despotic +despotically +despotism/M +dessert/SM +dessertspoon/S +dessertspoonful/S +destabilisation +destabilization's +destination/SM +destine/DSG +destiny/SM +destitute/N +destitution/M +destroy/SZGDR +destroyer/M +destruct/GVMDS +destructibility/IM +destructible/I +destruction/M +destructive/PY +destructiveness/M +desuetude/M +desultorily +desultory +detach/BLGDS +detachment/MS +detain/LGDS +detainee/MS +detainment/M +detect/SDGVB +detectable/U +detected/U +detection/M +detective/SM +detector/SM +detente/SMNX +detention/M +deter/SL +detergent/SM +deteriorate/DSGN +deterioration/M +determent/M +determinable/I +determinant/SM +determinate +determine/AGDS +determined/U +determinedly +determiner/SM +determinism/M +deterministic +deterministically +deterred/U +deterrence/M +deterrent/MS +deterring +detestably +detestation/M +dethrone/DSLG +dethronement/M +detonate/GNDSX +detonation/M +detonator/SM +detox/MDSG +detoxification/M +detoxify/DSGN +detract/GD +detriment/SM +detrimental/Y +detritus/M +deuce/SM +deuterium/M +devastate/GNDS +devastating/Y +devastation/M +devastator/MS +develop/ASGDL +developed/U +developer/SM +development/ASM +developmental/Y +deviance/M +deviancy/M +deviant/SM +deviate/DSMGNX +deviating/U +deviation/M +devil/SML +devilish/YP +devilishness/M +devilled +devilling +devilment/M +devilry/SM +deviltry/SM +devious/YP +deviousness/M +devoid +devolution/M +devolve/DSG +devoted/Y +devotee/SM +devotion/MS +devotional/SM +devour/SDG +devout/PRYT +devoutness/M +dew/M +dewberry/SM +dewclaw/SM +dewdrop/SM +dewiness/M +dewlap/SM +dewy/RTP +dexterity/M +dexterous/YP +dexterousness/M +dextrose/M +dharma +dhoti/SM +dhow/MS +diabetes/M +diabetic/SM +diabolic +diabolical/Y +diacritic/MS +diacritical +diadem/SM +diaereses +diaeresis/M +diagnose/DSG +diagnosis/M +diagnostic/S +diagnostically +diagnostician/SM +diagnostics/M +diagonal/SMY +diagram/SM +diagrammatic +diagrammatically +diagrammed +diagramming +dial/AMS +dialect/SM +dialectal +dialectic/SM +dialectical +dialectics/M +dialled/A +dialling/S +dialog +dialogue/SM +dialyses +dialysis/M +diam +diamagnetic +diamagnetism +diamante +diameter/SM +diametric +diametrical/Y +diamond/SM +diamondback/MS +diapason/SM +diaper/SMDG +diaphanous +diaphragm/SM +diaphragmatic +diarist/SM +diarrhoea/M +diary/SM +diaspora/SM +diastase/M +diastole/M +diastolic +diathermy/M +diatom/SM +diatomic +diatonic +diatribe/SM +diazepam +dibble/DSMG +dibs/M +dice/GDS +dices/I +dicey +dichotomous +dichotomy/SM +dicier +diciest +dick/MRXZS +dicker/DG +dickey/SM +dickhead/S +dickybird/S +dicotyledon/MS +dicotyledonous +dict +dicta +dictate/DSMGNX +dictation/M +dictator/SM +dictatorial/Y +dictatorship/SM +diction/M +dictionary/SM +dictum/M +did/AU +didactic +didactically +diddle/DRSZG +diddler/M +diddly +diddlysquat +diddums +didgeridoo/S +didn't +dido/M +didoes +didst +die/DSM +dielectric/MS +diereses +dieresis/M +diesel/SMDG +diet/MDRZGS +dietary/SM +dieter/M +dietetic/S +dietetics/M +dietitian/MS +diff/DRZGS +differ/DG +difference/IM +differences +different/IY +differentiable +differential/SM +differentiate/DSGN +differentiated/U +differentiation/M +difficult/Y +difficulty/SM +diffidence/M +diffident/Y +diffract/GSD +diffraction/M +diffuse/DSYGNVP +diffuseness/M +diffusion/M +diffusivity +dig/SM +digerati/M +digest/SMDGV +digested/U +digestibility/M +digestible/I +digestion/IM +digestions +digestive/S +digger/SM +digging/S +diggings/M +digicam/S +digit/SM +digital/Y +digitalis/M +digitisation +digitise/GDS +dignified/U +dignify/DSG +dignitary/SM +dignity/ISM +digraph/M +digraphs +digress/GVDS +digression/MS +dike/GDS +diktat/S +dilapidated +dilapidation/M +dilatation/M +dilate/DSGN +dilation/M +dilator/SM +dilatory +dildo/S +dilemma/MS +dilettante/SM +dilettantish +dilettantism/M +diligence/M +diligent/Y +dill/MS +dilly/SM +dillydally/DSG +diluent +dilute/DSGNX +diluted/U +dilution/M +dim/PSRY +dime/MS +dimension/SM +dimensional +dimensionless +diminish/GDS +diminished/U +diminuendo/SM +diminution/SM +diminutive/SM +dimity/M +dimmed/U +dimmer/SM +dimmest +dimming +dimness/M +dimple/DSMG +dimply +dimwit/SM +dimwitted +din/ZGSMDR +dinar/SM +dine/S +diner/M +dinette/MS +ding/MDG +dingbat/MS +dinghy/SM +dingily +dinginess/M +dingle/SM +dingo/M +dingoes +dingus/MS +dingy/RPT +dink/R +dinky/RSMT +dinned +dinner/SMDG +dinnertime/M +dinnerware/M +dinning +dinosaur/SM +dint/M +diocesan/MS +diocese/MS +diode/SM +diorama/SM +dioxide/SM +dioxin/SM +dip/SM +diphtheria/M +diphthong/SM +diploid/SM +diploma/SM +diplomacy/M +diplomat/MS +diplomata +diplomatic/U +diplomatically +diplomatist/MS +diplopia +dipole/SM +dipped +dipper/SM +dipping +dippy/RT +dipso/S +dipsomania/M +dipsomaniac/MS +dipstick/SM +dipterous +diptych/M +diptychs +dire/YTR +direct/ASDGVT +directer +direction/IM +directional +directionless +directions +directive/SM +directly +directness/IM +director/MS +directorate/SM +directorial +directorship/SM +directory/SM +direful +dirge/SM +dirigible/MS +dirk/MS +dirndl/SM +dirt/M +dirtball/S +dirtily +dirtiness/M +dirty/DRSTGP +dis/M +disable/DSGL +disablement/M +disambiguate/N +disappointing/Y +disarming/Y +disassembly +disastrous/Y +disbandment/M +disbarment/M +disbelieving/Y +disbursal/M +disburse/DSGL +disbursement/MS +disc/M +discern/LSDG +discernible/I +discernibly +discerning/Y +discernment/M +discharged/U +disciple/SM +discipleship/M +disciplinarian/SM +disciplinary +discipline/DSMG +disciplined/U +disclose/DSG +disclosed/U +disco/MG +discography/SM +discoloration/S +discolouration/S +discombobulate/DSGN +discombobulation/M +discomfit/DG +discomfiture/M +discommode/DG +disconcerting/Y +disconnected/PY +disconnectedness/M +disconsolate/Y +discordance/M +discordant/Y +discotheque/SM +discourage/LGDS +discouragement/SM +discouraging/Y +discover/ASDG +discovered/U +discoverer/MS +discovery/ASM +discreet/PRYT +discreetness/M +discrepancy/SM +discrepant +discrete/PYN +discreteness/M +discretion/IM +discretionary +discriminant +discriminate/GNDS +discriminating/U +discrimination/M +discriminator/MS +discriminatory +discursiveness/M +discus/MS +discussant/SM +discussion/SM +disdain/SMDG +disdainful/Y +disembowel/SL +disembowelled +disembowelling +disembowelment/M +disfigurement/SM +disfranchisement/M +disgorgement/M +disgruntle/LGDS +disgruntlement/M +disguise/GD +disguised/U +disgusted/Y +disgusting/Y +dish/MDSG +dishabille/M +disharmonious +dishcloth/M +dishcloths +disheartening/Y +dishevel/LS +dishevelled +dishevelling +dishevelment/M +dishpan/SM +dishrag/SM +dishtowel/MS +dishware/M +dishwasher/MS +dishwater/M +dishy +disillusion/GLD +disillusionment/M +disinfectant/MS +disinfection/M +disinterested/PY +disinterestedness/M +disjointed/YP +disjointedness/M +disjunctive +disjuncture +disk/MS +diskette/MS +dislodge/GDS +dismal/Y +dismantlement/M +dismay/SMDG +dismayed/U +dismember/LGD +dismemberment/M +dismissive/Y +disorder/Y +disorganisation/M +disparage/DSGL +disparagement/M +disparaging/Y +disparate/Y +dispatcher/MS +dispel/S +dispelled +dispelling +dispensary/SM +dispensation/MS +dispense/BZGDRS +dispenser/M +dispersal/M +disperse/GNDS +dispersion/M +dispirit/GDS +displeasure/M +disposable/SM +disposal/SM +disposed/I +disposition/ISM +dispossession/M +disproof/SM +disproportional +disprove/B +disputable/I +disputably/I +disputant/MS +disputation/SM +disputatious/Y +dispute/DRSMZGB +disputed/U +disputer/M +disquiet/GSMD +disquisition/MS +disregardful +disrepair/M +disrepute/MB +disrupt/GVSD +disruption/SM +disruptive/Y +dissect/SDG +dissed +dissemblance/M +dissemble/ZGDRS +dissembler/M +disseminate/GNDS +dissemination/M +dissension/SM +dissent/SMDRZG +dissenter/M +dissertation/SM +disses +dissidence/M +dissident/MS +dissimilar +dissimilitude/S +dissing +dissipate/GNDS +dissipation/M +dissociate/GNVDS +dissociation/M +dissoluble/I +dissolute/YNP +dissoluteness/M +dissolve/AGDS +dissolved/U +dissonance/SM +dissonant +dissuade/GDS +dissuasive +dist +distaff/SM +distal/Y +distance/DSMG +distant/Y +distaste/SM +distemper/M +distention/SM +distil/S +distillate/SMNX +distillation/M +distillery/SM +distinct/IYTVP +distincter +distinction/SM +distinctive/YP +distinctiveness/M +distinctness/IM +distinguish/GDSB +distinguishable/I +distinguished/U +distort/GDR +distortion/MS +distract/DG +distracted/Y +distraction/S +distrait +distraught +distress/DG +distressful +distressing/Y +distribute/AGNVDS +distributed/U +distribution/AM +distributional +distributions +distributive/Y +distributor's +distributor/AS +distributorship/S +district's +district/AS +disturb/ZGSDR +disturbance/SM +disturbed/U +disturber/M +disturbing/Y +disunion/M +disyllabic +ditch/MDSG +dither/SMDRZG +ditherer/M +ditransitive +ditsy +ditto/SMDG +ditty/SM +ditz/MS +diuretic/MS +diurnal/Y +div +diva/MS +divalent +divan/SM +dive/MZTGDRS +diver/M +diverge/DSG +divergence/MS +divergent +diverse/XYNP +diverseness/M +diversification/M +diversify/GNDS +diversion/M +diversionary +diversity/SM +divert/SDG +diverticulitis/M +divest/SLDG +divestiture/MS +divestment/M +divide/DRSMZGB +divided/U +dividend/MS +divider/M +divination/M +divine/DRSMYZTG +diviner/M +diving/M +divinity/SM +divisibility/IM +divisible/I +division/MS +divisional +divisive/PY +divisiveness/M +divisor/SM +divorce/DSLMG +divorcee/MS +divorcement/MS +divot/SM +divulge/GDS +divvy/DSMG +dixieland/M +dizzily +dizziness/M +dizzy/DRSPTG +djellaba/MS +do/SJMRHZG +doable +dob/S +dobbed +dobbin/SM +dobbing +doberman/MS +dobro +doc/SM +docent/SM +docile/Y +docility/M +dock/MDRZGS +docket/SMDG +dockland/S +dockside +dockworker/MS +dockyard/MS +doctor/SMDG +doctoral +doctorate/MS +doctrinaire/MS +doctrinal +doctrine/MS +docudrama/SM +document/GMDS +documentary/SM +documentation/SM +documented/U +dodder/SMDG +doddery +doddle +dodge/DRSMZG +dodgem/S +dodger/M +dodgy/RT +dodo/MS +doe/SM +doer/M +does/AU +doeskin/MS +doesn't +doff/DGS +dog/SM +dogcart/SM +dogcatcher/SM +doge/MS +dogeared +dogfight/SM +dogfish/MS +dogged/PY +doggedness/M +doggerel/M +dogging +doggone/TGRS +doggy/RSMT +doghouse/SM +dogie/SM +dogleg/SM +doglegged +doglegging +doglike +dogma/SM +dogmatic +dogmatically +dogmatism/M +dogmatist/SM +dognapper +dogsbody/S +dogsled/S +dogtrot/MS +dogtrotted +dogtrotting +dogwood/MS +doily/SM +doing/USM +doldrums/M +dole's +dole/FGDS +doleful/YP +dolefulness/M +doll/MDGS +dollar/SM +dollhouse/SM +dollop/SGMD +dolly/SM +dolmen/SM +dolomite/M +dolorous/Y +dolour/M +dolphin/MS +dolt/MS +doltish/YP +doltishness/M +domain/SM +dome/MGDS +domestic/SM +domestically +domesticate/DSGN +domesticated/U +domestication/M +domesticity/M +domicile/DSMG +domiciliary +dominance/M +dominant/SMY +dominate/DSGN +domination/M +dominatrices +dominatrix/M +domineer/SGD +domineering/Y +dominion/SM +domino/M +dominoes +don't +don/SM +dona/MS +donate/DSXGN +donation/M +done/FAU +dong/MDGS +dongle/SM +donkey/SM +donned +donning +donnish +donnybrook/MS +donor/SM +donuts +doodad/SM +doodah +doodahs +doodle/DRSMZG +doodlebug/SM +doodler/M +doohickey/SM +doolally +doom/MDGS +doomsayer/MS +doomsday/M +doomster/S +door's +door/IS +doorbell/MS +doorjamb/S +doorkeeper/MS +doorknob/MS +doorknocker/S +doorman/M +doormat/SM +doormen +doorplate/SM +doorpost/S +doorstep/MS +doorstepped +doorstepping +doorstop/MS +doorway/SM +dooryard/MS +dopa/M +dopamine +dope/MZGDRS +doper/M +dopey +dopier +dopiest +dopiness/M +doping/M +doppelganger/S +dork/MS +dorky/RT +dorm/MRZS +dormancy/M +dormant +dormer/M +dormice +dormitory/SM +dormouse/M +dorsal/Y +dory/SM +dosage/SM +dose/MGDS +dosh +dosimeter/SM +doss/DRSZG +dosshouse/S +dossier/MS +dost +dot/ZGSMDR +dotage/M +dotard/SM +dotcom/SM +dote/S +doter/M +doting/Y +dotted +dotting +dotty/RT +double's +double/ADSG +doubleheader/MS +doublespeak/M +doublet/MS +doubloon/SM +doubly +doubt/SMDRZG +doubter/M +doubtful/PY +doubtfulness/M +doubting/Y +doubtless/Y +douche/DSMG +dough/M +doughnut/SM +doughty/RT +doughy/TR +dour/RYTP +dourness/M +douse/DSG +dove/MS +dovecot/S +dovecote/SM +dovetail/MDSG +dovish +dowager/MS +dowdily +dowdiness/M +dowdy/RSPT +dowel/SM +dowelled +dowelling +dower/SMDG +down/MDRZGS +downbeat/SM +downcast +downdrafts +downdraught/M +downer/M +downfall/SMN +downfield +downgrade/DSMG +downhearted/PY +downheartedness/M +downhill/MS +download/MDBSG +downmarket +downplay/DSG +downpour/MS +downrange +downright +downriver +downscale +downshift/SGD +downside/MS +downsize/GDS +downsizing/M +downspout/MS +downstage +downstairs/M +downstate/M +downstream +downswing/MS +downtempo +downtime/M +downtown/M +downtrend/MS +downtrodden +downturn/MS +downward/S +downwind +downy/RT +dowry/SM +dowse/DRSZG +dowser/M +doxology/SM +doyen/SM +doyenne/MS +doz/XGDNS +doze/M +dozen/MH +dozily +dozy/RTP +dpi +dpt +drab/MYSP +drabber +drabbest +drabness/M +drachma/MS +draconian +draft's +draft/ASDG +draftee/SM +drafter/SM +drafting/M +drag/MS +dragged +dragging +draggy/TR +dragnet/SM +dragon/SM +dragonfly/SM +dragoon/SMDG +dragster/S +drain/SMDRZG +drainage/M +drainboard/SM +drainer/M +drainpipe/MS +drake/SM +dram/MS +drama/SM +dramatic/S +dramatically +dramatics/M +dramatisation/MS +dramatise/DSG +dramatist/SM +drank +drape/DRSMZG +draper/M +drapery/SM +drastic +drastically +drat +dratted +draught/SM +draughtboard/S +draughtily +draughtiness/M +draughtsman/M +draughtsmanship/M +draughtsmen +draughtswoman/M +draughtswomen +draughty/PRT +draw/MRZGSJ +drawback/MS +drawbridge/MS +drawer/M +drawing/M +drawl/SMDG +drawn/A +drawstring/MS +dray/MS +dread/SMDG +dreadful/PY +dreadfulness/M +dreadlocks/M +dreadnought/MS +dream/SMDRZG +dreamboat/MS +dreamed/U +dreamer/M +dreamily +dreaminess/M +dreamland/M +dreamless +dreamlike +dreamt +dreamworld/SM +dreamy/RPT +drear +drearily +dreariness/M +dreary/RPT +dredge/DRSMZG +dredger/M +dregs/M +drench/GDS +dress/AUGSDM +dressage/M +dresser/MS +dressiness/M +dressing/SM +dressmaker/SM +dressmaking/M +dressy/TPR +drew/A +dribble/MZGDRS +dribbler/M +driblet/MS +drier/M +drift/SMDRZG +drifter/M +driftnet/S +driftwood/M +drill/SMDRZG +driller/M +drillmaster/SM +drily +drink/SMRBJZG +drinkable/U +drinker/M +drip/MS +dripped +dripping/SM +drippy/TR +drive/RSMZGJ +drivel/SM +drivelled +driveller/SM +drivelling +driven +driver/M +driveshaft/SM +driveway/MS +drizzle/MGDS +drizzly +drogue/SM +droid/S +droll/RPT +drollery/SM +drollness/M +drolly +dromedary/SM +drone/DSMG +drool/SMDG +droop/GSMD +droopiness/M +droopy/TPR +drop/MS +dropkick/MS +droplet/SM +dropout/SM +dropped +dropper/SM +dropping/S +droppings/M +dropsical +dropsy/M +dross/M +drought/SM +drove/RSMZ +drover/M +drown/GSJD +drowning/M +drowse/MGDS +drowsily +drowsiness/M +drowsy/RTP +drub/S +drubbed +drubber/SM +drubbing/MS +drudge/MGDS +drudgery/M +drug/MS +drugged +druggie/SM +drugging +druggist/SM +druggy +drugstore/MS +druid/SM +druidism/M +drum/MS +drumbeat/SM +drumlin/SM +drummed +drummer/SM +drumming +drumstick/SM +drunk/STMNR +drunkard/MS +drunken/PY +drunkenness/M +drupe/SM +druthers/M +dry/ZTGDRSM +dryad/SM +dryer/SM +dryness/M +drys +drywall/M +dual +dualism/M +duality/M +dub/SM +dubbed +dubber/SM +dubbin/M +dubbing +dubiety/M +dubious/YP +dubiousness/M +ducal +ducat/SM +duchess/MS +duchy/SM +duck/MDGS +duckbill/SM +duckboards +duckling/SM +duckpins/M +duckweed/M +ducky/TRSM +duct's/K +duct/CKIFS +ductile +ductility/M +ducting +ductless +dud/GSMD +dude/MS +dudgeon/M +due/SM +duel/MS +duelled +dueller/SM +duelling/S +duellist/SM +duenna/MS +duet/MS +duff/MDRZGS +duffer/M +dug +dugout/MS +duh +duke/MS +dukedom/SM +dulcet +dulcimer/MS +dull/DRPTGS +dullard/SM +dullness/M +dully +duly/U +dumb/RYPT +dumbbell/SM +dumbfound/SDG +dumbness/M +dumbo/S +dumbstruck +dumbwaiter/SM +dumdum/MS +dummy/SM +dump/MDRZGS +dumpiness/M +dumpling/SM +dumpsite/S +dumpster/SM +dumpy/PTR +dun/SM +dunce/SM +dunderhead/MS +dune/MS +dung/MDGS +dungaree/MS +dungeon/SM +dunghill/MS +dunk/MDGS +dunned +dunner +dunnest +dunning +dunno +duo/SM +duodecimal +duodena +duodenal +duodenum/M +duopoly/S +dupe/MZGDRS +duper/M +duple +duplex/MS +duplicate's +duplicate/AGNDS +duplication/AM +duplicator/MS +duplicitous +duplicity/M +durability/M +durable +durably +durance/M +duration/M +duress/M +during +durst +durum/M +dusk/M +duskiness/M +dusky/RTP +dust/MDRZGS +dustbin/SM +dustcart/S +duster/M +dustiness/M +dustless +dustman +dustmen +dustpan/SM +dustsheet/S +dusty/RTP +dutch +duteous/Y +dutiable +dutiful/YP +dutifulness/M +duty/SM +duvet/SM +dwarf/SGMD +dwarfish +dwarfism/M +dweeb/SM +dwell/SJZGR +dweller/M +dwelling/M +dwelt/I +dwindle/DSG +dyadic +dybbuk/SM +dybbukim +dye/DRSMZG +dyeing/A +dyer/M +dyestuff/M +dying/M +dyke/MGDS +dynamic/MS +dynamical/Y +dynamics/M +dynamism/M +dynamite/MZGDRS +dynamiter/M +dynamo/SM +dynastic +dynasty/SM +dysentery/M +dysfunction/MS +dysfunctional +dyslectic/SM +dyslexia/M +dyslexic/SM +dyspepsia/M +dyspeptic/MS +dysphagia +dysphoria +dysphoric +dysprosium/M +dystonia +dystopi +dystopia +dystopian +dz +e'en +e'er +e/FDST +eBay/M +eMusic/M +ea +each +eager/PTRY +eagerness/M +eagle/MS +eaglet/MS +ear/SMDY +earache/SM +earbud/SM +eardrum/SM +earful/SM +earl/MS +earldom/SM +earliness/M +earlobe/SM +early/RTP +earmark/SMDG +earmuff/SM +earn/DRZTGJS +earned/U +earner/M +earnest/SMYP +earnestness/M +earnings/M +earphone/MS +earpiece/S +earplug/SM +earring/SM +earshot/M +earsplitting +earth's +earth/UDYG +earthbound +earthen +earthenware/M +earthiness/M +earthling/MS +earthly/RT +earthquake/SM +earths/U +earthshaking +earthward/S +earthwork/MS +earthworm/MS +earthy/RTP +earwax/M +earwig/SM +ease/EDSM +easel/SM +easement/SM +easily/U +easiness/UM +easing +east/M +eastbound +easterly/SM +eastern/ZR +easterner/M +easternmost +eastward/S +easy/URTP +easygoing +eat/ZGBSNR +eatable/SM +eaten/U +eater/M +eatery/SM +eave/MS +eavesdrop/S +eavesdropped +eavesdropper/SM +eavesdropping +ebb/SMDG +ebony/SM +ebullience/M +ebullient/Y +ebullition/M +eccentric/SM +eccentrically +eccentricity/SM +eccl +ecclesial +ecclesiastic/SM +ecclesiastical/Y +echelon/SM +echidna +echinoderm/SM +echo's +echo/ADG +echoes/A +echoic +echolocation/M +echos +eclair/SM +eclat/M +eclectic/SM +eclectically +eclecticism/M +eclipse/DSMG +ecliptic/M +eclogue/SM +ecocide/M +ecol +ecologic +ecological/Y +ecologist/MS +ecology/M +econ +econometric/S +economic/S +economical/UY +economics/M +economise/DRSZG +economiser/M +economist/SM +economy/SM +ecosystem/MS +ecotourism/M +ecotourist/MS +ecru/M +ecstasy/SM +ecstatic +ecstatically +ecu +ecumenical/Y +ecumenicism/M +ecumenism/M +eczema/M +ed/ACSM +edamame +eddy/DSMG +edelweiss/M +edge/MZGJDRS +edger/M +edgewise +edgily +edginess/M +edging/M +edgy/RTP +edibility/M +edible/SMP +edibleness/M +edict/SM +edification/M +edifice/SM +edifier/M +edify/DRSZGN +edifying/U +edit's +edit/ADGS +editable +edited/U +edition/MS +editor/SM +editorial/SMY +editorialise/DSG +editorship/M +educ +educability/M +educable/I +educate/ADSGNV +educated/U +education/AM +educational/Y +educationalist/S +educationist/S +educations +educator/MS +educe/DSGB +edutainment/M +eek +eel/SM +eerie/RT +eerily +eeriness/M +eff/GSD +efface/DSLG +effacement/M +effect/SMDGV +effective/IPY +effectiveness/IM +effectual/IY +effectuate/DSG +effeminacy/M +effeminate/Y +effendi/SM +efferent +effervesce/GDS +effervescence/M +effervescent/Y +effete/YP +effeteness/M +efficacious/Y +efficacy/IM +efficiency/ISM +efficient/IY +effigy/SM +efflorescence/M +efflorescent +effluence/M +effluent/MS +effluvia +effluvium/M +efflux +effort/SM +effortful +effortless/YP +effortlessness/M +effrontery/M +effulgence/M +effulgent +effuse/DSGNVX +effusion/M +effusive/YP +effusiveness/M +egad +egalitarian/SM +egalitarianism/M +egg/GSMD +eggbeater/MS +eggcup/SM +egghead/SM +eggnog/M +eggplant/MS +eggshell/SM +eglantine/SM +ego/SM +egocentric/MS +egocentrically +egocentricity/M +egoism/M +egoist/SM +egoistic +egoistical/Y +egomania/M +egomaniac/MS +egotism/M +egotist/SM +egotistic +egotistical/Y +egregious/PY +egregiousness/M +egress/MS +egret/SM +eh +eider/SM +eiderdown/MS +eigenvalue/S +eigenvector/S +eight/SM +eighteen/MHS +eighteenth/M +eighteenths +eighth/M +eighths +eightieth/M +eightieths +eighty/SMH +einsteinium/M +eisteddfod/S +either +ejaculate/GNXDS +ejaculation/M +ejaculatory +eject/SDG +ejection/MS +ejector/SM +eke/DSG +elaborate/YGNDSPX +elaborateness/M +elaboration/M +elan/M +eland/SM +elapse/DSG +elastic/MS +elastically +elasticated +elasticise/DSG +elasticity/M +elate/DSGN +elated/Y +elation/M +elbow/SMDG +elbowroom/M +elder/SMY +elderberry/SM +eldercare/M +eldest +eldritch +elect's +elect/ASDGV +electable +election/AMS +electioneer/DGS +elective/MS +elector/MS +electoral/Y +electorate/MS +electric/S +electrical/Y +electrician/MS +electricity/M +electrification/M +electrifier/M +electrify/ZGNDRS +electrocardiogram/MS +electrocardiograph/M +electrocardiographs +electrocardiography/M +electrocute/DSXGN +electrocution/M +electrode/SM +electrodynamics +electroencephalogram/MS +electroencephalograph/M +electroencephalographic +electroencephalographs +electroencephalography/M +electrologist/SM +electrolysis/M +electrolyte/MS +electrolytic +electromagnet/MS +electromagnetic +electromagnetically +electromagnetism/M +electromotive +electron/MS +electronic/S +electronica/M +electronically +electronics/M +electroplate/DSG +electroscope/SM +electroscopic +electroshock/M +electrostatic/S +electrostatics/M +electrotype/MS +electroweak +eleemosynary +elegance/IM +elegant/IY +elegiac/MS +elegiacal +elegy/SM +elem +element/MS +elemental/Y +elementary +elephant/SM +elephantiasis/M +elephantine +elev +elevate/XDSGN +elevation/M +elevator/MS +eleven/SMH +elevens/S +eleventh/M +elevenths +elf/M +elfin +elfish +elicit/SDG +elicitation/M +elide/DSG +eligibility/IM +eligible +eliminate/XDSGN +elimination/M +eliminator/S +elision/MS +elite/SM +elitism/M +elitist/MS +elixir/SM +elk/SM +ell/SM +ellipse/MS +ellipsis/M +ellipsoid/SM +ellipsoidal +elliptic +elliptical/Y +elm/SM +elocution/M +elocutionary +elocutionist/SM +elodea/SM +elongate/DSGNX +elongation/M +elope/DSGL +elopement/MS +eloquence/M +eloquent/Y +else +elsewhere +elucidate/DSGNX +elucidation/M +elude/DSG +elusive/YP +elusiveness/M +elver/SM +elves +elvish +em's +em/S +emaciate/GNDS +emaciation/M +email/SMDG +emanate/XDSGN +emanation/M +emancipate/DSGN +emancipation/M +emancipator/MS +emasculate/GNDS +emasculation/M +embalm/SZGDR +embalmer/M +embank/SLGD +embankment/SM +embargo/MDG +embargoes +embark/AEGDS +embarkation/EM +embarkations +embarrass/GLDS +embarrassed/U +embarrassing/Y +embarrassment/SM +embassy/SM +embattled +embed/S +embedded +embedding +embellish/LGDS +embellishment/SM +ember/SM +embezzle/ZGLDRS +embezzlement/M +embezzler/M +embitter/GLDS +embitterment/M +emblazon/GDLS +emblazonment/M +emblem/SM +emblematic +emblematically +embodiment/EM +embody/AEGSD +embolden/DGS +embolisation +embolism/MS +emboss/DRSZG +embosser/M +embouchure/M +embower/SGD +embrace/DSMG +embraceable +embrasure/MS +embrocation/MS +embroider/SDRZG +embroiderer/M +embroidery/SM +embroil/DGLS +embroilment/M +embryo/SM +embryological +embryologist/MS +embryology/M +embryonic +emcee/DSM +emceeing +emend/SDG +emendation/MS +emerald/MS +emerge/ADSG +emergence/AM +emergency/SM +emergent +emerita +emeritus +emery/M +emetic/SM +emf/S +emigrant/SM +emigrate/DSXGN +emigration/M +emigre/SM +eminence/MS +eminent/Y +emir/MS +emirate/MS +emissary/SM +emission/SM +emit/S +emitted +emitter/MS +emitting +emo/SM +emoji/SM +emollient/MS +emolument/MS +emote/XDSGNV +emoticon/SM +emotion/M +emotional/UY +emotionalise/GDS +emotionalism/M +emotionless +emotive/Y +empathetic +empathically +empathise/DSG +empathy/M +emperor/MS +emphases +emphasis/M +emphasise/AGDS +emphatic/U +emphatically +emphysema/M +empire/SM +empiric +empirical/Y +empiricism/M +empiricist/SM +emplacement/SM +employ's +employ/ADGLS +employable/U +employee/SM +employer/SM +employment/UAM +employments +emporium/SM +empower/SDGL +empowerment/M +empress/MS +emptily +emptiness/M +empty/TGPDRSM +empyrean/M +emu/SM +emulate/DSGNVX +emulation/M +emulator/SM +emulsification/M +emulsifier/M +emulsify/NDRSZG +emulsion/MS +en/SM +enable/DRSZG +enabler/M +enact/ASLDG +enactment/ASM +enamel/SM +enamelled +enameller/SM +enamelling/S +enamelware/M +enamour/DGS +enc +encamp/LSGD +encampment/MS +encapsulate/XGNDS +encapsulation/M +encase/LDSG +encasement/M +encephalitic +encephalitis/M +enchain/DGS +enchant/ELDGS +enchanter/MS +enchanting/Y +enchantment/EM +enchantments +enchantress/MS +enchilada/SM +encipher/SGD +encircle/DSGL +encirclement/M +encl +enclave/MS +enclose/GDS +enclosed/U +enclosure/SM +encode/DRSZG +encoder/M +encomium/MS +encompass/GDS +encore/DSMG +encounter/GSMD +encourage/DSLG +encouragement/SM +encouraging/Y +encroach/GLDS +encroachment/SM +encrust/DGS +encrustation/SM +encrypt/DGS +encryption +encumber/EGSD +encumbered/U +encumbrance/MS +ency +encyclical/SM +encyclopaedia/SM +encyclopaedic +encyclopedia/MS +encyclopedic +encyst/LSGD +encystment/M +end/GVSJMD +endanger/SGDL +endangerment/M +endear/SGLD +endearing/Y +endearment/SM +endeavour/MDSG +endemic/MS +endemically +endgame/S +ending/M +endive/SM +endless/PY +endlessness/M +endmost +endocarditis +endocrine/MS +endocrinologist/MS +endocrinology/M +endogenous/Y +endometrial +endometriosis +endometrium +endorphin/MS +endorse/LZGDRS +endorsement/MS +endorser/M +endoscope/MS +endoscopic +endoscopy/M +endothelial +endothermic +endotracheal +endow/SDLG +endowment/MS +endpoint/SM +endue/DSG +endurable/U +endurance/M +endure/DSBG +endways +enema/SM +enemy/SM +energetic +energetically +energise/ZGDRS +energiser/M +energy/SM +enervate/GNDS +enervation/M +enfeeble/GDSL +enfeeblement/M +enfilade/DSMG +enfold/SGD +enforce/LZGDRS +enforceable/U +enforced/U +enforcement/M +enforcer/M +enfranchise/EGDSL +enfranchisement/EM +engage/EADSG +engagement/EMS +engagingly +engender/SGD +engine/SM +engineer/MDGS +engineering/M +engorge/LGDS +engorgement/M +engram/SM +engrave/ZGJDRS +engraver/M +engraving/M +engross/GLDS +engrossment/M +engulf/SLGD +engulfment/M +enhance/LZGDRS +enhancement/SM +enigma/SM +enigmatic +enigmatically +enjambment/SM +enjoin/SGD +enjoy/GBLSD +enjoyably +enjoyment/SM +enlarge/LZGDRS +enlargeable +enlargement/MS +enlarger/M +enlighten/SGLD +enlightened/U +enlightenment/M +enlist/ADGSL +enlistee/SM +enlistment/AM +enlistments +enliven/SLDG +enlivenment/M +enmesh/DSGL +enmeshment/M +enmity/SM +ennoble/DSGL +ennoblement/M +ennui/M +enormity/SM +enormous/PY +enormousness/M +enough/M +enplane/DSG +enqueue/DS +enquire/DRSZG +enquiring/Y +enquiry/SM +enrage/GDS +enrapture/DSG +enrich/DSLG +enrichment/M +enrol/SL +enrolled +enrolling +enrolment/SM +ensconce/DSG +ensemble/SM +enshrine/GLDS +enshrinement/M +enshroud/DGS +ensign/MS +ensilage/M +enslave/DSGL +enslavement/M +ensnare/DSLG +ensnarement/M +ensue/DSG +ensure/ZGDRS +ensurer/M +entail/DSGL +entailment/M +entangle/EDSLG +entanglement/EM +entanglements +entente/SM +enter/ASGD +enteral +enteric +enteritis/M +enterprise/MGS +enterprising/Y +entertain/ZGDRSL +entertainer/M +entertaining/MY +entertainment/MS +enthral/SL +enthralled +enthralling +enthralment/M +enthrone/GDSL +enthronement/SM +enthuse/DSG +enthusiasm/MS +enthusiast/MS +enthusiastic/U +enthusiastically +entice/GDSL +enticement/MS +enticing/Y +entire/Y +entirety/M +entitle/DSGL +entitlement/SM +entity/SM +entomb/DSGL +entombment/M +entomological +entomologist/MS +entomology/M +entourage/SM +entr'acte +entrails/M +entrained +entrance/LDSMG +entrancement/M +entrancing/Y +entrant/SM +entrap/LS +entrapment/M +entrapped +entrapping +entreat/GSD +entreating/Y +entreaty/SM +entree/MS +entrench/DSGL +entrenchment/MS +entrepreneur/SM +entrepreneurial +entrepreneurship +entropy/M +entrust/SGD +entry/ASM +entryphone/S +entryway/MS +entwine/DSG +enumerable +enumerate/DSGNX +enumeration/M +enumerator/SM +enunciate/DSGN +enunciation/M +enuresis/M +envelop/SLDRZG +envelope/SM +enveloper/M +envelopment/M +envenom/SDG +enviable/U +enviably +envious/PY +enviousness/M +environment/MS +environmental/Y +environmentalism/M +environmentalist/SM +environs/M +envisage/GDS +envision/DGS +envoy/SM +envy/DSMG +envying/Y +enzymatic +enzyme/SM +eolian +eosinophil/S +eosinophilic +epaulette/MS +epee/MS +ephedrine/M +ephemera/M +ephemeral/Y +epic/MS +epicentre/MS +epicure/SM +epicurean/MS +epidemic/SM +epidemically +epidemiological +epidemiologist/SM +epidemiology/M +epidermal +epidermic +epidermis/MS +epidural/S +epiglottis/MS +epigram/SM +epigrammatic +epigraph/M +epigraphs +epigraphy/M +epilepsy/M +epileptic/SM +epilogue/MS +epinephrine/M +epiphany/SM +episcopacy/M +episcopal +episcopate/M +episode/SM +episodic +episodically +epistemic +epistemological +epistemology +epistle/SM +epistolary +epitaph/M +epitaphs +epithelial +epithelium/M +epithet/SM +epitome/SM +epitomise/GDS +epoch/M +epochal +epochs +eponymous +epoxy/DSMG +epsilon/SM +equability/M +equable +equably +equal/SMY +equalisation/M +equalise/ZGDRS +equaliser/M +equality/IM +equalled/U +equalling +equanimity/M +equate/DSGNBX +equation/M +equator/SM +equatorial +equerry/SM +equestrian/SM +equestrianism/M +equestrienne/SM +equidistant/Y +equilateral/SM +equilibrium/EM +equine/SM +equinoctial +equinox/MS +equip/AS +equipage/MS +equipment/M +equipoise/M +equipped/UA +equipping/A +equitable/I +equitably/I +equitation/M +equity/ISM +equiv +equivalence/MS +equivalency/SM +equivalent/MYS +equivocal/UY +equivocalness/M +equivocate/GNXDS +equivocation/M +equivocator/SM +er/C +era/SM +eradicable/I +eradicate/DSGN +eradication/M +eradicator/MS +erase/DRSBZG +eraser/M +erasure/SM +erbium/M +ere +erect/PSGDY +erectile +erection/SM +erectness/M +erector/MS +erelong +eremite/MS +erg/SM +ergo +ergonomic/S +ergonomically +ergonomics/M +ergosterol/M +ergot/M +ermine/SM +erode/DSG +erodible +erogenous +erosion/M +erosive +erotic/S +erotica/M +erotically +eroticism/M +err/GSD +errand/SM +errant/I +errata/SM +erratic +erratically +erratum/M +erroneous/Y +error/SM +ersatz/MS +erst +erstwhile +eruct/SDG +eructation/SM +erudite/YN +erudition/M +erupt/SDGV +eruption/MS +erysipelas/M +erythrocyte/SM +erythromycin +escalate/CDSGN +escalation/CM +escalations +escalator/MS +escallop/SGMD +escalope/S +escapade/MS +escape/LMGDS +escapee/MS +escapement/SM +escapism/M +escapist/MS +escapologist/S +escapology +escargot/MS +escarole/MS +escarpment/MS +eschatological +eschatology +eschew/SDG +escort/SMDG +escritoire/MS +escrow/SM +escudo/SM +escutcheon/SM +esophageal +esophagus's +esoteric +esoterically +esp +espadrille/MS +espalier/MDSG +especial/Y +espionage/M +esplanade/MS +espousal/M +espouse/GDS +espresso/MS +esprit/M +espy/DSG +esquire/SM +essay/SMDRZG +essayer/M +essayist/SM +essence/SM +essential/IMS +essentially +establish/AESDGL +establishment/AEM +establishments +estate/SM +esteem/ESMDG +ester/SM +estimable/I +estimate/MGNDSX +estimation/M +estimator/SM +estoppel +estrange/LDSG +estrangement/MS +estuary/SM +eta/SM +etc +etch/DRSZGJ +etcher/M +etching/M +eternal/YP +eternalness/M +eternity/SM +ethane/M +ethanol/M +ether/M +ethereal/Y +ethic/SM +ethical/UY +ethics/M +ethmoid +ethnic/SM +ethnically +ethnicity/M +ethnocentric +ethnocentrism/M +ethnographer/S +ethnographic +ethnographically +ethnography +ethnological/Y +ethnologist/SM +ethnology/M +ethological +ethologist/MS +ethology/M +ethos/M +ethyl/M +ethylene/M +etiolated +etiologic +etiological +etiologies +etiquette/M +etude/SM +etymological/Y +etymologist/SM +etymology/SM +eucalypti +eucalyptus/MS +euchre/DSMG +euclidean +eugenic/S +eugenically +eugenicist/MS +eugenics/M +eukaryote/SM +eukaryotic +eulogise/ZGDRS +eulogiser/M +eulogist/MS +eulogistic +eulogy/SM +eunuch/M +eunuchs +euphemism/SM +euphemistic +euphemistically +euphonious/Y +euphony/M +euphoria/M +euphoric +euphorically +eureka +euro/MS +europium/M +eutectic +euthanasia/M +euthanize/DSG +euthenics/M +eutrophication +evacuate/XDSGN +evacuation/M +evacuee/MS +evade/DRSZG +evader/M +evaluate/AGNVDSX +evaluation/AM +evaluator/S +evanescence/M +evanescent +evangelic +evangelical/SMY +evangelicalism/M +evangelise/GDS +evangelism/M +evangelist/MS +evangelistic +evaporate/GNDS +evaporation/M +evaporator/SM +evasion/SM +evasive/YP +evasiveness/M +eve/ASM +even/MDRYTGSJP +evenhanded/Y +evening/M +evenness/UM +evensong/M +event/SM +eventful/UY +eventfulness/M +eventide/M +eventual/Y +eventuality/SM +eventuate/GDS +ever +everglade/SM +evergreen/SM +everlasting/MYS +evermore +every +everybody/M +everyday +everyone/M +everyplace +everything/M +everywhere +evict/SDG +eviction/MS +evidence/MGDS +evident/Y +evil/MRYTSP +evildoer/SM +evildoing/M +eviller +evillest +evilness/M +evince/DSG +eviscerate/DSGN +evisceration/M +evocation/MS +evocative/Y +evoke/DSG +evolution/M +evolutionary +evolutionist/SM +evolve/DSG +ewe/RSMZ +ewer/M +ex/MS +exabyte/MS +exacerbate/GNDS +exacerbation/M +exact/SPDRYTG +exacting/Y +exaction/M +exactitude/M +exactness/IM +exaggerate/XDSGN +exaggerated/Y +exaggeration/M +exaggerator/MS +exajoule/S +exalt/SDG +exaltation/M +exam/MS +examination/AMS +examine/AGDS +examiner/MS +example/MGDS +exampled/U +exasperate/DSGN +exasperated/Y +exasperating/Y +exasperation/M +excavate/GNDSX +excavation/M +excavator/SM +exceed/GSD +exceeding/Y +excel/S +excelled +excellence/M +excellency/SM +excellent/Y +excelling +excelsior/M +except/GSD +exception/BSM +exceptionable/U +exceptional/UY +exceptionalism +excerpt/MDGS +excess/VMS +excessive/Y +exchange/DSMG +exchangeable +exchequer/SM +excise/XDSMGN +excision/M +excitability/M +excitably +excitation/M +excite/BDRSLZG +excited/Y +excitement/SM +exciter/M +exciting/Y +exciton +excl +exclaim/DGS +exclamation/SM +exclamatory +exclude/GDS +exclusion/MS +exclusionary +exclusive/PMYS +exclusiveness/M +exclusivity/M +excommunicate/GNDSX +excommunication/M +excoriate/DSGNX +excoriation/M +excrement/M +excremental +excrescence/MS +excrescent +excreta/M +excrete/XGNDS +excretion/M +excretory +excruciating/Y +exculpate/DSGN +exculpation/M +exculpatory +excursion/MS +excursionist/MS +excursive/YP +excursiveness/M +excusable/I +excusably/I +excuse/DSBMG +excused/U +exec/MS +execrable +execrably +execrate/DSGN +execration/M +execute/BXGNVDS +execution/ZMR +executioner/M +executive/SM +executor/MS +executrices +executrix/M +exegeses +exegesis/M +exegetic +exegetical +exemplar/SM +exemplary +exemplification/M +exemplify/GDSXN +exempt/SGD +exemption/SM +exercise/DRSMZG +exerciser/M +exert/SDG +exertion/MS +exeunt +exfoliate/GNDS +exhalation/MS +exhale/DSG +exhaust/GVMDS +exhaustible/I +exhaustion/M +exhaustive/YP +exhaustiveness/M +exhibit/GMDS +exhibition/MS +exhibitionism/M +exhibitionist/MS +exhibitor/SM +exhilarate/DSGN +exhilaration/M +exhort/SDG +exhortation/MS +exhumation/MS +exhume/DSG +exigence/MS +exigency/SM +exigent +exiguity/M +exiguous +exile/DSMG +exilic +exist/SDG +existence/MS +existent +existential/Y +existentialism/M +existentialist/MS +exit/MDGS +exobiology/M +exodus/MS +exogenous +exon/MS +exonerate/GNDS +exoneration/M +exoplanet/MS +exorbitance/M +exorbitant/Y +exorcise/DSG +exorcism/SM +exorcist/SM +exoskeleton/SM +exosphere/SM +exothermic +exotic/SM +exotica +exotically +exoticism/M +exp +expand/BGSD +expanse/XMNVS +expansible +expansion/M +expansionary +expansionism/M +expansionist/MS +expansive/YP +expansiveness/M +expat/S +expatiate/GNDS +expatiation/M +expatriate/DSMGN +expatriation/M +expect/GSD +expectancy/M +expectant/Y +expectation/SM +expectorant/SM +expectorate/DSGN +expectoration/M +expedience/IM +expediences +expediencies +expediency/IM +expedient/SMY +expedite/DRSZGNX +expediter/M +expedition/M +expeditionary +expeditious/PY +expeditiousness/M +expel/S +expelled +expelling +expend/GSBD +expendable/SM +expenditure/SM +expense/MS +expensive/IYP +expensiveness/IM +experience/IMD +experiences +experiencing +experiential +experiment/MDRSZG +experimental/Y +experimentation/M +experimenter/M +expert/SPMY +expertise/M +expertness/M +expiate/GNDS +expiation/M +expiatory +expiration/M +expire/DSG +expired/U +expiry/M +explain/ADGS +explainable +explained/U +explanation/MS +explanatory +expletive/MS +explicable/I +explicate/XGNDS +explication/M +explicit/PY +explicitness/M +explode/GDS +exploit/ZGBMDRS +exploitation/M +exploitative +exploited/U +exploiter/M +exploration/MS +exploratory +explore/ZGDRS +explored/U +explorer/M +explosion/SM +explosive/SPMY +explosiveness/M +expo/MS +exponent/MS +exponential/Y +exponentiation +export/BSZGMDR +exportation/M +exporter/M +expose/DSMG +exposed/U +exposition/SM +expositor/SM +expository +expostulate/GNXDS +expostulation/M +exposure/MS +expound/ZGDRS +expounder/M +express/GVMDSY +expressed/U +expressible/I +expression/SM +expressionism/M +expressionist/SM +expressionistic +expressionless/Y +expressive/PY +expressiveness/M +expressway/SM +expropriate/GNXDS +expropriation/M +expropriator/SM +expulsion/MS +expunge/GDS +expurgate/DSGNX +expurgated/U +expurgation/M +exquisite/YP +exquisiteness/M +ext +extant +extemporaneous/PY +extemporaneousness/M +extempore +extemporisation/M +extemporise/GDS +extend/SZGDRB +extender/M +extensibility +extensible +extension/SM +extensional +extensive/YP +extensiveness/M +extent/SM +extenuate/DSGN +extenuation/M +exterior/MS +exterminate/DSXGN +extermination/M +exterminator/MS +external/MYS +externalisation/MS +externalise/DSG +extinct/GDS +extinction/MS +extinguish/ZGBDRS +extinguishable/I +extinguisher/M +extirpate/GNDS +extirpation/M +extol/S +extolled +extolling +extort/SGD +extortion/MRZ +extortionate/Y +extortioner/M +extortionist/MS +extra/SM +extracellular +extract/MDGVS +extraction/SM +extractor/MS +extracurricular +extradite/GNBXDS +extradition/M +extrajudicial +extralegal +extramarital +extramural +extraneous/Y +extraordinaire +extraordinarily +extraordinary +extrapolate/XGNDS +extrapolation/M +extrasensory +extraterrestrial/MS +extraterritorial +extraterritoriality/M +extravagance/MS +extravagant/Y +extravaganza/MS +extravehicular +extreme/PMYTRS +extremeness/M +extremism/M +extremist/MS +extremity/SM +extricable/I +extricate/GNDS +extrication/M +extrinsic +extrinsically +extroversion/M +extrovert/SMD +extrude/GDS +extrusion/SM +extrusive +exuberance/M +exuberant/Y +exudation/M +exude/DSG +exult/SDG +exultant/Y +exultation/M +exurb/SM +exurban +exurbanite/SM +exurbia/M +eye/DSM +eyeball/GMDS +eyebrow/SM +eyedropper/SM +eyeful/SM +eyeglass/MS +eyeing +eyelash/MS +eyeless +eyelet/SM +eyelid/SM +eyeliner/MS +eyeopener/MS +eyeopening +eyepiece/MS +eyesight/M +eyesore/MS +eyestrain/M +eyeteeth +eyetooth/M +eyewash/M +eyewitness/MS +f/CIAVTR +fMRI +fa/M +fab +fable/DSM +fabric/SM +fabricate/DSGNX +fabrication/M +fabricator/SM +fabulous/Y +facade/SM +face's +face/ACSDG +facecloth/M +facecloths +faceless +facepalm/SDG +facet/SMDG +facetious/YP +facetiousness/M +facial/SMY +facile/Y +facilitate/GNDS +facilitation/M +facilitator/MS +facility/SM +facing/SM +facsimile/DSM +facsimileing +fact/MS +faction/SM +factional +factionalism/M +factious +factitious +factoid/SM +factor's +factor/ASDG +factorial/MS +factorisation +factorise/GDS +factory/SM +factotum/SM +factual/Y +faculty/SM +fad/GSMD +faddish/P +faddist/MS +faddy/P +fade/MS +fading/U +faecal +faeces/M +faerie/SM +faff/DGS +fag/SM +fagged +fagging +faggot/SMG +faience/M +fail/DGJS +failing/M +faille/M +failure/SM +fain/RT +faint/SMDRYTGP +fainthearted +faintness/M +fair/MRYTGJPS +fairground/MS +fairing/M +fairness/UM +fairway/SM +fairy/SM +fairyland/SM +faith/M +faithful's +faithful/UPY +faithfulness/UM +faithfuls +faithless/PY +faithlessness/M +faiths +fajita/SM +fajitas/M +fake/MZGDRS +faker/M +fakir/SM +falcon/SMRZ +falconer/M +falconry/M +fall/MNGS +fallacious/Y +fallacy/SM +fallback +fallibility/IM +fallible/P +fallibleness/M +fallibly/I +falloff/SM +fallout/M +fallow/SMDG +false/PRYT +falsehood/SM +falseness/M +falsetto/SM +falsie/SM +falsifiable +falsification/M +falsifier/M +falsify/DRSZGNX +falsity/SM +falter/GSJMD +faltering/Y +fame's +fame/D +familial +familiar/MYS +familiarisation/M +familiarise/GDS +familiarity/UM +family/SM +famine/SM +famish/DSG +famous/IY +fan/SM +fanatic/SM +fanatical/Y +fanaticism/M +fanboy/SM +fanciable +fancier/M +fanciful/YP +fancifulness/M +fancily +fanciness/M +fancy/DRSMZTGP +fancywork/M +fandango/MS +fandom +fanfare/SM +fang/MDS +fanlight/SM +fanned +fanning +fanny/SM +fantail/MS +fantasia/SM +fantasise/GDS +fantasist/S +fantastic +fantastical/Y +fantasy/DSMG +fanzine/MS +far +farad/SM +faradize/DG +faraway +farce/SM +farcical/Y +fare/MGDS +farewell/SM +farina/M +farinaceous +farm/MDRZGSJ +farmer/M +farmhand/SM +farmhouse/SM +farming/M +farmland/MS +farmstead/MS +farmyard/MS +faro/M +farrago/M +farragoes +farrier/MS +farrow/SMDG +farseeing +farsighted/P +farsightedness/M +fart/MDGS +farther +farthermost +farthest +farthing/SM +fascia/SM +fascicle/SM +fascinate/GNDSX +fascinating/Y +fascination/M +fascism/M +fascist/MS +fascistic +fashion/ZGBMDRS +fashionable/U +fashionably/U +fashioner/M +fashionista/MS +fast/MDRTGSP +fastback/SM +fastball/SM +fasten/UAGDS +fastener/SM +fastening/MS +fastidious/PY +fastidiousness/M +fastness/MS +fat/GSPMD +fatal/Y +fatalism/M +fatalist/SM +fatalistic +fatalistically +fatality/SM +fatback/M +fate/MS +fateful/YP +fatefulness/M +fathead/MDS +father/SGMDY +fatherhood/M +fatherland/MS +fatherless +fathom/SMDGB +fathomable/U +fathomless +fatigue/MDSG +fatigues/M +fatness/M +fatso/S +fatten/SDG +fatter +fattest +fattiness/M +fatty/RSMTP +fatuity/M +fatuous/YP +fatuousness/M +fatwa/SM +faucet/SM +fault/CSMDG +faultfinder/SM +faultfinding/M +faultily +faultiness/M +faultless/PY +faultlessness/M +faulty/PRT +faun/MS +fauna/SM +fauvism/M +fauvist/SM +faux +fave/S +favour/ESMDG +favourable/U +favourably/U +favourite/MS +favouritism/M +fawn/MDRZGS +fawner/M +fax/GMDS +fay/TSM +fayre +faze/GDS +fazed/U +fealty/M +fear/MDGS +fearful/YP +fearfulness/M +fearless/PY +fearlessness/M +fearsome +feasibility/M +feasible/IU +feasibly +feast/SMDRZG +feaster/M +feat/MS +feather/SGMD +featherbedding/M +featherbrained +featherless +featherweight/MS +feathery/TR +feature/DSMG +featureless +febrile +feckless/PY +fecund +fecundate/GNDS +fecundation/M +fecundity/M +fed/SM +federal/SMY +federalisation/M +federalise/GDS +federalism/M +federalist/MS +federate/FXDSGN +federation/FM +fedora/SM +fee/SM +feeble/RTP +feebleness/M +feebly +feed/MRZGSJ +feedback/M +feedbag/SM +feeder/M +feeding/M +feedlot/SM +feel/MRZGSJ +feeler/M +feelgood +feeling/MY +feet +feign/SDG +feigned/U +feint/SMDG +feisty/TR +feldspar/M +felicitate/GNXDS +felicitation/M +felicitous/Y +felicity/ISM +feline/SM +fell/MDRZTGS +fella/S +fellatio/M +fellow/SM +fellowman/M +fellowmen +fellowship/MS +felon/SM +felonious +felony/SM +felt/MDGS +fem +female/PSM +femaleness/M +feminine/SMY +femininity/M +feminise/DSG +feminism/M +feminist/SM +femoral +femur/SM +fen/SM +fence/CDSMG +fencer/SM +fencing/M +fend/CDRZGS +fender/CM +fenestration/M +fennel/M +fentanyl/M +feral +ferment/FCMS +fermentation/M +fermented +fermenting +fermium/M +fern/MS +ferny/RT +ferocious/PY +ferociousness/M +ferocity/M +ferret/GSMD +ferric +ferromagnetic +ferromagnetism +ferrous +ferrule/MS +ferry/DSMG +ferryboat/SM +ferryman/M +ferrymen +fertile/I +fertilisation/M +fertilise/DRSZG +fertilised/U +fertiliser/M +fertility/IM +ferule/SM +fervency/M +fervent/Y +fervid/Y +fervour/M +fess/FKGSD +fest/MRZVS +festal +fester/GMD +festival/SM +festive/YP +festiveness/M +festivity/SM +festoon/GMDS +feta/M +fetal +fetch/DRSZG +fetcher/M +fetching/Y +fete/MGDS +fetid/P +fetidness/M +fetish/MS +fetishism/M +fetishist/SM +fetishistic +fetlock/MS +fetter's +fetter/USGD +fettle/M +fettuccine/M +fetus/MS +feud/MDGS +feudal +feudalism/M +feudalistic +fever/SMD +feverish/YP +feverishness/M +few/TPMR +fewness/M +fey +fez/M +fezzes +ff +fiance/CM +fiancee/MS +fiances +fiasco/M +fiascoes +fiat/MS +fib/SM +fibbed +fibber/SM +fibbing +fibre/SM +fibreboard/M +fibrefill/M +fibreglass/M +fibril/SM +fibrillate/GNDS +fibrillation/M +fibrin/M +fibroid +fibrosis/M +fibrous +fibula/M +fibulae +fibular +fiche/SM +fichu/SM +fickle/RPT +fickleness/M +fiction/MS +fictional/Y +fictionalisation/SM +fictionalise/DSG +fictitious/Y +fictive +ficus/M +fiddle/DRSMZG +fiddler/M +fiddlesticks +fiddly/TR +fidelity/IM +fidget/SGMD +fidgety +fiduciary/SM +fie +fief/MS +fiefdom/MS +field/ISMRZ +fielded +fielder/IM +fielding +fieldsman +fieldsmen +fieldwork/MRZ +fieldworker/M +fiend/SM +fiendish/Y +fierce/PRYT +fierceness/M +fieriness/M +fiery/RPT +fiesta/SM +fife/MZRS +fifer/M +fifteen/MHS +fifteenth/M +fifteenths +fifth/MY +fifths +fiftieth/M +fiftieths +fifty/SMH +fig/SLM +fight/SMRZG +fightback +fighter/IMS +fighting/IM +figment/MS +figuration/FM +figurative/Y +figure's +figure/FEGSD +figurehead/SM +figurine/MS +filament/MS +filamentous +filbert/MS +filch/DSG +file's/KC +file/CAKGDS +filename/S +filer/CSM +filet +filial +filibuster/MDRSZG +filibusterer/M +filigree/DSM +filigreeing +filing's +filings +fill's +fill/AIDGS +filled/U +filler/MS +fillet/MDGS +filling/SM +fillip/MDGS +filly/SM +film/MDGS +filminess/M +filmmaker/SM +filmstrip/MS +filmy/TPR +filo +filter/MDRBSZG +filtered/U +filterer/M +filth/M +filthily +filthiness/M +filthy/RPT +filtrate's +filtrate/IGNDS +filtration/IM +fin/SMR +finagle/DRSZG +finagler/M +final/SMY +finale/MS +finalisation/M +finalise/DSG +finalist/SM +finality/M +finance's +finance/ADSG +financial/Y +financier/MS +financing/M +finch/MS +find/JMRZGS +finder/M +finding/M +findings/M +fine's/F +fine/CAFTGDS +finely +fineness/M +finery/AM +finespun +finesse/DSMG +finger/MDGSJ +fingerboard/SM +fingering/M +fingerling/SM +fingermark/S +fingernail/SM +fingerprint/SGMD +fingertip/MS +finial/MS +finical +finickiness/M +finicky/RPT +finis/MS +finish's +finish/ADSG +finished/U +finisher/MS +finite/IY +fink/MDGS +finned +finny +fir/ZGSJMDRH +fire/MS +firearm/SM +fireball/MS +firebomb/MDSJG +firebox/MS +firebrand/SM +firebreak/SM +firebrick/SM +firebug/SM +firecracker/SM +firedamp/M +firefight/MRSZG +firefighter/M +firefighting/M +firefly/SM +fireguard/S +firehouse/SM +firelight/ZMR +fireman/M +firemen +fireplace/SM +fireplug/MS +firepower/M +fireproof/DSG +firer/M +firescreen/S +fireside/MS +firestorm/MS +firetrap/MS +firetruck/MS +firewall/MS +firewater/M +firewood/M +firework/SM +firm/MDRYPTGS +firmament/SM +firmness/M +firmware/M +first/SMY +firstborn/SM +firsthand +firth/M +firths +fiscal/MYS +fish/MDRSZG +fishbowl/SM +fishcake/SM +fisher/M +fisherman/M +fishermen +fishery/SM +fishhook/SM +fishily +fishiness/M +fishing/M +fishmonger/MS +fishnet/SM +fishpond/MS +fishtail/DGS +fishwife/M +fishwives +fishy/TRP +fissile +fission/BM +fissure/SM +fist/MS +fistfight/MS +fistful/SM +fisticuffs/M +fistula/SM +fistulous/M +fit/KAMS +fitful/YP +fitfulness/M +fitly +fitment/S +fitness/UM +fitted/UA +fitter/MS +fittest +fitting/SMY +five/MZRS +fix/ZGBJMDRS +fixate/GNVDSX +fixation/M +fixative/MS +fixed/Y +fixer/M +fixings/M +fixity/M +fixture/MS +fizz/MDSG +fizzle/DSMG +fizzy/RT +fjord/SM +fl/JDG +flab/M +flabbergast/SGD +flabbily +flabbiness/M +flabby/RPT +flaccid/Y +flaccidity/M +flack/SM +flag/MS +flagella +flagellant/S +flagellate/GNDS +flagellation/M +flagellum/M +flagged +flagging/U +flagman/M +flagmen +flagon/MS +flagpole/SM +flagrance/M +flagrancy/M +flagrant/Y +flagship/SM +flagstaff/MS +flagstone/MS +flail/SGMD +flair/SM +flak/M +flake/DSMG +flakiness/M +flaky/TRP +flamage +flambe/MS +flambeed +flambeing +flamboyance/M +flamboyancy/M +flamboyant/Y +flame/DRSJMZG +flamenco/MS +flameproof/DGS +flamethrower/SM +flamingo/MS +flammability/IM +flammable/SM +flan/MS +flange/MS +flank/SZGMDR +flanker/M +flannel/SM +flannelette/M +flannelled +flannelling +flap/MS +flapjack/MS +flapped +flapper/SM +flapping +flare/DSMG +flareup/SM +flash/ZTGMDRS +flashback/SM +flashbulb/SM +flashcard/SM +flashcube/SM +flasher/M +flashgun/SM +flashily +flashiness/M +flashing/M +flashlight/MS +flashy/RTP +flask/SM +flat/MYPS +flatbed/SM +flatboat/SM +flatbread +flatcar/SM +flatfeet +flatfish/MS +flatfoot/SMD +flatiron/SM +flatland/M +flatlet/S +flatmate/S +flatness/M +flatted +flatten/SDG +flatter/SDRZG +flatterer/M +flattering/Y +flattery/M +flattest +flatting +flattish +flattop/SM +flatulence/M +flatulent +flatus/M +flatware/M +flatworm/SM +flaunt/MDSG +flaunting/Y +flautist/SM +flavour/SMDJG +flavoured/U +flavourful +flavouring/M +flavourless +flavoursome +flaw/MDGS +flawless/PY +flawlessness/M +flax/MN +flay/DGS +flea/MS +fleabag/SM +fleabite/S +fleapit/S +fleck/SGMD +fledged/U +fledgling/MS +flee/S +fleece/MZGDRS +fleecer/M +fleeciness/M +fleecy/RTP +fleeing +fleet/STGMDRYP +fleetingly/M +fleetingness/M +fleetness/M +flesh/GMDSY +fleshly/TR +fleshpot/MS +fleshy/RT +flew +flex/AMS +flexed +flexibility/IM +flexible/I +flexibly/I +flexing +flexion +flextime/M +flibbertigibbet/SM +flick/SZGMDR +flicker/GMD +flight/MS +flightiness/M +flightless +flighty/PTR +flimflam/SM +flimflammed +flimflamming +flimsily +flimsiness/M +flimsy/TRP +flinch/GMDS +fling/GM +flint/SM +flintlock/SM +flinty/TR +flip/MS +flippancy/M +flippant/Y +flipped +flipper/MS +flippest +flipping +flippy/S +flirt/SGMD +flirtation/MS +flirtatious/YP +flirtatiousness/M +flirty +flit/MS +flitted +flitting +float/SMDRZG +floater/M +flock/SMDG +flocking/M +floe/MS +flog/S +flogged +flogger/SM +flogging/MS +flood/SMDRG +floodgate/MS +floodlight/MDSG +floodlit +floodplain/MS +floodwater/MS +floor/SMDG +floorboard/MS +flooring/M +floorwalker/SM +floozy/SM +flop/MS +flophouse/MS +flopped +floppily +floppiness/M +flopping +floppy/PRSMT +flora/SM +floral +florescence/IM +florescent/I +floret/SM +florid/PY +floridness/M +florin/SM +florist/SM +floss/MDSG +flossy/RT +flotation/SM +flotilla/MS +flotsam/M +flounce/DSMG +flouncy +flounder/MDSG +flour/SMDG +flourish/GMDS +floury +flout/SMDRZG +flouter/M +flow/MDGS +flowchart/SM +flower's +flower/CSDG +flowerbed/MS +floweriness/M +flowering/S +flowerless +flowerpot/MS +flowery/PTR +flown +flt +flu/M +flub/MS +flubbed +flubbing +fluctuate/GNDSX +fluctuation/M +flue/MS +fluency/M +fluent/Y +fluff/SMDG +fluffiness/M +fluffy/RPT +fluid/SMY +fluidity/M +fluke/SM +fluky/RT +flume/SM +flummox/DSG +flung +flunk/SMDG +flunky/SM +fluoresce/DSG +fluorescence/M +fluorescent +fluoridate/GNDS +fluoridation/M +fluoride/SM +fluorine/M +fluorite/M +fluorocarbon/MS +fluoroscope/SM +fluoroscopic +fluoxetine +flurry/GDSM +flush/MDRSTG +fluster/MDSG +flute/DSMG +fluting/M +flutter/MDSG +fluttery +fluvial +flux/IMS +fluxed +fluxing +fly/TGBDSM +flyaway +flyblown +flyby/M +flybys +flycatcher/MS +flyer/SM +flying/M +flyleaf/M +flyleaves +flyover/MS +flypaper/SM +flypast/S +flysheet/S +flyspeck/GMDS +flyswatter/MS +flytrap/S +flyway/SM +flyweight/SM +flywheel/MS +foal/MDGS +foam/MDGS +foaminess/M +foamy/RTP +fob/SM +fobbed +fobbing +focal/Y +focus's +focus/ADSG +focused/U +fodder/SM +foe/SM +fog's +fog/CS +fogbound +fogey/SM +fogged/C +foggily +fogginess/M +fogging/C +foggy/RTP +foghorn/MS +fogyish +foible/SM +foil/MDGS +foist/SDG +fol +fold's +fold/AUSGD +foldaway +folder/SM +foldout/MS +foliage/M +folic +folio/SM +folk/MS +folklore/M +folkloric +folklorist/MS +folksiness/M +folksinger/SM +folksinging/M +folksy/PTR +folktale/MS +folkway/MS +foll +follicle/MS +follow/SDRZGJ +follower/M +following/M +followup/S +folly/SM +foment/SGD +fomentation/M +fond/RYTP +fondant/MS +fondle/DSG +fondness/M +fondue/SM +font/MS +fontanelle/MS +foo +foobar +food/MS +foodie/SM +foodstuff/SM +fool/MDGS +foolery/SM +foolhardily +foolhardiness/M +foolhardy/TPR +foolish/YP +foolishness/M +foolproof +foolscap/M +foot/MDRZGSJ +footage/M +football/MRZGS +footballer/M +footbridge/SM +footfall/MS +foothill/MS +foothold/MS +footie +footing/M +footless +footlights/M +footling/MS +footlocker/SM +footloose +footman/M +footmen +footnote/MGDS +footpath/M +footpaths +footplate/S +footprint/SM +footrace/MS +footrest/MS +footsie/SM +footslogging +footsore +footstep/MS +footstool/SM +footwear/M +footwork/M +footy +fop/SM +foppery/M +foppish/P +foppishness/M +for/H +fora +forage/DRSMZG +forager/M +foray/SMDG +forbade +forbear/SMG +forbearance/M +forbid/S +forbidden +forbidding/YS +forbore +forborne +force/DSMG +forced/U +forceful/PY +forcefulness/M +forceps/M +forcible +forcibly +ford/MDGSB +fore/MS +forearm/GSMD +forebear/MS +forebode/GJDS +foreboding/M +forecast/MRZGS +forecaster/M +forecastle/MS +foreclose/DSG +foreclosure/MS +forecourt/SM +foredoom/DGS +forefather/MS +forefeet +forefinger/SM +forefoot/M +forefront/SM +foregather/GDS +forego/G +foregoes +foregone +foreground/GMDS +forehand/MS +forehead/MS +foreign/ZRP +foreigner/M +foreignness/M +foreknew +foreknow/GS +foreknowledge/M +foreknown +foreleg/SM +forelimb/MS +forelock/MS +foreman/M +foremast/MS +foremen +foremost +forename/MDS +forenoon/MS +forensic/MS +forensically +forensics/M +foreordain/GSD +forepart/MS +foreperson/SM +foreplay/M +forequarter/MS +forerunner/MS +foresail/MS +foresaw +foresee/RSBZ +foreseeable/U +foreseeing +foreseen/U +foreseer/M +foreshadow/GDS +foreshore/S +foreshorten/DSG +foresight/MD +foresightedness/M +foreskin/MS +forest's +forest/ACGDS +forestall/SGD +forestation/ACM +forester/MS +forestland/M +forestry/M +foretaste/DSMG +foretell/GS +forethought/M +foretold +forever/M +forevermore +forewarn/DSG +forewent +forewoman/M +forewomen +foreword/MS +forfeit/GSMD +forfeiture/SM +forgave +forge/DRSMZGVJ +forger/M +forgery/SM +forget/S +forgetful/YP +forgetfulness/M +forgettable/U +forgetting +forging/M +forgivable/U +forgive/BRSZGP +forgiven +forgiveness/M +forgiver/M +forgiving/U +forgo/RZG +forgoer/M +forgoes +forgone +forgot +forgotten/U +fork/MDGS +forkful/SM +forklift/MS +forlorn/Y +form's +form/CAIFDGS +formal/SMY +formaldehyde/M +formalin +formalisation/M +formalise/GDS +formalism/M +formalist/MS +formalities +formality/IM +format/SMV +formation/CFASM +formatted/A +formatting/M +formed/U +former/FIAM +formerly +formfitting +formic +formidable +formidably +formless/PY +formlessness/M +formula/MS +formulae +formulaic +formulate/ADSGNX +formulated/U +formulation/AM +formulator/SM +fornicate/GNDS +fornication/M +fornicator/MS +forsake/GS +forsaken +forsook +forsooth +forswear/SG +forswore +forsworn +forsythia/SM +fort/MS +forte/SM +forthcoming/M +forthright/YP +forthrightness/M +forthwith +fortieth/M +fortieths +fortification/M +fortified/U +fortifier/M +fortify/DRSNZGX +fortissimo +fortitude/M +fortnight/MYS +fortress/MS +fortuitous/YP +fortuitousness/M +fortuity/M +fortunate/UY +fortune/MS +fortuneteller/SM +fortunetelling/M +forty/SMH +forum/SM +forward/MDRYZTGSP +forwarder/M +forwardness/M +forwent +fossa +fossil/SM +fossilisation/M +fossilise/GDS +foster/GSD +fought +foul/MDRYTGSP +foulard/M +foulmouthed +foulness/M +found/FSDG +foundation/SM +foundational +founded/U +founder/GMDS +foundling/SM +foundry/SM +fount/SM +fountain/SM +fountainhead/MS +four/MHS +fourfold +fourposter/SM +fourscore/M +foursome/SM +foursquare +fourteen/SMH +fourteenth/M +fourteenths +fourth/MY +fourths +fowl/MDGS +fox/GMDS +foxfire/M +foxglove/SM +foxhole/MS +foxhound/SM +foxhunt/GS +foxily +foxiness/M +foxtrot/MS +foxtrotted +foxtrotting +foxy/RTP +foyer/SM +fps +fr +fracas/MS +frack/SDG +fractal/SM +fraction/ISM +fractional/Y +fractious/YP +fractiousness/M +fracture/MGDS +frag/S +fragile/RT +fragility/M +fragment/GMDS +fragmentary/M +fragmentation/M +fragrance/MS +fragrant/Y +frail/RYTP +frailness/M +frailty/SM +frame/DRSMZG +framed/U +framer/M +framework/SM +franc/SM +franchise's +franchise/EDSG +franchisee/SM +franchiser/SM +francium/M +francophone +frangibility/M +frangible +frank/SMDRYTGP +frankfurter/MS +frankincense/M +frankness/M +frantic +frantically +frappe/SM +frat/MS +fraternal/Y +fraternisation/M +fraternise/ZGDRS +fraterniser/M +fraternity/FSM +fratricidal +fratricide/MS +fraud's +fraud/S +fraudster/S +fraudulence/M +fraudulent/Y +fraught +fray's +fray/CDGS +frazzle/MGDS +freak/SMDG +freakish/YP +freakishness/M +freaky/RT +freckle/DSMG +freckly +free/YTDRS +freebase/MGDS +freebie/SM +freebooter/SM +freeborn +freedman/M +freedmen +freedom/SM +freehand +freehold/ZMRS +freeholder/M +freeing +freelance/DRSMZG +freelancer/M +freeload/SDRZG +freeloader/M +freeman/M +freemasonry +freemen +freephone +freesia/S +freestanding +freestone/SM +freestyle/SM +freethinker/SM +freethinking/M +freeware/M +freeway/MS +freewheel/DGS +freewill +freezable +freeze's +freeze/UAGS +freezer/MS +freezing's +freight/MDRZGS +freighter/M +french +frenemy/S +frenetic +frenetically +frenzied/Y +frenzy/DSM +freq +frequencies +frequency/IM +frequent/DRYSZTG +frequented/U +frequenter/M +fresco/M +frescoes +fresh/PNRYXZT +freshen/ZGDR +freshener/M +freshet/MS +freshman/M +freshmen +freshness/M +freshwater/M +fret/MS +fretful/YP +fretfulness/M +fretsaw/MS +fretted +fretting +fretwork/M +friable +friar/SM +friary/SM +fricassee/DSM +fricasseeing +fricative/SM +friction/SM +frictional +fridge/SM +friedcake/MS +friend's +friend/UGSDY +friendless +friendlies +friendliness/UM +friendly's +friendly/UPTR +friendship/MS +frieze/SM +frig/S +frigate/MS +frigged +frigging +fright/SXGMDN +frighten/DG +frightening/Y +frightful/PY +frightfulness/M +frigid/YP +frigidity/M +frigidness/M +frill/SMD +frilly/TR +fringe's +fringe/IDSG +frippery/SM +frisk/SDG +friskily +friskiness/M +frisky/TRP +frisson/S +fritter/MDSG +fritz/M +frivolity/SM +frivolous/PY +frivolousness/M +frizz/MDSYG +frizzle/MGDS +frizzy/TR +fro +frock's +frock/CUS +frog/MS +frogging/S +frogman/M +frogmarch/GDS +frogmen +frogspawn +frolic/SM +frolicked +frolicker/SM +frolicking +frolicsome +from +frond/SM +front's +front/FSDG +frontage/MS +frontal/Y +frontbench/ZRS +frontier/MS +frontiersman/M +frontiersmen +frontierswoman +frontierswomen +frontispiece/MS +frontward/S +frosh/M +frost's +frost/CSDG +frostbit +frostbite/MGS +frostbitten +frostily +frostiness/M +frosting/SM +frosty/TPR +froth/MDG +frothiness/M +froths +frothy/TPR +froufrou/M +frown/SMDG +frowzily +frowziness/M +frowzy/TPR +froze/AU +frozen/UA +fructify/DSG +fructose/M +frugal/Y +frugality/M +fruit/SMDG +fruitcake/MS +fruiterer/S +fruitful/YP +fruitfulness/M +fruitiness/M +fruition/M +fruitless/PY +fruitlessness/M +fruity/TPR +frump/SM +frumpish +frumpy/TR +frustrate/GNXDS +frustrating/Y +frustration/M +frustum/MS +fry/GDSM +fryer/SM +ft +ftp/ZGS +fuchsia/MS +fuck/SMGDRZ! +fucker/M! +fuckhead/S! +fuddle/DSMG +fudge/DSMG +fuehrer/MS +fuel's +fuel/AS +fuelled/A +fuelling/A +fug +fugal +fuggy +fugitive/MS +fugue/SM +fuhrer/SM +fulcrum/MS +fulfil/SL +fulfilled/U +fulfilling/U +fulfilment/M +full/MDRZTGSP +fullback/MS +fuller/M +fullness/M +fully +fulminate/DSXGN +fulmination/M +fulsome/PY +fulsomeness/M +fum/S +fumble/DRSMZG +fumbler/M +fumbling/Y +fume/MGDS +fumigant/MS +fumigate/GNDS +fumigation/M +fumigator/SM +fumy/RT +fun/M +function/MDGS +functional/Y +functionalism +functionalist/S +functionality/S +functionary/SM +functor +fund/AMDGS +fundamental/SMY +fundamentalism/M +fundamentalist/SM +funded/U +funding/M +fundraiser/MS +fundraising +funeral/MS +funerary +funereal/Y +funfair/S +fungal +fungi +fungible/MS +fungicidal +fungicide/MS +fungoid +fungous +fungus/M +funicular/SM +funk/MDGS +funkiness/M +funky/PRT +funnel/MS +funnelled +funnelling +funner +funnest +funnily +funniness/M +funny/TPRSM +funnyman/M +funnymen +fur/SM +furbelow/M +furbish/ADSG +furious/Y +furl's +furl/UDGS +furlong/SM +furlough/GMD +furloughs +furn +furnace/SM +furnish/ADSG +furnished/U +furnishings/M +furniture/M +furore/MS +furosemide +furred +furrier/M +furriness/M +furring/M +furrow/MDSG +furry/ZTRP +further/SGD +furtherance/M +furthermore +furthermost +furthest +furtive/YP +furtiveness/M +fury/SM +furze/M +fuse's/A +fuse/CAIFGDS +fusee/SM +fuselage/SM +fusibility/M +fusible +fusilier/SM +fusillade/MS +fusion/IFKSM +fuss/MDSG +fussbudget/MS +fussily +fussiness/M +fusspot/SM +fussy/TRP +fustian/M +fustiness/M +fusty/TRP +fut +futile/Y +futility/M +futon/SM +future/MS +futurism/M +futurist/MS +futuristic +futurity/SM +futurologist/MS +futurology/M +futz/DSG +fuzz/MDSG +fuzzball/S +fuzzily +fuzziness/M +fuzzy/PTR +fwd +fwy +g/SNXVB +gab/SM +gabardine/SM +gabbed +gabbiness/M +gabbing +gabble/DSMG +gabby/RTP +gaberdine/SM +gabfest/MS +gable/DSM +gad/S +gadabout/SM +gadded +gadder/SM +gadding +gadfly/SM +gadget/SM +gadgetry/M +gadolinium/M +gaff/MDRZGS +gaffe/SM +gaffer/M +gag/SM +gaga +gagged +gagging +gaggle/SM +gaiety/M +gaily +gain's +gain/ADGS +gainer/SM +gainful/Y +gainsaid +gainsay/ZGRS +gainsayer/M +gait/MRZS +gaiter/M +gal/SM +gala/MS +galactic +galaxy/SM +gale's +gale/AS +galena/M +gall/MDGS +gallant/SMY +gallantry/M +gallbladder/MS +galleon/SM +galleria/MS +gallery/SM +galley/SM +gallimaufry/SM +gallium/M +gallivant/GSD +gallon/SM +gallop/SMDG +gallows/M +gallstone/MS +galoot/SM +galore +galosh/MS +galumph/DG +galumphs +galvanic +galvanisation/M +galvanise/DSG +galvanism/M +galvanometer/MS +gambit/SM +gamble/DRSMZG +gambler/M +gambling/M +gambol/SM +gambolled +gambolling +game/MYTGDRSP +gamecock/MS +gamekeeper/MS +gameness/M +gamesmanship/M +gamester/MS +gamete/SM +gametic +gamin/SM +gamine/SM +gaminess/M +gaming/M +gamma/SM +gammon/M +gammy +gamut/SM +gamy/RTP +gander/SM +gang/MDGS +gangbusters/M +gangland/M +ganglia +gangling +ganglion/M +ganglionic +gangplank/SM +gangrene/DSMG +gangrenous +gangsta/S +gangster/SM +gangway/MS +ganja +gannet/SM +gantlet/MS +gantry/SM +gap/GSMD +gape/MS +gar/SLM +garage/DSMG +garb/MDGS +garbage/M +garbageman +garbanzo/SM +garble/DSG +garcon/SM +garden/SZGMDR +gardener/M +gardenia/MS +gardening/M +garfish/MS +gargantuan +gargle/DSMG +gargoyle/SM +garish/PY +garishness/M +garland/MDGS +garlic/M +garlicky +garment/MS +garner/SGD +garnet/SM +garnish/GLMDS +garnishee/DSM +garnisheeing +garnishment/SM +garret/SM +garrison/MDSG +garrote/MZGDRS +garroter/M +garrulity/M +garrulous/PY +garrulousness/M +garter/SM +gas's +gas/CS +gasbag/SM +gaseous +gash/MDSG +gasholder/S +gasket/SM +gaslight/MS +gasman +gasmen +gasohol/M +gasoline/M +gasometer/S +gasp/MDGS +gassed/C +gasses +gassing/C +gassy/RT +gastric +gastritis/M +gastroenteritis/M +gastrointestinal +gastronome/S +gastronomic +gastronomical/Y +gastronomy/M +gastropod/SM +gasworks/M +gate/MGDS +gateau +gateaux +gatecrash/DRSZG +gatecrasher/M +gatehouse/SM +gatekeeper/MS +gatepost/MS +gateway/MS +gather/SJZGMDR +gatherer/M +gathering/M +gator/SM +gauche/RPYT +gaucheness/M +gaucherie/M +gaucho/SM +gaudily +gaudiness/M +gaudy/RPT +gauge/DSMG +gaunt/RPT +gauntlet/MS +gauntness/M +gauze/M +gauziness/M +gauzy/RPT +gave +gavel/SM +gavotte/MS +gawd +gawk/DGS +gawkily +gawkiness/M +gawky/RPT +gawp/DGS +gay/TSPMR +gayness/M +gaze/MZGDRS +gazebo/SM +gazelle/MS +gazer/M +gazette/MGDS +gazetteer/MS +gazillion/S +gazpacho/M +gazump/DGS +gear/MDGS +gearbox/MS +gearing/M +gearshift/MS +gearwheel/SM +gecko/SM +geddit +gee/DS +geeing +geek/MS +geeky/RT +geese +geezer/MS +geisha/M +gel/SM +gelatin/M +gelatinous +gelcap/M +geld/DJGS +gelding/M +gelid +gelignite/M +gelled +gelling +gem/SM +gemmology/M +gemological +gemologist/MS +gemstone/MS +gendarme/MS +gender/MDS +gene/MS +genealogical/Y +genealogist/MS +genealogy/SM +genera +general/SMY +generalisation/MS +generalise/GDS +generalissimo/MS +generalist/MS +generality/SM +generalship/M +generate/CAVNGSD +generation/ACM +generational +generations +generator/SM +generic/SM +generically +generosity/SM +generous/PY +generousness/M +genes/S +genesis/M +genetic/S +genetically +geneticist/MS +genetics/M +genial/FY +geniality/FM +geniculate +genie/SM +genii +genital/FY +genitalia/M +genitals/M +genitive/MS +genitourinary +genius/MS +genned +genning +genocidal +genocide/MS +genome/MS +genomics +genre/SM +gent/AMS +genteel/YP +genteelness/M +gentian/SM +gentile/SM +gentility/M +gentle/TGDRSP +gentlefolk/MS +gentlefolks/M +gentleman/MY +gentlemanly/U +gentlemen +gentleness/M +gentlewoman/M +gentlewomen +gently +gentrification/M +gentrify/DSGN +gentry/SM +genuflect/DGS +genuflection/MS +genuine/PY +genuineness/M +genus/M +geocache/DSG +geocentric +geocentrically +geochemistry/M +geode/SM +geodesic/SM +geodesy/M +geodetic +geoengineering +geog +geographer/SM +geographic +geographical/Y +geography/SM +geologic +geological/Y +geologist/MS +geology/SM +geom +geomagnetic +geomagnetism/M +geometer +geometric +geometrical/Y +geometry/SM +geophysical +geophysicist/SM +geophysics/M +geopolitical +geopolitics/M +geostationary +geosynchronous +geosyncline/MS +geothermal +geothermic +geranium/MS +gerbil/MS +geriatric/S +geriatrician/S +geriatrics/M +germ/MS +germane +germanium/M +germicidal +germicide/MS +germinal/M +germinate/GNDS +germination/M +gerontological +gerontologist/MS +gerontology/M +gerrymander/GMDS +gerrymandering/M +gerund/MS +gestalt/S +gestapo/MS +gestate/GNDS +gestation/M +gestational +gesticulate/DSGNX +gesticulation/M +gestural +gesture/MGDS +gesundheit +get/S +getaway/SM +getting +getup/M +gewgaw/SM +geyser/SM +ghastliness/M +ghastly/TPR +ghat/MS +ghee +gherkin/MS +ghetto/SM +ghettoise/GDS +ghost/SMDYG +ghostliness/M +ghostly/RTP +ghostwrite/ZGRS +ghostwriter/M +ghostwritten +ghostwrote +ghoul/SM +ghoulish/YP +ghoulishness/M +giant/SM +giantess/MS +gibber/GDS +gibberish/M +gibbet/GMDS +gibbon/MS +gibbous +giblet/SM +giddily +giddiness/M +giddy/RTP +gift/MDGS +gig/SM +gigabit/SM +gigabyte/MS +gigagram/S +gigahertz/M +gigajoule/S +gigametre/S +gigantic +gigantically +gigapascal/S +gigapixel/MS +gigawatt/SM +gigged +gigging +giggle/DRSMZG +giggler/M +giggly/RT +gigolo/SM +gild/MDRZGS +gilder/M +gilding/M +gill/MS +gillie/S +gillion/S +gilt/MS +gimbals/M +gimcrack/SM +gimcrackery/M +gimlet/GSMD +gimme/SM +gimmick/MS +gimmickry/M +gimmicky +gimp/MDGS +gimpy +gin/SM +ginger/GSMDY +gingerbread/M +gingersnap/SM +gingery +gingham/M +gingivitis/M +ginkgo/M +ginkgoes +ginned +ginning +ginormous +ginseng/M +giraffe/MS +gird/DRZGS +girder/M +girdle/DSMG +girl/MS +girlfriend/MS +girlhood/SM +girlish/YP +girlishness/M +girly +giro/S +girt/MDGS +girth/M +girths +gist/M +git/S +gite/S +give/ZGJRS +giveaway/MS +giveback/MS +given/SM +giver/M +gizmo/SM +gizzard/MS +glace/S +glaceed +glaceing +glacial/Y +glaciate/XGNDS +glaciation/M +glacier/MS +glad/MYSP +gladden/GDS +gladder +gladdest +glade/SM +gladiator/SM +gladiatorial +gladiola/SM +gladioli +gladiolus/M +gladness/M +gladsome +glam +glamorisation/M +glamorise/DSG +glamorous/Y +glamour/GMDS +glance/DSMG +gland/SM +glandes +glandular +glans/M +glare/DSMG +glaring/Y +glasnost/M +glass/MDSG +glassblower/MS +glassblowing/M +glassful/SM +glasshouse/S +glassily +glassiness/M +glassware/M +glassy/RTP +glaucoma/M +glaze/DSMG +glazier/SM +glazing/M +gleam/SMDGJ +glean/SDRZGJ +gleaner/M +gleanings/M +glee/M +gleeful/YP +gleefulness/M +glen/MS +glenohumeral +glenoid +glib/YP +glibber +glibbest +glibness/M +glide/DRSMZG +glider/M +gliding/M +glimmer/MDGJS +glimmering/M +glimpse/MGDS +glint/SMDG +glissandi +glissando/M +glisten/MDSG +glister/DSG +glitch/GMDS +glitter/MDSG +glitterati +glittery +glitz/M +glitzy/TR +gloaming/SM +gloat/SMDG +gloating/Y +glob/MDGS +global/Y +globalisation/M +globalise/GDS +globalism/M +globalist/MS +globe/SM +globetrotter/MS +globetrotting +globular +globule/MS +globulin/M +glockenspiel/SM +gloom/M +gloomily +gloominess/M +gloomy/TRP +glop/M +gloppy +glorification/M +glorify/GDSN +glorious/IY +glory/DSMG +gloss/MDSG +glossary/SM +glossily +glossiness/M +glossolalia/M +glossy/PTRSM +glottal +glottis/MS +glove/DSMG +glow/MDRZGS +glower/GMD +glowing/Y +glowworm/MS +glucagon +glucose/M +glue/MGDS +glued/U +gluey +gluier +gluiest +glum/YP +glummer +glummest +glumness/M +gluon/S +glut/MNS +gluten/M +glutenous +glutinous/Y +glutted +glutting +glutton/MS +gluttonous/Y +gluttony/M +glycerine/M +glycerol/M +glycogen/M +glycol +glyph +gm +gnarl/SMDG +gnarly/TR +gnash/MDSG +gnat/MS +gnaw/DGS +gneiss/M +gnocchi +gnome/SM +gnomic +gnomish +gnu/SM +go/JMRHZG +goad/MDGS +goal/MS +goalie/SM +goalkeeper/MS +goalkeeping/M +goalless +goalmouth +goalmouths +goalpost/MS +goalscorer/S +goaltender/MS +goat/MS +goatee/SM +goatherd/MS +goatskin/MS +gob/SM +gobbed +gobbet/SM +gobbing +gobble/DRSMZG +gobbledegook/M +gobbler/M +goblet/SM +goblin/SM +gobsmacked +gobstopper/S +god/SM +godawful +godchild/M +godchildren/M +goddammit +goddamn/D +goddaughter/MS +goddess/MS +godfather/SM +godforsaken +godhead/M +godhood/M +godless/PY +godlessness/M +godlike +godliness/UM +godly/URTP +godmother/SM +godparent/SM +godsend/SM +godson/SM +godspeed +goer/M +goes +gofer/SM +goggle/DSMG +goggles/M +going/M +goitre/SM +gold/MNS +goldbrick/ZGSMDR +goldbricker/M +golden/TR +goldenrod/M +goldfield/S +goldfinch/MS +goldfish/MS +goldmine/SM +goldsmith/M +goldsmiths +golf/MDRZGS +golfer/M +golliwog/S +golly/SM +gonad/SM +gonadal +gondola/MS +gondolier/SM +gone/ZR +goner/M +gong/MDGS +gonk/S +gonna +gonorrhoea/M +gonorrhoeal +gonzo +goo/M +goober/SM +good/MYSP +goodbye/MS +goodhearted +goodish +goodly/TR +goodness/M +goodnight +goods/M +goodwill/M +goody/SM +gooey +goof/MDGS +goofball/SM +goofiness/M +goofy/RPT +google/DSMG +googly/S +gooier +gooiest +gook/MS +goon/MS +goop/M +goose/DSMG +gooseberry/SM +goosebumps/M +goosestep/S +goosestepped +goosestepping +gopher/SM +gore/MGDS +gorge's +gorge/EDSG +gorgeous/YP +gorgeousness/M +gorgon/SM +gorilla/MS +gorily +goriness/M +gormandise/DRSZG +gormandiser/M +gormless +gorp/MS +gorse/M +gory/RTP +gosh +goshawk/MS +gosling/SM +gospel/MS +gossamer/M +gossip/MDRZGS +gossiper/M +gossipy +got +gotcha/S +goths +gotta +gotten +gouache/S +gouge/DRSMZG +gouger/M +goulash/MS +gourd/SM +gourde/MS +gourmand/SM +gourmet/SM +gout/M +gouty/TR +gov +govern/DGSBL +governable/U +governance/M +governed/U +governess/MS +government/MS +governmental +governor/SM +governorship/M +govt +gown/MDGS +gr +grab/MS +grabbed +grabber/MS +grabbing +grabby/TR +grace/EDSMG +graceful/EPY +gracefulness/EM +graceless/PY +gracelessness/M +gracious/UY +graciousness/M +grackle/MS +grad/MRZSB +gradate/XGNDS +gradation/CM +grade's +grade/CADSG +graded/U +grader/M +gradient/MS +gradual/PY +gradualism/M +gradualness/M +graduate/XMGNDS +graduation/M +graffiti +graffito/M +graft/SMDRZG +grafter/M +graham/S +grail +grain/ISMD +graininess/M +grainy/PTR +gram/KMS +grammar/MS +grammarian/SM +grammatical/UY +gramophone/MS +grampus/MS +gran/S +granary/SM +grand/SMRYPT +grandam/MS +grandaunt/MS +grandchild/M +grandchildren/M +granddad/SM +granddaddy/SM +granddaughter/SM +grandee/MS +grandeur/M +grandfather/GMDYS +grandiloquence/M +grandiloquent +grandiose/Y +grandiosity/M +grandma/MS +grandmother/MYS +grandnephew/MS +grandness/M +grandniece/MS +grandpa/MS +grandparent/MS +grandson/MS +grandstand/SGMD +granduncle/SM +grange/SM +granite/M +granitic +granny/SM +granola/M +grant/SMDRZG +grantee/MS +granter/M +grantsmanship/M +granular +granularity/M +granulate/GNDS +granulation/M +granule/MS +grape/SM +grapefruit/MS +grapeshot/M +grapevine/SM +graph/MDG +graphic/MS +graphical/Y +graphite/M +graphologist/MS +graphology/M +graphs +grapnel/MS +grapple/MGDS +grasp/SMDBG +grass/MDSG +grasshopper/MS +grassland/MS +grassroots +grassy/TR +grate/DRSMZGJ +grateful/UYP +gratefulness/UM +grater/M +gratification/M +gratify/GNXDS +gratifying/Y +gratin/S +grating/MY +gratis +gratitude/IM +gratuitous/YP +gratuitousness/M +gratuity/SM +gravamen/MS +grave/DRSMYTGP +gravedigger/SM +gravel/SMY +gravelled +gravelling +graven +graveness/M +graveside/MS +gravestone/SM +graveyard/MS +gravid +gravimeter/MS +gravitas +gravitate/GNDS +gravitation/M +gravitational +gravity/M +gravy/SM +graybeard/SM +graze/DRSMZG +grazer/M +grease/DRSMZG +greasepaint/M +greasily +greasiness/M +greasy/PTR +great/SMRYPT +greatcoat/SM +greathearted +greatness/M +grebe/SM +greed/M +greedily +greediness/M +greedy/PTR +green/GPSMDRYT +greenback/MS +greenbelt/MS +greenery/M +greenfield +greenfly/S +greengage/MS +greengrocer/SM +greenhorn/SM +greenhouse/SM +greenish +greenmail/M +greenness/M +greenroom/SM +greenstone +greensward/M +greenwood/M +greet/ZGJSDR +greeter/M +greeting/M +gregarious/PY +gregariousness/M +gremlin/SM +grenade/SM +grenadier/MS +grenadine/M +grep/S +grepped +grepping +grew/A +grey/PMDRTGS +greyhound/SM +greyish +greyness/M +gribble/S +grid/MS +griddle/SM +griddlecake/SM +gridiron/SM +gridlock/SMD +grief/SM +grievance/MS +grieve/ZGDRS +griever/M +grievous/PY +grievousness/M +griffin/SM +griffon/SM +grill/SGMDJ +grille/MS +grim/DYPG +grimace/DSMG +grime/SM +griminess/M +grimmer +grimmest +grimness/M +grimy/TRP +grin/MS +grind/SZGMRJ +grinder/M +grindstone/MS +gringo/MS +grinned +grinning +grip/MDRSZG +gripe/SM +griper/M +grippe/MZGDR +gripper/M +grisliness/M +grisly/RTP +grist/MY +gristle/M +gristmill/MS +grit/MS +grits/M +gritted +gritter/SM +grittiness/M +gritting +gritty/RTP +grizzle/DSG +grizzly/TRSM +groan/SGMD +groat/SM +grocer/MS +grocery/SM +grog/M +groggily +grogginess/M +groggy/PRT +groin/SM +grok/S +grokked +grokking +grommet/SM +groom/SZGMDR +groomer/M +grooming/M +groomsman/M +groomsmen +groove/MGDS +groovy/RT +grope/DRSMZG +groper/M +grosbeak/MS +grosgrain/M +gross/PTGMDRSY +grossness/M +grotesque/SPMY +grotesqueness/M +grotto/M +grottoes +grotty/TR +grouch/GMDS +grouchily +grouchiness/M +grouchy/RTP +ground/ZGMDRJS +groundbreaking/MS +groundcloth +groundcloths +grounder/M +groundhog/MS +grounding/M +groundless/Y +groundnut/MS +groundsheet/S +groundskeeper/S +groundsman +groundsmen +groundswell/SM +groundwater/M +groundwork/M +group/JSZGMDR +grouper/M +groupie/MS +grouping/M +groupware/M +grouse/MZGDRS +grouser/M +grout/SGMD +grove/SM +grovel/GDS +grovelled +groveller/SM +grovelling +grow/AHSG +grower/MS +growing/I +growl/SZGMDR +growler/M +grown/AI +grownup/MS +growth/AM +growths +groyne/MS +grub/MS +grubbed +grubber/MS +grubbily +grubbiness/M +grubbing +grubby/TRP +grubstake/M +grudge/MGDS +grudging/Y +grue/S +gruel/M +gruelling/SY +gruesome/RYTP +gruesomeness/M +gruff/TPRY +gruffness/M +grumble/DRSMZGJ +grumbler/M +grump/SM +grumpily +grumpiness/M +grumpy/PRT +grunge/MS +grungy/RT +grunion/SM +grunt/SGMD +gt +guacamole/M +guanine/M +guano/M +guarani/MS +guarantee/MDS +guaranteeing +guarantor/MS +guaranty/GDSM +guard/SZGMDR +guarded/Y +guarder/M +guardhouse/SM +guardian/SM +guardianship/M +guardrail/SM +guardroom/SM +guardsman/M +guardsmen +guava/SM +gubernatorial +guerrilla/SM +guess/ZGBMDRS +guesser/M +guesstimate/DSMG +guesswork/M +guest/SGMD +guestbook/SM +guesthouse/S +guestroom/S +guff/M +guffaw/MDGS +guidance/M +guide/DRSMZG +guidebook/SM +guided/U +guideline/SM +guidepost/SM +guider/M +guild/SZMR +guilder/M +guildhall/MS +guile/M +guileful +guileless/YP +guilelessness/M +guillemot/S +guillotine/DSMG +guilt/M +guiltily +guiltiness/M +guiltless +guilty/PRT +guinea/MS +guise/ESM +guitar/MS +guitarist/SM +gulag/SM +gulch/MS +gulden/MS +gulf/MS +gull/MDSG +gullet/MS +gullibility/M +gullible +gully/SM +gulp/MDRSZG +gulper/M +gum/SM +gumball/S +gumbo/SM +gumboil/SM +gumboot/S +gumdrop/SM +gummed +gumming +gummy/TR +gumption/M +gumshoe/MDS +gumshoeing +gun/SM +gunboat/SM +gunfight/MRZS +gunfighter/M +gunfire/M +gunge +gungy +gunk/M +gunky +gunman/M +gunmen +gunmetal/M +gunned +gunnel/MS +gunner/MS +gunnery/M +gunning +gunny/M +gunnysack/MS +gunpoint/M +gunpowder/M +gunrunner/MS +gunrunning/M +gunship/MS +gunshot/MS +gunslinger/SM +gunsmith/M +gunsmiths +gunwale/MS +guppy/SM +gurgle/MGDS +gurney/MS +guru/MS +gush/MDRSZG +gusher/M +gushing/Y +gushy/TR +gusset/MSDG +gussy/DSG +gust/EMDSG +gustatory +gustily +gusto/M +gusty/RT +gut/SM +gutless/P +gutlessness/M +gutsy/RT +gutted +gutter/SMDG +guttersnipe/MS +gutting +guttural/MS +gutty/RT +guv/S +guvnor/S +guy/SGMD +guzzle/DRSZG +guzzler/M +gybe/MGDS +gym/SM +gymkhana/MS +gymnasium/MS +gymnast/MS +gymnastic/S +gymnastically +gymnastics/M +gymnosperm/SM +gymslip/S +gynaecologic +gynaecological +gynaecologist/SM +gynaecology/M +gyp/SM +gypped +gypper/SM +gypping +gypster/SM +gypsum/M +gypsy/SM +gyrate/DSGNX +gyration/M +gyrator/SM +gyrfalcon/MS +gyro/MS +gyroscope/MS +gyroscopic +gyve/MGDS +h'm +h/NRSXZGVJ +ha/SH +haberdasher/SM +haberdashery/SM +habiliment/SM +habit's +habit/ISB +habitability/M +habitat/SM +habitation/MS +habitual/YP +habitualness/M +habituate/GNDS +habituation/M +habitue/SM +hacienda/SM +hack/MDRZGS +hacker/M +hacking/M +hackish +hackle/MS +hackney/SMDG +hacksaw/SM +hacktivist/MS +hackwork/M +had +haddock/SM +hadith +hadn't +hadst +haem +haematite/M +haematologic +haematological +haematologist/MS +haematology/M +haemoglobin/M +haemophilia/M +haemophiliac/MS +haemorrhage/MGDS +haemorrhoid/S +hafnium/M +haft/MS +hag/SM +haggard/YP +haggardness/M +haggis/MS +haggish +haggle/MZGDRS +haggler/M +hagiographer/SM +hagiography/SM +hahnium/M +haiku/M +hail/MDGS +hailstone/MS +hailstorm/MS +hair/MDS +hairball/MS +hairband/S +hairbreadth/M +hairbreadths +hairbrush/MS +haircloth/M +haircut/SM +hairdo/MS +hairdresser/SM +hairdressing/M +hairdryer/MS +hairgrip/S +hairiness/M +hairless +hairlike +hairline/SM +hairnet/SM +hairpiece/MS +hairpin/SM +hairsbreadth/M +hairsbreadths +hairsplitter/SM +hairsplitting/M +hairspray/S +hairspring/MS +hairstyle/MS +hairstylist/SM +hairy/TRP +haj +hajj/M +hajjes +hajji/SM +hake/MS +halal/M +halberd/SM +halcyon +hale/ITGDRS +half/M +halfback/SM +halfhearted/PY +halfheartedness/M +halfpence +halfpenny/SM +halftime/MS +halftone/MS +halfway +halfwit/SM +halibut/SM +halite/M +halitosis/M +hall/MS +hallelujah/M +hallelujahs +hallmark/GMDS +halloo/MSG +hallow/DSG +hallowed/U +hallucinate/GNXDS +hallucination/M +hallucinatory +hallucinogen/SM +hallucinogenic/SM +hallway/SM +halo/MDGS +halogen/SM +halon +halt/MDRZGS +halter/GMD +halterneck/S +halting/Y +halve/DSG +halyard/MS +ham/SM +hamburg/SZMR +hamburger/M +hamlet/MS +hammed +hammer/MDRSJZG +hammerer/M +hammerhead/SM +hammerlock/SM +hammertoe/MS +hamming +hammock/SM +hammy/TR +hamper/GMDS +hampered/U +hamster/MS +hamstring/GSM +hamstrung +hand's +hand/UDGS +handbag/SM +handball/MS +handbarrow/SM +handbill/MS +handbook/MS +handbrake/S +handcar/SM +handcart/MS +handclasp/MS +handcraft/SMDG +handcuff/MDGS +handed/P +handful/SM +handgun/SM +handheld/MS +handhold/MS +handicap/MS +handicapped +handicapper/MS +handicapping +handicraft/MS +handily +handiness/M +handiwork/M +handkerchief/MS +handle/MZGDRS +handlebar/MS +handler/M +handmade +handmaid/XMNS +handmaiden/M +handout/SM +handover/S +handpick/GDS +handrail/MS +handsaw/SM +handset/SM +handshake/JMGS +handsome/PYTR +handsomeness/M +handspring/MS +handstand/SM +handwork/M +handwoven +handwriting/M +handwritten +handy/UTR +handyman/M +handymen +hang/MDRJZGS +hangar/MS +hangdog +hanger/M +hanging/M +hangman/M +hangmen +hangnail/MS +hangout/SM +hangover/MS +hangup/MS +hank/MRZS +hanker/GJD +hankering/M +hanky/SM +hansom/MS +hap/MY +haphazard/YP +haphazardness/M +hapless/YP +haplessness/M +haploid/MS +happen/SDGJ +happening/M +happenstance/SM +happily/U +happiness/UM +happy/URTP +haptic +harangue/MGDS +harass/LZGDRS +harasser/M +harassment/M +harbinger/SM +harbormaster/S +harbour/GMDS +hard/NRYXTP +hardback/MS +hardball/M +hardboard/M +hardbound +hardcore +hardcover/SM +harden/ZGDR +hardened/U +hardener/M +hardhat/MS +hardheaded/PY +hardheadedness/M +hardhearted/PY +hardheartedness/M +hardihood/M +hardily +hardiness/M +hardliner/MS +hardness/M +hardscrabble +hardship/SM +hardstand/SM +hardtack/M +hardtop/SM +hardware/M +hardwired +hardwood/SM +hardworking +hardy/PTR +hare/MGDS +harebell/MS +harebrained +harelip/SM +harelipped +harem/SM +haricot/S +hark/DGS +harlequin/SM +harlot/SM +harlotry/M +harm/MDGS +harmed/U +harmful/YP +harmfulness/M +harmless/PY +harmlessness/M +harmonic/SM +harmonica/MS +harmonically +harmonies +harmonious/PY +harmoniousness/M +harmonisation/M +harmonise/ZGDRS +harmoniser/M +harmonium/MS +harmony/EM +harness's +harness/UDSG +harp/MDGS +harpist/SM +harpoon/ZGSMDR +harpooner/M +harpsichord/MS +harpsichordist/SM +harpy/SM +harridan/MS +harrier/M +harrow/SMDG +harrumph/GD +harrumphs +harry/DRSZG +harsh/RYTP +harshness/M +hart/MS +harvest/SMDRZG +harvested/U +harvester/M +hash/AMDSG +hashish/M +hashtag/SM +hasn't +hasp/MS +hassle/DSMG +hassock/SM +hast/DNXG +haste/SM +hasten/DG +hastily +hastiness/M +hasty/RTP +hat/ZGSMDR +hatband/S +hatbox/MS +hatch/MDSG +hatchback/MS +hatcheck/SM +hatched/U +hatchery/SM +hatchet/SM +hatching/M +hatchway/SM +hate/MS +hateful/PY +hatefulness/M +hatemonger/MS +hater/M +hatpin/S +hatred/SM +hatstand/S +hatted +hatter/SM +hatting +hauberk/SM +haughtily +haughtiness/M +haughty/PRT +haul/MDRZGS +haulage/M +hauler/M +haulier/S +haunch/MS +haunt/SMDRZG +haunter/M +haunting/Y +hauteur/M +have/MGS +haven't +haven/SM +haversack/SM +havoc/M +haw/GSMD +hawk/MDRZGS +hawker/M +hawkish/P +hawkishness/M +hawser/SM +hawthorn/MS +hay/GSMD +haycock/SM +hayloft/SM +haymaker/S +haymaking +haymow/SM +hayrick/MS +hayride/MS +hayseed/MS +haystack/SM +haywire +hazard/SMDG +hazardous/Y +haze/MZGJDRS +hazel/SM +hazelnut/MS +hazer/M +hazily +haziness/M +hazing/M +hazmat +hazy/RTP +hdqrs +he'd +he'll +he/M +head/MDRZGJS +headache/MS +headband/MS +headbanger/S +headbanging +headboard/SM +headbutt/DSG +headcase/S +headcheese +headcount/S +headdress/MS +header/M +headfirst +headgear/M +headhunt/DRSZG +headhunter/M +headhunting/M +headily +headiness/M +heading/M +headlamp/MS +headland/MS +headless +headlight/MS +headline/MZGDRS +headliner/M +headlock/MS +headlong +headman/M +headmaster/SM +headmen +headmistress/MS +headphone/MS +headpiece/MS +headpin/SM +headquarter/SDG +headquarters/M +headrest/MS +headroom/M +headscarf +headscarves +headset/SM +headship/SM +headshrinker/SM +headsman/M +headsmen +headstall/SM +headstand/SM +headstone/SM +headstrong +headteacher/S +headwaiter/SM +headwaters/M +headway/M +headwind/SM +headword/SM +heady/RTP +heal/DRHZGS +healed/U +healer/M +health/M +healthcare +healthful/PY +healthfulness/M +healthily/U +healthiness/UM +healthy/UTRP +heap/MDGS +hear/AHGJS +heard/AU +hearer/SM +hearing/AM +hearken/SGD +hearsay/M +hearse's +hearse/AS +heart/SM +heartache/MS +heartbeat/MS +heartbreak/SMG +heartbroken +heartburn/M +hearten/ESGD +heartfelt +hearth/M +hearthrug/S +hearths +hearthstone/SM +heartily +heartiness/M +heartland/MS +heartless/PY +heartlessness/M +heartrending/Y +heartsick/P +heartsickness/M +heartstrings/M +heartthrob/MS +heartwarming +heartwood/M +hearty/RSMPT +heat's +heat/ADGS +heated/U +heatedly +heater/SM +heath/MNRX +heathen/M +heathendom/M +heathenish +heathenism/M +heather/M +heaths +heating/M +heatproof +heatstroke/M +heatwave/S +heave/DRSMZG +heaven/SMY +heavenly/TR +heavens/M +heavenward/S +heaver/M +heavily +heaviness/M +heavy/RSMTP +heavyhearted +heavyset +heavyweight/MS +heck/M +heckle/DRSMZG +heckler/M +heckling/M +hectare/SM +hectic +hectically +hectogram/SM +hectometre/MS +hector/SMDG +hedge/DRSMZG +hedgehog/MS +hedgehop/S +hedgehopped +hedgehopping +hedger/M +hedgerow/SM +hedonism/M +hedonist/MS +hedonistic +heed/MDGS +heeded/U +heedful/Y +heedless/PY +heedlessness/M +heehaw/SMDG +heel/MDGS +heelless +heft/MDGS +heftily +heftiness/M +hefty/PRT +hegemonic +hegemony/M +hegira/SM +heifer/SM +height/XSMN +heighten/DG +heinous/YP +heinousness/M +heir/MS +heiress/MS +heirloom/SM +heist/SMDG +held +helical +helices +helicopter/SGMD +heliocentric +heliotrope/SM +helipad/S +heliport/MS +helium/M +helix/M +hell/M +hellbent +hellcat/MS +hellebore/M +hellfire +hellhole/MS +hellion/MS +hellish/YP +hellishness/M +hello/SM +helluva +helm/MS +helmet/SMD +helmsman/M +helmsmen +helot/SM +help/MDRZGSJ +helper/M +helpful/UY +helpfulness/M +helping/M +helpless/PY +helplessness/M +helpline/SM +helpmate/SM +helve/SM +hem/SM +heme's +hemiplegia +hemisphere/SM +hemispheric +hemispherical +hemline/SM +hemlock/SM +hemmed +hemmer/SM +hemming +hemorrhagic +hemorrhoid's +hemostat/MS +hemp/MN +hemstitch/MDSG +hen/M +hence +henceforth +henceforward +henchman/M +henchmen +henna/SMDG +henpeck/GSD +hep +heparin/M +hepatic +hepatitis/M +hepatocyte/S +hepper +heppest +heptagon/MS +heptagonal +heptathlon/SM +herald/SMDG +heralded/U +heraldic +heraldry/M +herb/MS +herbaceous +herbage/M +herbal/S +herbalist/MS +herbicidal +herbicide/MS +herbivore/SM +herbivorous +herculean +herd/MDRZGS +herder/M +herdsman/M +herdsmen +here/M +hereabout/S +hereafter/SM +hereby +hereditary +heredity/M +herein +hereinafter +hereof +hereon +heresy/SM +heretic/SM +heretical +hereto +heretofore +hereunder +hereunto +hereupon +herewith +heritable/I +heritage/MS +hermaphrodite/SM +hermaphroditic +hermetic +hermetical/Y +hermit/SM +hermitage/MS +hermitian +hernia/SM +hernial +herniate/GNDS +herniation/M +hero/M +heroes +heroic/S +heroically +heroics/M +heroin/SM +heroine/SM +heroism/M +heron/SM +herpes/M +herpetologist/SM +herpetology/M +herring/MS +herringbone/M +herself +hertz/M +hesitance/M +hesitancy/M +hesitant/Y +hesitate/DSGNX +hesitating/UY +hesitation/M +hessian +hetero/SM +heterodox +heterodoxy/M +heterogeneity/M +heterogeneous/Y +heterosexual/MYS +heterosexuality/M +heuristic/MS +heuristically +heuristics/M +hew/ZGSDR +hewer/M +hex/GMDS +hexadecimal/S +hexagon/MS +hexagonal +hexagram/SM +hexameter/SM +hey +heyday/SM +hf +hgt +hgwy +hi/SD +hiatus/MS +hibachi/MS +hibernate/GNDS +hibernation/M +hibernator/MS +hibiscus/MS +hiccough/DG +hiccoughs +hiccup/GSMD +hick/MS +hickey/SM +hickory/SM +hid +hidden +hide/MZGJDRS +hideaway/SM +hidebound +hideous/YP +hideousness/M +hideout/MS +hider/M +hiding/M +hie/S +hieing +hierarchic +hierarchical/Y +hierarchy/SM +hieroglyph/M +hieroglyphic/MS +hieroglyphs +high/MRYZTP +highball/SM +highborn +highboy/MS +highbrow/SM +highchair/MS +highfalutin +highhanded/PY +highhandedness/M +highland/MRZS +highlander/M +highlight/SMDRZG +highlighter/M +highness/M +highroad/MS +highs +hightail/DSG +highway/MS +highwayman/M +highwaymen +hijab/SM +hijack/SJZGMDR +hijacker/M +hijacking/M +hike/MZGDRS +hiker/M +hiking/M +hilarious/PY +hilariousness/M +hilarity/M +hill/MS +hillbilly/SM +hilliness/M +hillock/MS +hillside/SM +hilltop/MS +hilly/PRT +hilt/MS +him/S +himself +hind/MRZS +hinder/GD +hindered/U +hindmost +hindquarter/MS +hindrance/SM +hindsight/M +hinge's +hinge/UDSG +hint/MDRZGS +hinter/M +hinterland/SM +hip/SPM +hipbath +hipbaths +hipbone/MS +hiphuggers +hipness/M +hipped +hipper +hippest +hipping +hippo/SM +hippocampus +hippodrome/SM +hippopotamus/MS +hippy/SM +hipster/MS +hiragana +hire's +hire/AGDS +hireling/MS +hirsute/P +hirsuteness/M +hiss/MDSG +hist +histamine/MS +histogram/MS +histologist/SM +histology/M +histopathology +historian/MS +historic +historical/Y +historicity/M +historiographer/MS +historiography/M +history/SM +histrionic/S +histrionically +histrionics/M +hit/SM +hitch's +hitch/UDSG +hitcher/MS +hitchhike/DRSMZG +hitchhiker/M +hither +hitherto +hitter/SM +hitting +hive/MGDS +hivemind/SM +hiya +hmm +ho/SMDRYZ +hoagie/MS +hoard/SZGMDRJ +hoarder/M +hoarding/M +hoarfrost/M +hoariness/M +hoarse/YTRP +hoarseness/M +hoary/TRP +hoax/MDRSZG +hoaxer/M +hob/SM +hobbit/S +hobble/MZGDRS +hobbler/M +hobby/SM +hobbyhorse/MS +hobbyist/SM +hobgoblin/MS +hobnail/SGMD +hobnob/S +hobnobbed +hobnobbing +hobo/MS +hoc +hock/MDSG +hockey/M +hockshop/MS +hod/SM +hodgepodge/SM +hoe/SM +hoecake/SM +hoedown/SM +hoeing +hoer/M +hog/SM +hogan/SM +hogback/SM +hogged +hogging +hoggish/Y +hogshead/SM +hogtie/DS +hogtying +hogwash/M +hoick/SGD +hoist/SGMD +hoke/GDS +hokey +hokier +hokiest +hokum/M +hold/MRJSZG +holdall/S +holder/M +holding/M +holdout/SM +holdover/SM +holdup/MS +hole/MGDS +holey +holiday/SMDG +holidaymaker/S +holiness/UM +holism +holistic +holistically +holler/MDGS +hollow/MDRYPSTG +hollowness/M +holly/SM +hollyhock/MS +holmium/M +holocaust/SM +hologram/MS +holograph/M +holographic +holographs +holography/M +hols +holster/SMDG +holy/URPT +homage/MS +hombre/MS +homburg/SM +home/MYZGDRS +homebody/SM +homeboy/SM +homecoming/SM +homegrown +homeland/MS +homeless/MP +homelessness/M +homelike +homeliness/M +homely/PRT +homemade +homemaker/SM +homemaking/M +homeopath/M +homeopathic +homeopaths +homeopathy/M +homeostasis/M +homeostatic +homeowner/MS +homepage/MS +homer/GMD +homeroom/MS +homeschooling/M +homesick/P +homesickness/M +homespun/M +homestead/SMDRZG +homesteader/M +homestretch/MS +hometown/MS +homeward/S +homework/MRZG +homewrecker/SM +homey/SMP +homeyness/M +homicidal +homicide/MS +homier +homiest +homiletic +homily/SM +hominid/SM +hominoid/S +hominy/M +homo/MS +homoerotic +homogeneity/M +homogeneous/Y +homogenisation/M +homogenise/DSG +homograph/M +homographs +homologous +homology +homonym/SM +homophobia/M +homophobic +homophone/MS +homosexual/SM +homosexuality/M +hon/SZTGMDR +honcho/MS +hone/MS +honer/M +honest/EYT +honester +honesty/EM +honey/SGMD +honeybee/SM +honeycomb/MDSG +honeydew/SM +honeylocust/M +honeymoon/ZGMDRS +honeymooner/M +honeypot/S +honeysuckle/SM +honk/MDRSZG +honker/M +honky/SM +honorarily +honorarium/MS +honorary +honorific/MS +honour/EMDSBG +honourableness/M +honourably/E +honouree/MS +honourer/MS +hooch/M +hood/MDSG +hoodie/MS +hoodlum/SM +hoodoo/MDSG +hoodwink/DGS +hooey/M +hoof/MDRSZG +hook's +hook/UDSG +hookah/M +hookahs +hooker/MS +hookup/MS +hookworm/MS +hooky/M +hooligan/MS +hooliganism/M +hoop/MDSG +hoopla/M +hooray +hoosegow/SM +hoot/MDRSZG +hootenanny/SM +hooter/M +hoover/DSG +hooves +hop/SGMD +hope/MS +hopeful/PSMY +hopefulness/M +hopeless/YP +hopelessness/M +hopped +hopper/MS +hopping +hopscotch/MDSG +hora/MS +horde/DSMG +horehound/SM +horizon/SM +horizontal/SMY +hormonal +hormone/SM +horn/MDS +hornbeam +hornblende/M +hornet/MS +hornless +hornlike +hornpipe/MS +horny/TR +horologic +horological +horologist/MS +horology/M +horoscope/SM +horrendous/Y +horrible/P +horribleness/M +horribly +horrid/Y +horrific +horrifically +horrify/DSG +horrifying/Y +horror/MS +horse's +horse/UDSG +horseback/M +horsebox/S +horseflesh/M +horsefly/SM +horsehair/M +horsehide/M +horselaugh/M +horselaughs +horseless +horseman/M +horsemanship/M +horsemen +horseplay/M +horsepower/M +horseradish/MS +horseshit/! +horseshoe/DSM +horseshoeing +horsetail/SM +horsetrading +horsewhip/SM +horsewhipped +horsewhipping +horsewoman/M +horsewomen +horsey +horsier +horsiest +hortatory +horticultural +horticulturalist/S +horticulture/M +horticulturist/MS +hosanna/SM +hose/MGDS +hosepipe/S +hosier/MS +hosiery/M +hosp +hospholipase +hospice/MS +hospitable/I +hospitably/I +hospital/SM +hospitalisation/SM +hospitalise/DSG +hospitality/M +host/MDSG +hostage/MS +hostel/ZGMDRS +hosteler/M +hostelry/SM +hostess/MDSG +hostile/MYS +hostilities/M +hostility/SM +hostler/MS +hot/SYP +hotbed/MS +hotblooded +hotbox/MS +hotcake/SM +hotel/SM +hotelier/MS +hotfoot/MDGS +hothead/DSM +hotheaded/YP +hotheadedness/M +hothouse/SM +hotkey/S +hotlink/S +hotness/M +hotplate/SM +hotpot/S +hots/M +hotshot/MS +hotted +hotter +hottest +hottie/S +hotting +hound/SGMD +hour/MYS +hourglass/MS +houri/SM +house's +house/ADSG +houseboat/SM +housebound +houseboy/SM +housebreak/RSZG +housebreaker/M +housebreaking/M +housebroke +housebroken +houseclean/DSG +housecleaning/M +housecoat/SM +housefly/SM +houseful/SM +household/SMRZ +householder/M +househusband/SM +housekeeper/MS +housekeeping/M +houselights/M +housemaid/SM +houseman/M +housemaster/S +housemate/S +housemen +housemistress/S +housemother/SM +houseparent/SM +houseplant/MS +houseproud +houseroom +housetop/SM +housewares/M +housewarming/SM +housewife/MY +housewives +housework/M +housing/MS +hove +hovel/SM +hover/SGD +hoverboard/MS +hovercraft/MS +how'd +how're +how/SM +howbeit +howdah/M +howdahs +howdy +however +howitzer/SM +howl/MDRSZG +howler/M +howsoever +hoyden/MS +hoydenish +hp +hr/S +ht +huarache/SM +hub/SM +hubbub/SM +hubby/SM +hubcap/SM +hubris/M +huckleberry/SM +huckster/SGMD +hucksterism/M +huddle/DSMG +hue/DSM +huff/MDSG +huffily +huffiness/M +huffy/PRT +hug/STMR +huge/YP +hugeness/M +hugged +hugging +huh +hula/MS +hulk/MSG +hull/MDRSZG +hullabaloo/SM +huller/M +hum/SM +human/SMRYTP +humane/PY +humaneness/M +humanisation/CM +humanise/CDSG +humaniser/SM +humanism/M +humanist/SM +humanistic +humanitarian/MS +humanitarianism/M +humanities/M +humanity/ISM +humankind/M +humanness/M +humanoid/SM +humble/DRSZTGJP +humbleness/M +humbler/M +humbly +humbug/SM +humbugged +humbugging +humdinger/MS +humdrum/M +humeral +humeri +humerus/M +humid/Y +humidification/M +humidifier/CM +humidify/CZGDRS +humidity/M +humidor/SM +humiliate/DSGNX +humiliating/Y +humiliation/M +humility/M +hummed +hummer/SM +humming +hummingbird/SM +hummock/SM +hummocky +hummus/M +humongous +humoresque +humorist/MS +humorlessly +humorous/PY +humorousness/M +humour/GSMD +humourless/P +humourlessness/M +hump/MDSG +humpback/MDS +humph/DG +humphs +humus/M +hunch/MDSG +hunchback/SMD +hundred/SMH +hundredfold +hundredth/M +hundredths +hundredweight/SM +hung +hunger/SMDG +hungover +hungrily +hungriness/M +hungry/PRT +hunk/MRSZ +hunker/DG +hunky/RT +hunt/MDRSZG +hunter/M +hunting/M +huntress/MS +huntsman/M +huntsmen +hurdle/DRSMZG +hurdler/M +hurdling/M +hurl/MDRSZG +hurler/M +hurling/M +hurrah/GMD +hurrahs +hurricane/MS +hurried/UY +hurry/DSMG +hurt/MSG +hurtful/YP +hurtfulness/M +hurtle/DSG +husband/GMDS +husbandman/M +husbandmen +husbandry/M +hush/MDSG +husk/MDRSZG +husker/M +huskily +huskiness/M +husky/PRSMT +hussar/SM +hussy/SM +hustings/M +hustle/DRSMZG +hustler/M +hut/SM +hutch/MS +huzzah/MDG +huzzahs +hwy +hyacinth/M +hyacinths +hybrid/SM +hybridisation/M +hybridise/DSG +hybridism/M +hydra/SM +hydrangea/SM +hydrant/MS +hydrate's +hydrate/CGNDS +hydration/CM +hydraulic/S +hydraulically +hydraulics/M +hydro/M +hydrocarbon/MS +hydrocephalus/M +hydrochloride +hydrocortisone +hydrodynamic/S +hydrodynamics/M +hydroelectric +hydroelectrically +hydroelectricity/M +hydrofoil/MS +hydrogen/M +hydrogenate/CGDS +hydrogenation/M +hydrogenous +hydrologist/MS +hydrology/M +hydrolyse/DSG +hydrolysis/M +hydrometer/SM +hydrometry/M +hydrophilic +hydrophobia/M +hydrophobic +hydrophone/SM +hydroplane/GDSM +hydroponic/S +hydroponically +hydroponics/M +hydrosphere/M +hydrotherapy/M +hydrothermal +hydrous +hydroxide/SM +hyena/SM +hygiene/M +hygienic/U +hygienically +hygienist/MS +hygrometer/SM +hying +hymen/SM +hymeneal +hymn/MDSG +hymnal/MS +hymnbook/SM +hype/MGDRS +hyperactive +hyperactivity/M +hyperbola/SM +hyperbole/M +hyperbolic +hypercritical/Y +hypercube +hyperglycemia/M +hyperinflation +hyperlink/GSMD +hypermarket/S +hypermedia/M +hyperparathyroidism +hyperplane +hypersensitive/P +hypersensitiveness/M +hypersensitivity/SM +hyperspace/S +hypertension/M +hypertensive/SM +hypertext/M +hyperthyroid/M +hyperthyroidism/M +hypertrophy/DSMG +hyperventilate/GNDS +hyperventilation/M +hypervisor/MS +hyphen/MDSG +hyphenate/XDSMGN +hyphenation/M +hypnoses +hypnosis/M +hypnotherapist/S +hypnotherapy/M +hypnotic/SM +hypnotically +hypnotise/GDS +hypnotism/M +hypnotist/MS +hypo/MS +hypoallergenic +hypochondria/M +hypochondriac/SM +hypocrisy/SM +hypocrite/MS +hypocritical/Y +hypodermic/MS +hypoglycemia/M +hypoglycemic/SM +hypotenuse/MS +hypothalami +hypothalamus/M +hypothermia/M +hypotheses +hypothesis/MDSG +hypothesise +hypothetical/Y +hypothyroid/M +hypothyroidism/M +hyssop/M +hysterectomy/SM +hysteresis +hysteria/M +hysteric/SM +hysterical/Y +hysterics/M +i/US +iOS/M +iPad/M +iPhone/M +iPod/M +iTunes/M +iamb/MS +iambi +iambic/SM +iambus/MS +ibex/MS +ibid +ibidem +ibis/MS +ibuprofen/M +ice's +ice/CDSG +iceberg/SM +iceboat/SM +icebound +icebox/MS +icebreaker/SM +icecap/SM +iceman/M +icemen +ichthyologist/MS +ichthyology/M +icicle/SM +icily +iciness/M +icing/SM +icky/RT +icon/MS +iconic +iconoclasm/M +iconoclast/SM +iconoclastic +iconography/M +ictus/M +icy/TPR +id/SMY +idea/MS +ideal/SMY +idealisation/SM +idealise/DSG +idealism/M +idealist/SM +idealistic +idealistically +idem +idempotent +identical/Y +identifiable/U +identification/M +identified/U +identify/ZGNDRSX +identikit/S +identity/SM +ideogram/SM +ideograph/M +ideographs +ideological/Y +ideologist/SM +ideologue/MS +ideology/SM +ides/M +idiocy/SM +idiom/SM +idiomatic/U +idiomatically +idiopathic +idiosyncrasy/SM +idiosyncratic +idiosyncratically +idiot/SM +idiotic +idiotically +idle/MZTGDRSP +idleness/M +idler/M +idol/MS +idolater/SM +idolatress/MS +idolatrous +idolatry/M +idolisation/M +idolise/GDS +idyll/SM +idyllic +idyllically +if/SM +iffiness/M +iffy/RTP +igloo/SM +igneous +ignitable +ignite/AGDS +ignition/MS +ignoble +ignobly +ignominious/Y +ignominy/SM +ignoramus/MS +ignorance/M +ignorant/Y +ignore/GDS +iguana/MS +ii +iii +ilea +ileitis/M +ileum/M +ilia +ilium/M +ilk/SM +ill/SMP +illegal/MYS +illegality/SM +illegibility/M +illegible +illegibly +illegitimacy/M +illegitimate/Y +illiberal/Y +illiberality/M +illicit/YP +illicitness/M +illimitable +illiteracy/M +illiterate/MYS +illness/MS +illogical/Y +illogicality/M +illuminate/GNXDS +illuminating/Y +illumination/M +illumine/DSBG +illus/V +illusion/EMS +illusionist/SM +illusory +illustrate/GNVXDS +illustration/M +illustrative/Y +illustrator/SM +illustrious/PY +illustriousness/M +image/DSMG +imagery/M +imaginable/U +imaginably/U +imaginal +imaginary +imagination/MS +imaginative/UY +imagine/DSBJG +imago/M +imagoes +imam/MS +imbalance/DSM +imbecile/MS +imbecilic +imbecility/SM +imbibe/ZGDRS +imbiber/M +imbrication/M +imbroglio/SM +imbue/DSG +imitable/I +imitate/DSGNVX +imitation/M +imitative/PY +imitativeness/M +imitator/SM +immaculate/PY +immaculateness/M +immanence/M +immanency/M +immanent/Y +immaterial/YP +immateriality/M +immaterialness/M +immature/Y +immaturity/M +immeasurable +immeasurably +immediacies/M +immediacy/SM +immediate/PY +immediateness/M +immemorial/Y +immense/Y +immensity/SM +immerse/XDSGNV +immersible +immersion/M +immigrant/SM +immigrate/DSGN +immigration/M +imminence/M +imminent/Y +immobile +immobilisation/M +immobilise/ZGDRS +immobility/M +immoderate/Y +immodest/Y +immodesty/M +immolate/DSGN +immolation/M +immoral/Y +immorality/SM +immortal/MYS +immortalise/DSG +immortality/M +immovability/M +immovable +immovably +immune +immunisation/MS +immunise/GDS +immunity/M +immunodeficiency/M +immunodeficient +immunoglobulin/S +immunologic +immunological +immunologist/MS +immunology/M +immure/DSG +immutability/M +immutable +immutably +imp/SMR +impact/SMDG +impair/SDGL +impaired/U +impairment/MS +impala/SM +impale/DSGL +impalement/M +impalpable +impalpably +impanel/S +impanelled +impanelling +impart/SDG +impartial/Y +impartiality/M +impassably +impasse/BSMV +impassibility/M +impassible +impassibly +impassioned +impassive/YP +impassiveness/M +impassivity/M +impasto/M +impatience/MS +impatiens/M +impatient/Y +impeach/ZGBLDRS +impeachable/U +impeacher/M +impeachment/SM +impeccability/M +impeccable +impeccably +impecunious/PY +impecuniousness/M +impedance/M +impede/DSG +impeded/U +impediment/SM +impedimenta/M +impel/S +impelled +impeller/MS +impelling +impend/SDG +impenetrability/M +impenetrable +impenetrably +impenitence/M +impenitent/Y +imperative/SMY +imperceptibility/M +imperceptible +imperceptibly +imperceptive +imperf +imperfect/SMYP +imperfection/MS +imperfectness/M +imperial/MYS +imperialism/M +imperialist/SM +imperialistic +imperialistically +imperil/SL +imperilled +imperilling +imperilment/M +imperious/PY +imperiousness/M +imperishable +imperishably +impermanence/M +impermanent/Y +impermeability/M +impermeable +impermeably +impermissible +impersonal/Y +impersonate/GNXDS +impersonation/M +impersonator/SM +impertinence/MS +impertinent/Y +imperturbability/M +imperturbable +imperturbably +impervious/Y +impetigo/M +impetuosity/M +impetuous/YP +impetuousness/M +impetus/MS +impiety/SM +impinge/LDSG +impingement/M +impious/PY +impiousness/M +impish/YP +impishness/M +implacability/M +implacable +implacably +implant/BSGMD +implantation/M +implausibility/SM +implausible +implausibly +implement/GBMDRS +implementable/U +implementation/SM +implemented/U +implicate/DSG +implication/M +implicit/PY +implicitness/M +implode/DSG +implore/DSG +imploring/Y +implosion/MS +implosive +imply/XDSGN +impolite/YP +impoliteness/MS +impolitic +imponderable/MS +import/ZGBSMDR +importance/M +important/Y +importation/MS +importer/M +importunate/Y +importune/GDS +importunity/M +impose/ADSG +imposer/MS +imposing/U +imposingly +imposition/MS +impossibility/SM +impossible/S +impossibly +impost/SM +impostor/SM +imposture/MS +impotence/M +impotency/M +impotent/Y +impound/DGS +impoverish/DSLG +impoverishment/M +impracticability +impracticable +impracticably +impractical/Y +impracticality/M +imprecate/DSXGN +imprecation/M +imprecise/PYN +impreciseness/M +imprecision/M +impregnability/M +impregnable +impregnably +impregnate/GNDS +impregnation/M +impresario/SM +impress/MDSGV +impressed/U +impressibility/M +impressible +impression/BSM +impressionability/M +impressionism/M +impressionist/SM +impressionistic +impressive/PY +impressiveness/M +imprimatur/SM +imprint/MDRZGS +imprinter/M +imprison/SDLG +imprisonment/SM +improbability/SM +improbable +improbably +impromptu/SM +improper/Y +impropriety/SM +improve/GBDSL +improved/U +improvement/MS +improvidence/M +improvident/Y +improvisation/SM +improvisational +improvise/ZGDRS +improviser/M +imprudence/M +imprudent/Y +impudence/M +impudent/Y +impugn/ZGSDR +impugner/M +impulse/MGNVDS +impulsion/M +impulsive/PY +impulsiveness/M +impulsivity +impunity/M +impure/RYT +impurity/SM +imputation/SM +impute/BDSG +in/ASM +inaccuracy/S +inaction/M +inadequacy/S +inadvertence/M +inadvertent/Y +inalienability/M +inalienably +inamorata/SM +inane/RYT +inanimate/PY +inanimateness/M +inanity/SM +inappropriate/Y +inarticulate/Y +inasmuch +inaudible +inaugural/SM +inaugurate/XGNDS +inauguration/M +inboard/MS +inbound +inbox/MS +inbreed/S +inc/TGD +incalculably +incandescence/M +incandescent/Y +incantation/SM +incapacitate/GNDS +incarcerate/XDSGN +incarceration/M +incarnadine/DSG +incarnate/AXGNDS +incarnation/AM +incendiary/SM +incense/MGDS +incentive's +incentive/ES +inception/SM +incessant/Y +incest/M +incestuous/PY +incestuousness/M +inch/MDSG +inchoate +inchworm/SM +incidence/SM +incident/SM +incidental/MYS +incinerate/DSGN +incineration/M +incinerator/MS +incipience/M +incipient/Y +incise/XGNVDS +incision/M +incisive/PY +incisiveness/M +incisor/MS +incitement/MS +inciter/MS +incl +inclement +inclination/EM +inclinations +incline's +incline/EGDS +include/GDS +inclusion/MS +inclusive/YP +inclusiveness/M +incognito/MS +incombustible +incommode/GD +incommodious +incommunicado +incompatibility/S +incompetent/MS +incomplete/Y +inconceivability/M +incongruous/PY +incongruousness/M +inconsolably +inconstant/Y +incontestability/M +incontestably +incontinent +incontrovertibly +inconvenience/GD +incorporate/ADSGN +incorporated/U +incorporation/AM +incorporeal +incorrect/Y +incorrigibility/M +incorrigible +incorrigibly +incorruptibly +increasing/Y +increment/SMDG +incremental/Y +incrementalism +incrementalist/SM +incriminate/GNDS +incrimination/M +incriminatory +incrustation/SM +incubate/GNDS +incubation/M +incubator/SM +incubus/MS +inculcate/DSGN +inculcation/M +inculpate/DSG +incumbency/SM +incumbent/SM +incunabula +incunabulum/M +incur/SB +incurable/MS +incurably +incurious +incurred +incurring +incursion/MS +ind +indebted/P +indebtedness/M +indeed +indefatigable +indefatigably +indefeasible +indefeasibly +indefinably +indelible +indelibly +indemnification/M +indemnify/GDSXN +indemnity/SM +indentation/MS +indention/M +indenture/DG +independent/MS +indescribably +indestructibly +indeterminably +indeterminacy/M +indeterminate/Y +index/ZGMDRS +indexation/SM +indexer/M +indicate/XDSGNV +indication/M +indicative/SMY +indicator/MS +indict/GDSBL +indictment/SM +indie/S +indigence/M +indigenous +indigent/SMY +indignant/Y +indignation/M +indigo/M +indirect/Y +indiscipline +indiscreet/Y +indiscretion/S +indiscriminate/Y +indispensability/M +indispensable/MS +indispensably +indissolubility +indissolubly +indistinguishably +indite/GDS +indium/M +individual/MYS +individualisation/M +individualise/GDS +individualism/M +individualist/MS +individualistic +individualistically +individuality/M +individuate/DSGN +individuation/M +indivisibly +indoctrinate/GNDS +indoctrination/M +indolence/M +indolent/Y +indomitable +indomitably +indubitable +indubitably +induce/DRSZGL +inducement/SM +inducer/M +induct/DGV +inductance/M +inductee/SM +induction/MS +inductive/Y +indulge/DSG +indulgence/SM +indulgent/Y +industrial/Y +industrialisation/M +industrialise/DSG +industrialism/M +industrialist/SM +industrious/YP +industriousness/M +industry/SM +indwell/SG +inebriate/MGNDS +inebriation/M +inedible +ineffability/M +ineffable +ineffably +inelastic +ineligible/MS +ineligibly +ineluctable +ineluctably +inept/YP +ineptitude/M +ineptness/M +inequality/S +inert/YP +inertia/M +inertial +inertness/M +inescapable +inescapably +inestimably +inevitability/M +inevitable/M +inevitably +inexact/Y +inexhaustibly +inexorability +inexorable +inexorably +inexpedient +inexpert/Y +inexpiable +inexplicably +inexpressibly +inexpressive +inextricably +inf/ZT +infallible +infamy/SM +infancy/M +infant/MS +infanticide/MS +infantile +infantry/SM +infantryman/M +infantrymen +infarct/MS +infarction/M +infatuate/DSXGN +infatuation/M +infect/AESDG +infected/U +infection/ASM +infectious/PY +infectiousness/M +infelicitous +inference/SM +inferential +inferior/MS +inferiority/M +infernal/Y +inferno/MS +inferred +inferring +infest/GDS +infestation/MS +infidel/MS +infidelity/S +infiltrator/SM +infinite/MV +infinitesimal/SMY +infinitival +infinitive/MS +infinitude/M +infinity/SM +infirm +infirmary/SM +infirmity/SM +infix +inflame/DSG +inflammable +inflammation/SM +inflammatory +inflatable/SM +inflate/ADSG +inflation/EM +inflationary +inflect/SDG +inflection/MS +inflectional +inflexion/SM +inflict/SDGV +infliction/M +inflow/SM +influence/MGDS +influenced/U +influential/Y +influenza/M +info/M +infomercial/SM +inform/Z +informal/Y +informant/SM +informatics +information/EM +informational +informative/PY +informativeness/M +informed/U +infotainment/M +infra +infrared/M +infrasonic +infrastructural +infrastructure/SM +infrequence/M +infrequent/Y +infringement/MS +infuriate/GDS +infuriating/Y +infuser/SM +ingenious/PY +ingeniousness/M +ingenue/SM +ingenuity/M +ingenuous/EY +ingenuousness/M +ingest/SDG +ingestion/M +inglenook/SM +ingot/SM +ingrain/G +ingrate/SM +ingratiate/GNDS +ingratiating/Y +ingratiation/M +ingredient/MS +ingress/MS +inguinal +inhabit/DG +inhabitable/U +inhabitant/SM +inhabited/U +inhalant/SM +inhalation/MS +inhalator/MS +inhaler/SM +inharmonious +inhere/DSG +inherent/Y +inherit/EGSD +inheritance/EM +inheritances +inheritor/SM +inhibit/GSD +inhibition/SM +inhibitor/SM +inhibitory +inhuman/Y +inhumane/Y +inimical/Y +inimitably +iniquitous/Y +iniquity/SM +initial/SMY +initialisation +initialise/DSG +initialised/AU +initialism +initialled +initialling +initiate/XMGNVDS +initiated/U +initiation/M +initiative/SM +initiator/MS +initiatory +initio +inject/SDG +injection/SM +injector/SM +injunctive +injure/DRSZG +injured/U +injurer/M +injurious +ink/MD +inkblot/SM +inkiness/M +inkling/SM +inkstand/SM +inkwell/MS +inky/RTP +inland/M +inline +inmate/SM +inmost +inn/SGMRJ +innards/M +innate/PY +innateness/M +innermost +innersole/SM +innerspring +innervate/GNDS +innervation/M +inning/M +innit +innkeeper/MS +innocence/M +innocent/MYS +innocuous/PY +innocuousness/M +innovate/XDSGNV +innovation/M +innovator/MS +innovatory +innuendo/SM +innumerably +innumerate +inoculate/AGDS +inoculation/MS +inoperative +inordinate/Y +inorganic +inositol +inquire/ZGDR +inquirer/M +inquiring/Y +inquiry/SM +inquisition/MS +inquisitional +inquisitive/YP +inquisitiveness/M +inquisitor/SM +inquisitorial +inrush/MS +insane/T +insatiability/M +insatiably +inscribe/ZGDR +inscriber/M +inscription/MS +inscrutability/M +inscrutable/P +inscrutableness/M +inscrutably +inseam/SM +insecticidal +insecticide/MS +insectivore/MS +insectivorous +insecure/Y +inseminate/DSGN +insemination/M +insensate +insensible +insensitive/Y +inseparable/MS +insert's +insert/AGSD +insertion/AM +insertions +insetting +inshore +inside/RSMZ +insider/M +insidious/YP +insidiousness/M +insight/MS +insightful +insignia/M +insinuate/GNVDSX +insinuation/M +insinuator/SM +insipid/PY +insipidity/M +insist/SGD +insistence/M +insistent/Y +insisting/Y +insofar +insole/SM +insolence/M +insolent/Y +insoluble +insolubly +insolvency/S +insomnia/M +insomniac/SM +insomuch +insouciance/M +insouciant +inspect/AGDS +inspection/SM +inspector/MS +inspectorate/MS +inspiration/MS +inspirational +inspiratory +inspired/U +inspiring/U +inst +instability/S +install/UBZRSDG +installation/MS +installer/UM +instalment/MS +instance/GD +instant/MRYS +instantaneous/Y +instantiate/DSG +instar +instate/AGDS +instead +instigate/DSGN +instigation/M +instigator/MS +instil/S +instillation/M +instinct/VMS +instinctive/Y +instinctual +institute/XMZGNDRS +instituter/M +institution/M +institutional/Y +institutionalisation/M +institutionalise/DSG +instr +instruct/SDGV +instructed/U +instruction/MS +instructional +instructive/Y +instructor/MS +instrument/MDSG +instrumental/MYS +instrumentalist/SM +instrumentality/M +instrumentation/M +insubordinate +insufferable +insufferably +insula +insular +insularity/M +insulate/GNDS +insulation/M +insulator/MS +insulin/M +insult/SMDG +insulting/Y +insuperable +insuperably +insurance/SM +insure/DRSZGB +insured/SM +insurer/M +insurgence/SM +insurgency/SM +insurgent/MS +insurmountably +insurrection/SM +insurrectionist/SM +int +intact +intaglio/MS +integer/MS +integral/SMY +integrate/AEVNGSD +integration/EAM +integrator +integrity/M +integument/SM +intel/M +intellect/MS +intellectual/MYS +intellectualise/GDS +intellectualism/M +intelligence/M +intelligent/Y +intelligentsia/M +intelligibility/M +intelligible/U +intelligibly/U +intended/SM +intense/YTVR +intensification/M +intensifier/M +intensify/DRSZGN +intensity/S +intensive/MYPS +intensiveness/M +intent/SMYP +intention/MS +intentional/UY +intentness/M +inter/ESL +interact/SGVD +interaction/SM +interactive/Y +interactivity +interbred +interbreed/GS +intercede/GDS +intercept/GMDS +interception/MS +interceptor/SM +intercession/SM +intercessor/MS +intercessory +interchange/DSMG +interchangeability +interchangeable +interchangeably +intercity +intercollegiate +intercom/SM +intercommunicate/DSGN +intercommunication/M +interconnect/GDS +interconnection/SM +intercontinental +intercourse/M +intercultural +interdenominational +interdepartmental +interdependence/M +interdependent/Y +interdict/GMDS +interdiction/M +interdisciplinary +interest/ESMD +interested/U +interesting/Y +interface/MGDS +interfaith +interfere/GDS +interference/M +interferon/M +interfile/GDS +intergalactic +intergovernmental +interim/M +interior/SM +interj +interject/GDS +interjection/SM +interlace/GDS +interlard/DGS +interleave/DSG +interleukin/M +interline/GDSJ +interlinear +interlining/M +interlink/DSG +interlock/GMDS +interlocutor/SM +interlocutory +interlope/ZGDRS +interloper/M +interlude/MGDS +intermarriage/SM +intermarry/GDS +intermediary/SM +intermediate/MYS +interment/EM +interments +intermezzi +intermezzo/MS +interminably +intermingle/DSG +intermission/SM +intermittence +intermittency +intermittent/Y +intermix/GDS +intern/GDL +internal/SY +internalisation/M +internalise/GDS +international/SMY +internationalisation +internationalise/DSG +internationalism/M +internationalist/SM +internecine +internee/SM +internet +internist/MS +internment/M +internship/MS +interoffice +interoperability +interoperable +interoperate/S +interpenetrate/DSGN +interpersonal +interplanetary +interplay/M +interpolate/XDSGN +interpolation/M +interpose/GDS +interposition/M +interpret/AGVDS +interpretation/AMS +interpretative +interpreted/U +interpreter/MS +interracial +interred/E +interregnum/SM +interrelate/XDSGN +interrelation/M +interrelationship/MS +interring/E +interrogate/DSGNVX +interrogation/M +interrogative/MYS +interrogator/SM +interrogatory/SM +interrupt/ZGMDRS +interrupter/M +interruption/MS +interscholastic +intersect/GDS +intersection/SM +intersectional +intersectionality +intersession/SM +intersex +intersperse/GNDS +interspersion/M +interstate/MS +interstellar +interstice/MS +interstitial +intertwine/GDS +interurban +interval/SM +intervene/GDS +intervention/SM +interventionism/M +interventionist/SM +interview/ZGMDRS +interviewee/MS +interviewer/M +intervocalic +interwar +interweave/GS +interwove +interwoven +intestacy/M +intestate +intestinal +intestine/MS +intifada +intimacy/SM +intimate/MYGNDSX +intimation/M +intimidate/GNDS +intimidating/Y +intimidation/M +intonation/SM +intoxicant/SM +intoxicate/DSGN +intoxication/M +intracranial +intramural +intramuscular +intranet/MS +intransigence/M +intransigent/MYS +intrastate +intrauterine +intravenous/MSY +intrepid/Y +intrepidity/M +intricacy/SM +intricate/Y +intrigue/DRSMZG +intriguer/M +intriguing/Y +intrinsic +intrinsically +intro/SM +introduce/AGDS +introduction/AM +introductions +introductory +introit/SM +introspect/GVDS +introspection/M +introspective/Y +introversion/M +introvert/MDS +intrude/DRSZG +intruder/M +intrusion/SM +intrusive/YP +intrusiveness/M +intuit/SDGV +intuition/S +intuitive/PY +intuitiveness/M +inundate/XDSGN +inundation/M +inure/DSG +invade/DRSZG +invader/M +invalid/GMDYS +invalidism/M +invaluable +invaluably +invariant +invasion/MS +invasive +invective/M +inveigh/GD +inveighs +inveigle/ZGDRS +inveigler/M +invent/ASGVD +invention/AMS +inventive/PY +inventiveness/M +inventor/MS +inventory/DSMG +inverse/SMY +invert/SMDRZG +inverter/M +invest/ASDGL +investigate/GNVDSX +investigation/M +investigator/SM +investigatory +investiture/MS +investment/AEM +investor/SM +inveteracy/M +inveterate +invidious/YP +invidiousness/M +invigilate/GNDS +invigilator/S +invigorate/ADSG +invigorating/Y +invigoration/M +invincibility/M +invincibly +inviolability/M +inviolably +inviolate +invitation/SM +invitational/SM +invite/DSMG +invited/U +invitee/SM +inviting/Y +invoke/DSG +involuntariness/M +involuntary/P +involution/M +involve/LDSG +involved/U +involvement/SM +inward/SY +ioctl +iodide/SM +iodine/M +iodise/DSG +ion/USM +ionic +ionisation/UM +ionise/UDSG +ionizer/MS +ionosphere/MS +ionospheric +iota/MS +ipecac/SM +irascibility/M +irascible +irascibly +irate/YP +irateness/M +ire/M +ireful +irenic +irides +iridescence/M +iridescent/Y +iridium/M +iris/MS +irk/SGD +irksome/YP +irksomeness/M +iron/MDSG +ironclad/MS +ironic +ironical/Y +ironing/M +ironmonger/S +ironmongery +ironstone/M +ironware/M +ironwood/MS +ironwork/M +irony/SM +irradiate/DSGN +irradiation/M +irrational/SMY +irrationality/M +irreclaimable +irreconcilability/M +irreconcilable +irreconcilably +irrecoverable +irrecoverably +irredeemable +irredeemably +irreducible +irreducibly +irrefutable +irrefutably +irregular/MYS +irregularity/SM +irrelevance/MS +irrelevancy/MS +irrelevant/Y +irreligion +irreligious +irremediable +irremediably +irremovable +irreparable +irreparably +irreplaceable +irrepressible +irrepressibly +irreproachable +irreproachably +irresistible +irresistibly +irresolute/PYN +irresoluteness/M +irresolution/M +irrespective +irresponsibility/M +irresponsible +irresponsibly +irretrievable +irretrievably +irreverence/M +irreverent/Y +irreversible +irreversibly +irrevocable +irrevocably +irrigable +irrigate/DSGN +irrigation/M +irritability/M +irritable +irritably +irritant/SM +irritate/DSXGN +irritating/Y +irritation/M +irrupt/DGVS +irruption/SM +ischaemia +ischaemic +isinglass/M +isl +island/SZMR +islander/M +isle/MS +islet/SM +ism/CM +isms +isn't +isobar/MS +isobaric +isolate/DSMGN +isolation/M +isolationism/M +isolationist/SM +isomer/MS +isomeric +isomerism/M +isometric/S +isometrically +isometrics/M +isomorphic +isomorphism +isosceles +isotherm/SM +isotope/SM +isotopic +isotropic +issuance/M +issue/ADSMG +issuer/MS +isthmian +isthmus/MS +it'd +it'll +it/USM +ital +italic/SM +italicisation/M +italicise/GDS +italics/M +itch/MDSG +itchiness/M +itchy/RPT +item/MS +itemisation/M +itemise/GDS +iterate/AXGNVDS +iteration/AM +iterator/S +itinerant/SM +itinerary/SM +itself +iv/U +ivory/SM +ivy/DSM +ix +j/F +jab/SM +jabbed +jabber/SMDRZG +jabberer/M +jabbing +jabot/SM +jacaranda/MS +jack/MDGS +jackal/SM +jackass/MS +jackboot/SMD +jackdaw/MS +jacket/SMD +jackhammer/MS +jackknife/MGDS +jackknives +jackpot/MS +jackrabbit/MS +jackstraw/MS +jacquard/M +jade/MGDS +jaded/PY +jadedness/M +jadeite/M +jag/SM +jagged/TPRY +jaggedness/M +jaggies +jaguar/SM +jail/MDRZGS +jailbird/SM +jailbreak/SM +jailer/M +jailhouse/S +jalapeno/MS +jalopy/SM +jalousie/MS +jam/SM +jamb/MS +jambalaya/M +jamboree/MS +jammed +jamming +jammy/RT +jangle/DRSMZG +jangler/M +janitor/SM +janitorial +japan/SM +japanned +japanning +jape/MGDS +jar/SM +jardiniere/SM +jarful/MS +jargon/M +jarred +jarring/Y +jasmine/SM +jasper/M +jato/MS +jaundice/DSMG +jaunt/SGMD +jauntily +jauntiness/M +jaunty/RPT +java/M +javelin/SM +jaw/SGMD +jawbone/DSMG +jawbreaker/MS +jawline/S +jay/SM +jaybird/SM +jaywalk/DRSZG +jaywalker/M +jaywalking/M +jazz/MDSG +jazzy/TR +jct +jealous/Y +jealousy/SM +jean/MS +jeans/M +jeep/MS +jeer/MDSG +jeering/MY +jeez +jejuna +jejune +jejunum/M +jell/DSG +jello/S +jelly/GDSM +jellybean/MS +jellyfish/MS +jellylike +jellyroll/SM +jemmy/GDS +jennet/MS +jenny/SM +jeopardise/GDS +jeopardy/M +jeremiad/MS +jerk/MDSG +jerkily +jerkin/MS +jerkiness/M +jerkwater +jerky/TRMP +jeroboam/S +jerrybuilt +jerrycan/S +jersey/MS +jest/MDRSZG +jester/M +jesting/Y +jet/SM +jetliner/SM +jetport/MS +jetsam/M +jetted +jetting +jettison/MDSG +jetty/SM +jewel/SM +jewelled +jeweller/MS +jewellery/M +jewelling +jewelries +jg +jib/SGMD +jibbed +jibbing +jibe/MS +jiff/MS +jiffy/SM +jig's +jig/AS +jigged/A +jigger's +jigger/ASDG +jigging/A +jiggle/DSMG +jiggly +jigsaw/SMDG +jihad/SM +jihadist/SM +jilt/MDSG +jimmy/DSMG +jimsonweed/M +jingle/DSMG +jingly +jingoism/M +jingoist/SM +jingoistic +jink/DSG +jinn +jinni/M +jinrikisha/SM +jinx/MDSG +jitney/SM +jitterbug/MS +jitterbugged +jitterbugger/M +jitterbugging +jitters/M +jittery/RT +jive/MGDS +job/SM +jobbed +jobber/SM +jobbing +jobholder/MS +jobless/P +joblessness/M +jobshare/S +jobsworth +jobsworths +jock/MS +jockey/SGMD +jockstrap/MS +jocose/PY +jocoseness/M +jocosity/M +jocular/Y +jocularity/M +jocund/Y +jocundity/M +jodhpurs/M +joey/S +jog/SM +jogged +jogger/SM +jogging/M +joggle/DSMG +john/MS +johnny/SM +johnnycake/MS +join's +join/AFDSG +joiner/FMS +joinery/M +joint's +joint/EGSD +jointly/F +joist/SM +jojoba +joke/MZGDRS +joker/M +jokey +jokier +jokiest +joking/Y +jollification/SM +jollily +jolliness/M +jollity/M +jolly/TGPDRSM +jolt/MDRSZG +jolter/M +jonquil/SM +josh/MDRSZG +josher/M +jostle/MGDS +jot/SM +jotted +jotter/MS +jotting/MS +joule/SM +jounce/MGDS +jouncy +journal/MS +journalese/M +journalism/M +journalist/SM +journalistic +journey/ZGMDRS +journeyer/M +journeyman/M +journeymen +journo/S +joust/SZGMDR +jouster/M +jousting/M +jovial/Y +joviality/M +jowl/MS +jowly/TR +joy/SGMD +joyful/YP +joyfuller +joyfullest +joyfulness/M +joyless/PY +joylessness/M +joyous/YP +joyousness/M +joyridden +joyride/RSMZG +joyrider/M +joyriding/M +joyrode +joystick/SM +jr +jubilant/Y +jubilation/M +jubilee/SM +judder/GDS +judge's +judge/ADSG +judgement/SM +judgemental +judgeship/M +judgmentally +judicatory/SM +judicature/M +judicial/Y +judiciary/SM +judicious/IYP +judiciousness/IM +judo/M +jug/SM +jugful/MS +jugged +juggernaut/SM +jugging +juggle/MZGDRS +juggler/M +jugglery/M +jugular/SM +juice/DRSMZG +juicer/M +juicily +juiciness/M +juicy/PTR +jujitsu/M +jujube/MS +jukebox/MS +julep/SM +julienne +jumble/MGDS +jumbo/SM +jump/MDRSZG +jumper/M +jumpily +jumpiness/M +jumpsuit/MS +jumpy/TRP +jun +junco/SM +junction/FISM +juncture/FMS +jungle/MS +junior/MS +juniper/SM +junk/MDRSZG +junker/M +junket/MDSG +junketeer/MS +junkie/MTRS +junkyard/MS +junta/SM +juridic +juridical/Y +jurisdiction/SM +jurisdictional +jurisprudence/M +jurist/MS +juristic +juror/SM +jury/ISM +juryman/M +jurymen +jurywoman/M +jurywomen +just/RYPT +justice/IMS +justifiable/U +justifiably/U +justification/M +justified/U +justify/XGDSN +justness/M +jut/SM +jute/M +jutted +jutting +juvenile/SM +juxtapose/DSG +juxtaposition/SM +k/IFGS +kHz +kW +kWh +kabbalah +kaboom +kabuki/M +kaddish/MS +kaffeeklatch/MS +kaffeeklatsch/MS +kaftan/MS +kahuna/S +kaiser/MS +kale/M +kaleidoscope/MS +kaleidoscopic +kaleidoscopically +kamikaze/MS +kana +kangaroo/MS +kanji +kaolin/M +kapok/M +kappa/SM +kaput +karakul/M +karaoke/MS +karat/SM +karate/M +karma/M +karmic +kart/MS +katakana +katydid/SM +kayak/SMDG +kayaking/M +kayo/MDSG +kazoo/SM +kc +kebab/SM +kedgeree +keel/MDSG +keelhaul/DGS +keen/MDRYSTGP +keenness/M +keep/MRSZG +keeper/M +keeping/M +keepsake/MS +keg/SM +kelp/M +kelvin/SM +ken/SM +kenned +kennel/SM +kennelled +kennelling +kenning +keno/M +kepi/MS +kept +keratin/M +keratitis +kerb/MDSG +kerbside +kerchief/SM +kerfuffle/S +kernel/SM +kerosene/M +kestrel/MS +ketch/MS +ketchup/M +keto +ketogenic +ketone/S +kettle/SM +kettledrum/SM +key/SGMD +keybinding/S +keyboard/ZGSMDR +keyboarder/M +keyboardist/SM +keyhole/MS +keynote/MZGDRS +keynoter/M +keypad/SM +keypunch/ZGMDRS +keypuncher/M +keystone/MS +keystroke/SM +keyword/MS +kg +khaki/SM +khan/MS +kibble/DSMG +kibbutz/MS +kibbutzim +kibitz/ZGDRS +kibitzer/M +kibosh/M +kick/MDRSZG +kickback/SM +kickball/M +kickboxing +kicker/M +kickoff/MS +kickstand/MS +kicky/RT +kid/SM +kidded +kidder/SM +kiddie/SM +kidding +kiddish +kiddo/SM +kidnap/S +kidnapped +kidnapper/MS +kidnapping/MS +kidney/SM +kidskin/M +kielbasa/MS +kielbasi +kike/S +kill/JMDRSZG +killdeer/SM +killer/M +killing/M +killjoy/SM +kiln/MDSG +kilo/MS +kilobyte/SM +kilocoulomb/S +kilocycle/SM +kilogram/SM +kilohertz/M +kilojoule/S +kilolitre/MS +kilometre/MS +kilonewton/S +kilopascal/S +kiloton/SM +kilovolt/S +kilowatt/SM +kilt/MDRS +kilter/M +kimono/MS +kin/M +kinase +kind's +kind/UPRYT +kinda +kindergarten/MRZS +kindergartener/M +kindhearted/PY +kindheartedness/M +kindle/AGDS +kindliness/M +kindling/M +kindly/URT +kindness/UM +kindnesses +kindred/M +kinds +kine/S +kinematic/S +kinematics/M +kinetic/S +kinetically +kinetics/M +kinfolk/SM +kinfolks/M +king/MYS +kingdom/SM +kingfisher/SM +kingly/RT +kingmaker/S +kingpin/SM +kingship/M +kink/MDSG +kinkily +kinkiness/M +kinky/TPR +kinsfolk/M +kinship/M +kinsman/M +kinsmen +kinswoman/M +kinswomen +kiosk/SM +kip/SM +kipped +kipper/MDGS +kipping +kirsch/MS +kismet/M +kiss/MDRSBZG +kisser/M +kissoff/SM +kissogram/S +kit/SGMD +kitchen/SM +kitchenette/MS +kitchenware/M +kite/MS +kith/M +kitsch/M +kitschy +kitted +kitten/MS +kittenish +kitting +kitty/SM +kiwi/MS +kiwifruit/MS +kl +klaxon/S +kleptocracy +kleptomania/M +kleptomaniac/SM +kludge/GDS +kluge/DS +klutz/MS +klutziness/M +klutzy/TRP +km +kn +knack/SZMR +knacker/GD +knapsack/MS +knave/SM +knavery/M +knavish/Y +knead/SZGDR +kneader/M +knee/MDS +kneecap/SM +kneecapped +kneecapping +kneeing +kneel/SG +knell/SGMD +knelt +knew +knicker/S +knickerbockers/M +knickers/M +knickknack/MS +knife/DSMG +knight/MDYSG +knighthood/MS +knightliness/M +knish/MS +knit/MS +knitted +knitter/SM +knitting/M +knitwear/M +knives +knob/MS +knobbly +knobby/TR +knock/SZGMDR +knockabout +knockdown/SM +knocker/M +knockoff/SM +knockout/SM +knockwurst/SM +knoll/SM +knot/MS +knothole/SM +knotted +knotting +knotty/TR +know/SB +knowing/UYS +knowledge/M +knowledgeable +knowledgeably +known +knuckle/DSMG +knuckleduster/S +knucklehead/MS +knurl/SGMD +koala/SM +koan/S +kohl +kohlrabi/M +kohlrabies +kola/MS +kook/MS +kookaburra/SM +kookiness/M +kooky/TPR +kopeck/MS +korma +kosher/DSG +kowtow/GMDS +kph +kraal/SM +kraut/SM! +krill/M +krona/M +krone/RM +kronor +kronur +krypton/M +kt +kuchen/SM +kudos/M +kudzu/SM +kumquat/MS +kvetch/ZGMDRS +kvetcher/M +kw +l/SDXTGJ +la/M +lab/SM +label's +label/AS +labelled/UA +labelling/A +labia +labial/SM +labile +labium/M +laboratory/SM +laborious/PY +laboriousness/M +labour/ZGSMDR +labourer/M +laboursaving +laburnum/MS +labyrinth/M +labyrinthine +labyrinths +lac/M +lace's +lace/UGDS +lacerate/DSGNX +laceration/M +lacewing/SM +lacework/M +lachrymal +lachrymose +lack/MDSG +lackadaisical/Y +lackey/SM +lacklustre +laconic +laconically +lacquer/GMDS +lacrosse/M +lactate/GNDS +lactation/M +lacteal +lactic +lactose/M +lacuna/M +lacunae +lacy/RT +lad/SGMDNJ +ladder/GSMD +laddie/SM +laddish/P +lade/S +laden/U +lading/M +ladle/DSMG +lady/SM +ladybird/SM +ladybug/MS +ladyfinger/MS +ladylike/U +ladylove/MS +ladyship/MS +laetrile/M +lag/SZMR +lager/M +laggard/MYS +lagged +lagging/M +lagniappe/SM +lagoon/SM +laid/IA +lain +lair/MS +laird/SM +laity/M +lake/MS +lakefront/S +lakeside +lam/SM +lama/MS +lamasery/SM +lamb/MDSG +lambada/MS +lambaste/GDS +lambda/SM +lambency/M +lambent/Y +lambkin/SM +lambskin/SM +lambswool +lame/MYZTGDRSP +lamebrain/MDS +lameness/M +lament/BSMDG +lamentably +lamentation/MS +lamina/M +laminae +laminar +laminate/MGNDS +lamination/M +lammed +lamming +lamp/MS +lampblack/M +lamplight/MRZ +lamplighter/M +lampoon/SGMD +lamppost/SM +lamprey/MS +lampshade/SM +lanai/SM +lance/DRSMZG +lancer/M +lancet/SM +land/MDRSGJ +landau/SM +landfall/MS +landfill/MS +landholder/SM +landholding/MS +landing/M +landlady/SM +landless/M +landline/MS +landlocked +landlord/MS +landlubber/MS +landmark/MS +landmass/MS +landmine/S +landowner/MS +landownership +landowning/SM +landscape/MZGDRS +landscaper/M +landslid +landslide/MGS +landslip/S +landsman/M +landsmen +landward/S +lane/MS +language/MS +languid/PY +languidness/M +languish/DSG +languor/SM +languorous/Y +lank/RYTP +lankiness/M +lankness/M +lanky/RTP +lanolin/M +lantern/MS +lanthanum/M +lanyard/MS +lap/SM +laparoscopic +laparoscopy +laparotomy +lapboard/SM +lapdog/SM +lapel/SM +lapidary/SM +lapin/SM +lapped +lappet/SM +lapping +lapse/AKGMSD +laptop/SM +lapwing/MS +larboard/SM +larcenist/SM +larcenous +larceny/SM +larch/MS +lard/MDRSZG +larder/M +lardy/RT +large/RSPMYT +largehearted +largeness/M +largess/M +largish +largo/SM +lariat/SM +lark/MDSG +larkspur/SM +larva/M +larvae +larval +laryngeal +larynges +laryngitis/M +larynx/M +lasagne/MS +lascivious/YP +lasciviousness/M +lase/ZGDRS +laser/M +lash/MDSGJ +lashing/M +lass/MS +lassie/SM +lassitude/M +lasso/SMDG +last/MDYSG +lasting/Y +lat/S +latch's +latch/UDSG +latchkey/SM +late/YTRP +latecomer/MS +latency/M +lateness/M +latent +lateral/MDYSG +latest/M +latex/M +lath/MDRSZG +lathe/M +lather/GMD +lathery +laths +latices +latish +latitude/MS +latitudinal +latitudinarian/MS +latrine/MS +latte/RSM +latter/MY +lattice/MDS +latticework/SM +laud/MDSGB +laudably +laudanum/M +laudatory +laugh/BMDG +laughably +laughing/MY +laughingstock/SM +laughs +laughter/M +launch/AGMDS +launcher/SM +launchpad/SM +launder/DRZGS +launderer/M +launderette/SM +laundress/MS +laundromat/MS +laundry/SM +laundryman/M +laundrymen +laundrywoman/M +laundrywomen +laureate/MS +laureateship/M +laurel/SM +lav/SGD +lava/M +lavage/M +lavaliere/SM +lavatorial +lavatory/SM +lave/S +lavender/SM +lavish/PTGDRSY +lavishness/M +law/SM +lawbreaker/SM +lawbreaking/M +lawful/UPY +lawfulness/UM +lawgiver/MS +lawless/PY +lawlessness/M +lawmaker/MS +lawmaking/M +lawman/M +lawmen +lawn/MS +lawnmower/SM +lawrencium/M +lawsuit/MS +lawyer/SM +lax/TRYP +laxative/MS +laxity/M +laxness/M +lay/AICSGM +layabout/S +layaway/M +layer/CSM +layered +layering/M +layette/MS +layman/M +laymen +layoff/SM +layout/SM +layover/MS +laypeople +layperson/MS +layup/SM +laywoman/M +laywomen +laze/MGDS +lazily +laziness/M +lazy/DRSTGP +lazybones/M +lb/S +lbw +lea/SM +leach/DSG +lead/MDNRSZG +leader/M +leaderless +leadership/SM +leading/M +leaf/MDSG +leafage/M +leafless +leaflet/GMDS +leafstalk/MS +leafy/RT +league/DSMG +leak/MDSG +leakage/MS +leakiness/M +leaky/PRT +lean/MDRSTGJP +leaning/M +leanness/M +leap/MDRSZG +leaper/M +leapfrog/MS +leapfrogged +leapfrogging +leapt +learn/AUGDS +learnability +learnable +learnedly +learner/MS +learning's +learnt/U +lease/ADSMG +leaseback/SM +leasehold/MRSZ +leaseholder/M +leaser/SM +leash's +leash/UDSG +least/M +leastwise +leather/MS +leatherette/M +leatherneck/MS +leathery +leave/DRSMZGJ +leaven/SGMD +leavened/U +leavening/M +leaver/M +leavings/M +lech/MDRSZG +lecher/M +lecherous/PY +lecherousness/M +lechery/M +lecithin/M +lectern/MS +lecture/MZGDRS +lecturer/M +lectureship/SM +ledge/RSMZ +ledger/M +lee/RSMZ +leech/MDSG +leek/MS +leer/MDG +leeriness/M +leery/RPT +leeward/SM +leeway/M +left/MRST +leftism/M +leftist/SM +leftmost +leftover/SM +leftward/S +lefty/SM +leg/SM +legacy/SM +legal/SMY +legalese/M +legalisation/M +legalise/GDS +legalism/MS +legalistic +legalistically +legality/SM +legate/CXMNS +legatee/MS +legation's/AC +legato/SM +legend/SM +legendarily +legendary +legerdemain/M +legged +legginess/M +legging/MS +leggy/RPT +leghorn/MS +legibility/M +legible +legibly +legion/SM +legionary/SM +legionnaire/SM +legislate/DSGNV +legislation/M +legislative/Y +legislator/MS +legislature/SM +legit +legitimacy/M +legitimate/DSYG +legitimatise/GDS +legitimisation/M +legitimise/DSG +legless +legman/M +legmen +legroom/SM +legume/MS +leguminous +legwarmer/S +legwork/M +lei/SM +leisure/DMY +leisureliness/M +leisurewear/M +leitmotif/MS +leitmotiv/MS +lemma/S +lemme/JG +lemming/M +lemon/SM +lemonade/SM +lemongrass +lemony +lemur/SM +lend/RSZG +lender/M +length/MNX +lengthen/GD +lengthily +lengthiness/M +lengths +lengthwise +lengthy/PRT +lenience/M +leniency/M +lenient/Y +lenitive +lens/MS +lent +lentil/MS +lento +leonine +leopard/SM +leopardess/MS +leotard/SM +leper/SM +leprechaun/MS +leprosy/M +leprous +lepta +lepton/MS +lesbian/SM +lesbianism/M +lesion/MS +less/MNRX +lessee/MS +lessen/GD +lesson/MS +lessor/MS +let/ISM +letdown/SM +lethal/Y +lethargic +lethargically +lethargy/M +letter/ZGMDRS +letterbomb/S +letterbox/S +lettered/U +letterer/M +letterhead/MS +lettering/M +letterpress/M +letting/S +lettuce/MS +letup/SM +leucine +leucotomy/S +leukaemia/M +leukemic/SM +leukocyte/MS +levee/SM +level/PSMY +levelheaded/P +levelheadedness/M +levelled +leveller/SM +levelling +levelness/M +lever/SGMD +leverage's +leverage/CDSG +leviathan/MS +levier/M +levitate/DSGN +levitation/M +levity/M +levy/DRSMZG +lewd/RYPT +lewdness/M +lexer/S +lexical +lexicographer/MS +lexicographic +lexicographical +lexicography/M +lexicon/SM +lexis +lg +liabilities +liability/AM +liable/A +liaise/GDS +liaison/MS +liar/MS +lib/M +libation/SM +libber/MS +libel/SM +libelled +libeller/SM +libelling +libellous +liberal/MYPS +liberalisation/MS +liberalise/GDS +liberalism/M +liberality/M +liberalness/M +liberate/CDSGN +liberation/CM +liberator/MS +libertarian/SM +libertine/MS +liberty/SM +libidinal +libidinous +libido/MS +librarian/MS +librarianship +library/SM +librettist/MS +libretto/SM +lice +licence/MS +license/GDS +licensed/U +licensee/MS +licentiate/SM +licentious/YP +licentiousness/M +lichen/MS +licit/Y +lick/MDJSG +licking/M +licorices +lid/SM +lidded +lidless +lido/MS +lie/DSM +lied/MR +lief/RT +liege/SM +lien/MS +lieu/M +lieutenancy/M +lieutenant/MS +life/MZR +lifebelt/S +lifeblood/M +lifeboat/MS +lifebuoy/MS +lifeforms +lifeguard/SM +lifeless/YP +lifelessness/M +lifelike +lifeline/MS +lifelong +lifer/M +lifesaver/SM +lifesaving/M +lifespan/S +lifestyle/SM +lifetime/MS +lifework/MS +lift/MDRSZG +lifter/M +liftoff/SM +ligament/MS +ligate/GNDS +ligation/M +ligature/MGDS +light's/C +light/CASTGD +lighted/U +lighten/SDRZG +lightener/M +lighter/SM +lightface/MD +lightheaded +lighthearted/YP +lightheartedness/M +lighthouse/MS +lighting's +lightly +lightness/M +lightning/MDS +lightproof +lightship/MS +lightweight/SM +ligneous +lignin +lignite/M +lii +like/EMGDST +likeability/M +likeable/P +likeableness/M +likelihood/UM +likelihoods +likeliness/UM +likely/UPRT +liken/SGD +likeness/UM +likenesses +liker +likewise +liking/M +lilac/SM +lilliputian +lilo/S +lilt/MDSG +lily/SM +limb/MS +limber/UDSG +limberness/M +limbless +limbo/SM +lime/MGDS +limeade/SM +limelight/M +limerick/SM +limescale +limestone/M +limey/S +limit's +limit/CSZGDR +limitation/CM +limitations +limited/U +limiter's +limiting/S +limitless/P +limitlessness/M +limn/DSG +limo/MS +limousine/MS +limp/MDRYSPTG +limpet/MS +limpid/YP +limpidity/M +limpidness/M +limpness/M +limy/RT +linage/M +linchpin/SM +linden/MS +line/MZGDRSJ +lineage/MS +lineal/Y +lineament/SM +linear/Y +linearity/M +linebacker/MS +lined/U +linefeed +lineman/M +linemen +linen/SM +linens/M +liner/M +linesman/M +linesmen +lineup/MS +ling/M +linger/ZGJDRS +lingerer/M +lingerie/M +lingering/Y +lingo/M +lingoes +lingual +linguine/M +linguist/SM +linguistic/S +linguistically +linguistics/M +liniment/SM +lining/M +link/MDRSG +linkage/MS +linkman +linkmen +linkup/MS +linnet/MS +lino +linoleum/M +linseed/M +lint's +lint/CDG +lintel/MS +lints +linty/TR +lion/MS +lioness/MS +lionhearted +lionisation/M +lionise/GDS +lip/SM +lipid/SM +liposuction/M +lipped +lippy +lipread/GRS +lipreader/M +lipreading/M +lipstick/MDSG +liq +liquefaction/M +liquefy/DSG +liqueur/SM +liquid/MS +liquidate/XGNDS +liquidation/M +liquidator/MS +liquidise/ZGDRS +liquidiser/M +liquidity/M +liquor/MDGS +liquorice/M +lira/M +lire +lisle/M +lisp/MDRSZG +lisper/M +lissom +list/MDNSJXG +listed/U +listen/BMDRZG +listener/M +listeria +listing/M +listless/YP +listlessness/M +lit/U +litany/SM +litchi/MS +lite +literacy/M +literal/SMYP +literalness/M +literariness/M +literary/P +literate/SMY +literati/M +literature/M +lithe/RPYT +litheness/M +lithesome +lithium/M +lithograph/MDRZG +lithographer/M +lithographic +lithographically +lithographs +lithography/M +lithosphere/SM +litigant/SM +litigate/DSGN +litigation/M +litigator/MS +litigious/P +litigiousness/M +litmus/M +litotes/M +litre/SM +litter/MDRSZG +litterateur/MS +litterbug/MS +litterer/M +little/MTRP +littleness/M +littoral/SM +liturgical/Y +liturgist/SM +liturgy/SM +livability/M +live/YZTGDRSJ +liveable +livelihood/SM +liveliness/M +livelong/S +lively/PRT +liven/SGD +liver's +liveried +liverish +liverwort/MS +liverwurst/M +livery/CSM +liveryman/CM +liverymen/C +livestock/M +liveware +livid/Y +living/M +lix/K +lizard/MS +ll +llama/SM +llano/SM +lo +load's +load/AUGSD +loadable +loader/MS +loading's +loaf/MDRSZG +loafer/M +loam/M +loamy/TR +loan/MDRSZG +loaner/M +loansharking/M +loanword/MS +loath/JZGDRS +loathe +loather/M +loathing/M +loathsome/PY +loathsomeness/M +loaves +lob/SMD +lobar +lobbed +lobber/MS +lobbing +lobby/GDSM +lobbyist/MS +lobe/MS +lobotomise/DSG +lobotomy/SM +lobster/MS +local/SMY +locale/MS +localisation/M +localise/DSG +locality/SM +locate/EAGNDS +location's/A +location/ESM +locator/MS +locavore/SM +loci +lock/MDRSBZG +locker/M +locket/MS +lockjaw/M +lockout/MS +locksmith/M +locksmiths +lockstep/M +lockup/MS +loco/S +locomotion/M +locomotive/MS +locoweed/SM +locum/S +locus/M +locust/SM +locution/MS +lode/MS +lodestar/MS +lodestone/MS +lodge/DRSJMZG +lodger/M +lodging/M +lodgings/M +loft/MDSG +loftily +loftiness/M +lofty/PRT +log/SM +loganberry/SM +logarithm/SM +logarithmic +logbook/SM +loge/MS +logged +logger/SM +loggerhead/SM +loggia/SM +logging/M +logic/M +logical/Y +logicality/M +logician/MS +login/SM +logistic/S +logistical/Y +logistics/M +logjam/SM +logo/MS +logoff/SM +logon/SM +logotype/SM +logout/SM +logrolling/M +logy/RT +loin/MS +loincloth/M +loincloths +loiter/ZGSDR +loiterer/M +loitering/M +lolcat/SM +loll/DSG +lollipop/SM +lollop/GSD +lolly/S +lollygag/S +lollygagged +lollygagging +lone/YZR +loneliness/M +lonely/PTR +loner/M +lonesome/YP +lonesomeness/M +long's +long/KDSTG +longboat/MS +longbow/MS +longer +longevity/M +longhair/MS +longhand/M +longhorn/MS +longhouse/S +longing/MYS +longish +longitude/MS +longitudinal/Y +longshoreman/M +longshoremen +longsighted +longstanding +longtime +longueur/SM +longways +loo +loofah/M +loofahs +look/MDRSZG +lookalike/MS +looker/M +lookout/MS +lookup +loom/MDSG +loon/MS +loonie/M +loony/RSMT +loop/MDSG +loophole/MS +loopy/RT +loos/NRX +loose/UDSTG +loosely +loosen/UGSD +looseness/M +loot/MDRSZG +looter/M +looting/M +lop/S +lope/MGDS +lopped +lopping +lopsided/YP +lopsidedness/M +loquacious/PY +loquaciousness/M +loquacity/M +lord/MDYSG +lordliness/M +lordly/TPR +lordship/SM +lore/M +lorgnette/SM +loris/MS +lorn +lorry/SM +lose/ZGRSJ +loser/M +losing/M +loss/MS +lossless +lost +lot/SM +lotion/SM +lottery/SM +lotto/M +lotus/MS +louche +loud/RYTP +loudhailer/SM +loudmouth/MD +loudmouths +loudness/M +loudspeaker/MS +lough +loughs +lounge/MZGDRS +lounger/M +lour/DSG +louse's +louse/CDSG +lousily +lousiness/M +lousy/TPR +lout/MS +loutish/PY +louvre/MDS +lovableness/M +lovably +love/MYZGDRSB +lovebird/SM +lovechild/M +loved/U +loveless +loveliness/M +lovelorn +lovely/RSMTP +lovemaking/M +lover/M +lovesick +lovey/S +loving/Y +low/SZTGMDRYP +lowborn +lowboy/MS +lowbrow/SM +lowdown/M +lower/GD +lowercase/M +lowermost +lowish +lowland/SZMR +lowlander/M +lowlife/SM +lowliness/M +lowly/TPR +lowness/M +lox/M +loyal/ETY +loyaler +loyalism/M +loyalist/SM +loyalties +loyalty/EM +lozenge/SM +ltd +luau/MS +lubber/MYS +lube/MGDS +lubricant/SM +lubricate/DSGN +lubrication/M +lubricator/MS +lubricious/Y +lubricity/M +lucid/PY +lucidity/M +lucidness/M +luck/MDSG +luckily/U +luckiness/UM +luckless +lucky/UPTR +lucrative/YP +lucrativeness/M +lucre/M +lucubrate/GNDS +lucubration/M +ludicrous/YP +ludicrousness/M +ludo +luff/DSG +lug/SM +luge/S +luggage/M +lugged +lugger/MS +lugging +lughole/S +lugsail/SM +lugubrious/YP +lugubriousness/M +lukewarm/YP +lukewarmness/M +lull/MDSG +lullaby/SM +lulu/S +lumbago/M +lumbar +lumber/MDRZGS +lumberer/M +lumbering/M +lumberjack/SM +lumberman/M +lumbermen +lumberyard/SM +lumen +luminary/SM +luminescence/M +luminescent +luminosity/M +luminous/Y +lummox/MS +lump/MDNSG +lumpectomy/S +lumpenproletariat +lumpiness/M +lumpish +lumpy/TRP +lunacy/SM +lunar +lunatic/SM +lunch/GMDS +lunchbox/S +luncheon/SM +luncheonette/SM +lunchroom/MS +lunchtime/MS +lung/MDSG +lunge/SM +lungfish/MS +lungful/S +lunkhead/MS +lupin/SM +lupine +lupus/M +lurch/GMDS +lure/MGDS +lurgy +lurid/PY +luridness/M +lurk/DRSZG +luscious/PY +lusciousness/M +lush/MRSYPT +lushness/M +lust/MDSG +lustful/Y +lustily +lustiness/M +lustre/M +lustreless +lustrous/Y +lusty/PTR +lutanist/SM +lute/MS +lutenist/SM +lutetium/M +lux +luxuriance/M +luxuriant/Y +luxuriate/DSGN +luxuriation/M +luxurious/PY +luxuriousness/M +luxury/SM +lvi +lvii +lxi +lxii +lxiv +lxix +lxvi +lxvii +lyceum/MS +lychgate/S +lye/MG +lying/M +lymph/M +lymphatic/SM +lymphocyte/SM +lymphoid +lymphoma/SM +lynch/JZGDRS +lyncher/M +lynching/M +lynx/MS +lyre/MS +lyrebird/MS +lyric/SM +lyrical/Y +lyricism/M +lyricist/SM +lysosomal +lysosomes +m/KAS +ma'am +ma/SM +mac/SGMD +macabre +macadam/M +macadamia/SM +macadamise/GDS +macaque/MS +macaroni/MS +macaroon/MS +macaw/SM +mace/MS +macerate/DSGN +maceration/M +mach/M +machete/SM +machinate/GNDSX +machination/M +machine/DSMGB +machinery/M +machinist/MS +machismo/M +macho/M +mackerel/SM +mackinaw/SM +mackintosh/MS +macrame/M +macro/SM +macrobiotic/S +macrobiotics/M +macrocosm/SM +macroeconomic/S +macroeconomics/M +macrology/S +macron/MS +macrophages +macroscopic +mad/SMYP +madam/SM +madame/M +madcap/MS +madden/DGS +maddening/Y +madder/MS +maddest +madding +made/AU +mademoiselle/MS +madhouse/SM +madman/M +madmen +madness/M +madras/MS +madrasa/SM +madrasah/M +madrasahs +madrassa/SM +madrigal/SM +madwoman/M +madwomen +maelstrom/SM +maestro/SM +mafia/SM +mafiosi +mafioso/M +mag/SM +magazine/SM +mage/MS +magenta/M +maggot/MS +maggoty +magi/M +magic/SM +magical/Y +magician/SM +magicked +magicking +magisterial/Y +magistracy/M +magistrate/SM +magma/M +magnanimity/M +magnanimous/Y +magnate/SM +magnesia/M +magnesium/M +magnet/MS +magnetic +magnetically +magnetisable +magnetisation/CM +magnetise/CGDS +magnetism/M +magnetite/M +magneto/SM +magnetometer/SM +magnetosphere +magnification/M +magnificence/M +magnificent/Y +magnifier/M +magnify/ZGXDRSN +magniloquence/M +magniloquent +magnitude/SM +magnolia/MS +magnon +magnum/MS +magpie/MS +magus/M +maharajah/M +maharajahs +maharani/SM +maharishi/SM +mahatma/SM +mahogany/SM +mahout/MS +maid/MNSX +maiden/MY +maidenhair/M +maidenhead/SM +maidenhood/M +maidservant/SM +mail/JMDRSZG +mailbag/SM +mailbomb/GSD +mailbox/MS +mailer/M +mailing/M +maillot/SM +mailman/M +mailmen +mailshot/S +maim/DSG +main/MYS +mainframe/SM +mainland/MS +mainline/MGDS +mainmast/MS +mainsail/MS +mainspring/MS +mainstay/MS +mainstream/SMDG +maintain/ZGBDRS +maintainability +maintainable/U +maintained/U +maintenance/M +maintop/SM +maisonette/MS +maize/SM +majestic +majestically +majesty/SM +majolica/M +major/SGMDY +majordomo/MS +majorette/MS +majoritarian/SM +majoritarianism +majority/SM +make's/A +make/UAGS +makeover/MS +maker/SM +makeshift/SM +makeup/MS +makeweight/S +making/MS +makings/M +malachite/M +maladjusted +maladjustment/M +maladministration +maladroit/PY +maladroitness/M +malady/SM +malaise/M +malamute/MS +malapropism/SM +malaria/M +malarial +malarkey/M +malathion/M +malcontent/MS +male/MPS +malediction/SM +malefaction/M +malefactor/SM +malefic +maleficence/M +maleficent +maleness/M +malevolence/M +malevolent/Y +malfeasance/M +malformation/SM +malformed +malfunction/MDSG +malice/M +malicious/PY +maliciousness/M +malign/DSG +malignancy/SM +malignant/Y +malignity/M +malinger/ZGSDR +malingerer/M +mall/MS +mallard/SM +malleability/M +malleable +mallet/MS +mallow/MS +malnourished +malnutrition/M +malocclusion/M +malodorous +malpractice/SM +malt/MDSG +malted/MS +maltose/M +maltreat/GLDS +maltreatment/M +malty/TR +malware/M +mam/S +mama/MS +mamba/SM +mambo/SGMD +mamma/M +mammal/MS +mammalian/MS +mammary +mammogram/MS +mammography/M +mammon/M +mammoth/M +mammoths +mammy/SM +man's/F +man/USY +manacle/DSMG +manage/ZGDRSL +manageability/M +manageable/U +management/MS +manager/M +manageress/S +managerial +manana/MS +manatee/SM +mandala/SM +mandamus/MS +mandarin/MS +mandate/DSMG +mandatory +mandible/MS +mandibular +mandolin/MS +mandrake/MS +mandrel/SM +mandrill/MS +mane/MDS +manege/M +manful/Y +manga/M +manganese/M +mange/DRMZ +manger/M +mangetout/S +manginess/M +mangle/MZGDRS +mango/M +mangoes +mangrove/MS +mangy/TRP +manhandle/GDS +manhole/SM +manhood/M +manhunt/SM +mania/SM +maniac/MS +maniacal/Y +manic/SM +manically +manicure/MGDS +manicurist/MS +manifest/MDYSG +manifestation/SM +manifesto/SM +manifold/GMDS +manikin/SM +manilla/M +manioc/MS +manipulable +manipulate/XGNVDS +manipulation/M +manipulative/Y +manipulator/MS +mankind/M +manky +manlike +manliness/M +manly/UTR +manna/M +manned/U +mannequin/SM +manner/MDYS +mannerism/SM +mannerly/U +manning/U +mannish/YP +mannishness/M +manoeuvrability/M +manoeuvre/DSMGBJ +manometer/SM +manor/SM +manorial +manpower/M +manque +mansard/MS +manse/SXMN +manservant/M +mansion/M +manslaughter/M +manta/SM +mantel/MS +mantelpiece/SM +mantelshelf +mantelshelves +mantilla/SM +mantis/MS +mantissa/SM +mantle's +mantle/EGDS +mantoes +mantra/MS +manual/MYS +manufacture/DRSMZG +manufacturer/M +manufacturing/M +manumission/SM +manumit/S +manumitted +manumitting +manure/MGDS +manuscript/MS +many/M +map's +map/AS +maple/SM +mapmaker/SM +mapped/A +mapper/MS +mapping/S +mar/S +marabou/MS +marabout/SM +maraca/MS +maraschino/MS +marathon/SMRZ +marathoner/M +maraud/ZGDRS +marauder/M +marble/MGDS +marbleise/GDS +marbling/M +march/ZGMDRS +marcher/M +marchioness/MS +mare/MS +margarine/M +margarita/MS +marge +margin/MS +marginal/YS +marginalia/M +marginalisation +marginalise/GDS +marginalization's +maria/M +mariachi/MS +marigold/MS +marijuana/M +marimba/SM +marina/MS +marinade/DSMG +marinara/M +marinate/DSGN +marination/M +marine/MZRS +mariner/M +marionette/MS +marital/Y +maritime +marjoram/M +mark/AMDSG +markdown/SM +marked/U +markedly +marker/MS +market/MDRZGBS +marketability/M +marketable/U +marketeer/SM +marketer/M +marketing/M +marketplace/SM +marking/SM +markka/M +markkaa +marksman/M +marksmanship/M +marksmen +markup/MS +marl/M +marlin/MS +marlinespike/SM +marmalade/M +marmoreal +marmoset/SM +marmot/MS +maroon/MDGS +marque/MS +marquee/SM +marquess/MS +marquetry/M +marquis/MS +marquise/M +marquisette/M +marred/U +marriage/ASM +marriageability/M +marriageable +married/SM +marring +marrow/MS +marry/AGDS +marsh/MS +marshal/SM +marshalled +marshalling +marshland/SM +marshmallow/SM +marshy/RT +marsupial/MS +mart/MNSX +marten/M +martensite +martial/Y +martian/S +martin/MS +martinet/MS +martingale/MS +martini/SM +martyr/MDGS +martyrdom/M +marvel/MS +marvelled +marvelling +marvellous/Y +marzipan/M +masc +mascara/GMDS +mascot/MS +masculine/SM +masculinity/M +maser/SM +mash/MDRSZG +masher/M +mashup/MS +mask's +mask/UDSG +masker/MS +masochism/M +masochist/SM +masochistic +masochistically +mason/SM +masonic +masonry/M +masque/MS +masquerade/DRSMZG +masquerader/M +mass/MDSGV +massacre/MGDS +massage/DSMG +masseur/SM +masseuse/MS +massif/MS +massive/PY +massiveness/M +mast/MDS +mastectomy/SM +master's +master/ADGS +masterclass/S +masterful/Y +masterly +mastermind/SGMD +masterpiece/MS +masterstroke/SM +masterwork/MS +mastery/M +masthead/MS +mastic/M +masticate/GNDS +mastication/M +mastiff/SM +mastitis +mastodon/SM +mastoid/SM +masturbate/GNDS +masturbation/M +masturbatory +mat/SGMDR +matador/SM +match/AMS +matchbook/SM +matchbox/MS +matched/U +matching +matchless +matchlock/SM +matchmaker/MS +matchmaking/M +matchstick/MS +matchwood/M +mate/MS +material/SMY +materialisation/M +materialise/DSG +materialism/M +materialist/SM +materialistic +materialistically +materiel/M +maternal/Y +maternity/M +matey/S +mathematical/Y +mathematician/SM +mathematics/M +maths +matinee/SM +mating/M +matins/M +matres +matriarch/M +matriarchal +matriarchs +matriarchy/SM +matrices +matricidal +matricide/MS +matriculate/DSGN +matriculation/M +matrimonial +matrimony/M +matrix/M +matron/MYS +matt/S +matte/DRSMZG +matter/MDG +matting/M +mattock/SM +mattress/MS +maturate/GNDS +maturation/M +mature/YTGDRS +maturity/SM +matzo/SMH +matzoh/M +matzohs +matzot +maudlin +maul/MDRSZG +mauler/M +maunder/SDG +mausoleum/SM +mauve/M +maven/SM +maverick/SM +maw/SM +mawkish/PY +mawkishness/M +max/GMDS +maxi/MS +maxilla/M +maxillae +maxillary +maxim/SM +maxima +maximal/Y +maximisation/M +maximise/GDS +maximum/SM +may/M +maybe/SM +mayday/MS +mayflower/MS +mayfly/SM +mayhem/M +mayn't +mayo/M +mayonnaise/M +mayor/SM +mayoral +mayoralty/M +mayoress/MS +maypole/SM +mayst +maze/MS +mazurka/MS +mdse +me/DSH +mead/M +meadow/MS +meadowlark/MS +meagre/YP +meagreness/M +meal/MS +mealiness/M +mealtime/SM +mealy/TPR +mealybug/SM +mealymouthed +mean/MRYJPSTG +meander/SMDJG +meanderings/M +meanie/M +meaning/M +meaningful/PY +meaningfulness/M +meaningless/YP +meaninglessness/M +meanness/M +meant/U +meantime/M +meanwhile/M +meany/SM +meas +measles/M +measly/RT +measurable +measurably +measure's +measure/ADSG +measured/U +measureless +measurement/MS +meat/MS +meatball/MS +meathead/MS +meatiness/M +meatless +meatloaf/M +meatloaves +meatpacking/M +meaty/TPR +mecca/SM +mechanic/MS +mechanical/Y +mechanics/M +mechanisation/M +mechanise/DSG +mechanism/SM +mechanistic +mechanistically +medal/SM +medallion/SM +medallist/SM +meddle/ZGDRS +meddler/M +meddlesome +media/SM +medial/AY +median/MS +mediate/ADSGN +mediated/U +mediation/AM +mediator/MS +medic/SM +medicaid/M +medical/SMY +medicament/M +medicare/M +medicate/GNXDS +medication/M +medicinal/Y +medicine/MS +medico/MS +medieval +medievalist/MS +mediocre +mediocrity/SM +meditate/DSGNVX +meditation/M +meditative/Y +medium/MS +medley/MS +medulla/SM +medusa +medusae +meed/M +meek/RYPT +meekness/M +meerschaum/SM +meet/MJSG +meeting/M +meetinghouse/SM +meetup/MS +meg/S +mega +megabit/SM +megabucks/M +megabyte/MS +megachurch/MS +megacycle/SM +megadeath/M +megadeaths +megagram/S +megahertz/M +megajoule/S +megalith/M +megalithic +megaliths +megalomania/M +megalomaniac/SM +megalopolis/MS +megametre/S +megapascal/S +megaphone/DSMG +megapixel/SM +megastar/S +megaton/SM +megawatt/MS +meh +meiosis/M +meiotic +melamine/M +melancholia/M +melancholic/S +melancholy/M +melange/MS +melanin/M +melanoma/SM +meld/MDSG +melee/SM +meliorate/GNVDS +melioration/M +mellifluous/PY +mellifluousness/M +mellow/PTGDRYS +mellowness/M +melodic +melodically +melodious/YP +melodiousness/M +melodrama/MS +melodramatic/S +melodramatically +melodramatics/M +melody/SM +melon/SM +melt's +melt/ADSG +meltdown/SM +member's +member/EAS +membership/SM +membrane/SM +membranous +meme/MS +memento/MS +memo/MS +memoir/MS +memorabilia/M +memorability/M +memorable/U +memorably +memorandum/MS +memorial/SM +memorialise/DSG +memorisation/M +memorise/DSG +memory/SM +memsahib/S +men/M +menace/MGDS +menacing/Y +menage/MS +menagerie/MS +mend/MDRSZG +mendacious/Y +mendacity/M +mendelevium/M +mender/M +mendicancy/M +mendicant/SM +mending/M +menfolk/MS +menfolks/M +menhaden/M +menial/MYS +meningeal +meninges +meningitis/M +meninx/M +menisci +meniscus/M +menopausal +menopause/M +menorah/M +menorahs +mensch/MS +menservants +menses/M +menstrual +menstruate/GNDS +menstruation/M +mensurable +mensuration/M +menswear/M +mental/Y +mentalist/SM +mentality/SM +menthol/M +mentholated +mention/GSMD +mentioned/U +mentor/MDSG +mentorship +menu/MS +mercantile +mercantilism/M +mercenary/SM +mercer/MS +mercerise/GDS +merchandise/MZGDRS +merchandiser/M +merchandising/M +merchant/MBS +merchantman/M +merchantmen +merciful/UY +merciless/PY +mercilessness/M +mercurial/Y +mercuric +mercury/M +mercy/SM +mere/MYTS +meretricious/YP +meretriciousness/M +merganser/MS +merge/DRSZG +merger/M +meridian/MS +meringue/MS +merino/MS +merit/CSM +merited/U +meriting +meritless +meritocracy/SM +meritocratic +meritorious/PY +meritoriousness/M +mermaid/SM +merman/M +mermen +merrily +merriment/M +merriness/M +merry/TRP +merrymaker/MS +merrymaking/M +mesa/MS +mescal/MS +mescalin +mescaline/M +mesdames +mesdemoiselles +mesh/MDSG +mesmeric +mesmerise/ZGDRS +mesmeriser/M +mesmerism/M +mesomorph/M +mesomorphs +meson/SM +mesosphere/SM +mesquite/SM +mess/MDSG +message/MGDS +messeigneurs +messenger/SM +messiah/M +messiahs +messianic +messieurs +messily +messiness/M +messmate/SM +messy/PTR +mestizo/MS +met +meta +metabolic +metabolically +metabolise/DSG +metabolism/SM +metabolite/SM +metacarpal/SM +metacarpi +metacarpus/M +metadata +metal/SM +metalanguage/MS +metalled +metallic +metallurgic +metallurgical +metallurgist/MS +metallurgy/M +metalwork/MRZG +metalworker/M +metalworking/M +metamorphic +metamorphism/M +metamorphose/GDS +metamorphosis/M +metaphor/MS +metaphoric +metaphorical/Y +metaphysical/Y +metaphysics/M +metastases +metastasis/MDSG +metastasise +metastatic +metatarsal/MS +metatarsi +metatarsus/M +metatheses +metathesis/M +mete/MZGDRS +metempsychoses +metempsychosis/M +meteor/MS +meteoric +meteorically +meteorite/SM +meteoroid/SM +meteorologic +meteorological +meteorologist/SM +meteorology/M +meter/GMD +metformin +methadone/M +methamphetamine/M +methane/M +methanol/M +methinks +method/MS +methodical/YP +methodicalness/M +methodological/Y +methodology/SM +methotrexate +methought +meths +methyl/M +meticulous/YP +meticulousness/M +metier/MS +metre/SM +metric/S +metrical/Y +metricate/GNDS +metrication/M +metricise/GDS +metro/SM +metronome/MS +metropolis/MS +metropolitan +mettle/M +mettlesome +mew/SGMD +mewl/DSG +mews/M +mezzanine/MS +mezzo/SM +mfg +mfr/S +mg +mgr +mi/MNX +miaow/SGMD +miasma/MS +mic/S +mica/M +mice +mick/S +mickey/MS +micro/SM +microaggression/SM +microbe/MS +microbial +microbiological +microbiologist/MS +microbiology/M +microbrewery/SM +microchip/MS +microcircuit/SM +microcode +microcomputer/MS +microcosm/MS +microcosmic +microdot/SM +microeconomics/M +microelectronic/S +microelectronics/M +microfiber/MS +microfiche/M +microfilm/GMDS +microfinance +microfloppies +microgroove/SM +microlight/MS +microloan/MS +micromanage/ZGDRSL +micromanagement/M +micromanager/M +micrometeorite/SM +micrometer/MS +micrometre/MS +micron/MS +microorganism/MS +microphone/SM +microplastics +microprocessor/MS +microscope/SM +microscopic +microscopical/Y +microscopy/M +microsecond/MS +microsurgery/M +microwave/DSMGB +microwaveable +mid +midair/M +midday/M +midden/MS +middle/MGS +middlebrow/SM +middleman/M +middlemen +middlemost +middleweight/MS +middy/SM +midfield/RZ +midge/SM +midget/MS +midi/MS +midland/MS +midlife/M +midmost +midnight/M +midpoint/MS +midrib/MS +midriff/MS +midsection/MS +midshipman/M +midshipmen +midships +midsize +midst/M +midstream/M +midsummer/M +midterm/MS +midtown/M +midway/MS +midweek/MS +midwife/MGDS +midwifery/SM +midwinter/M +midwives +midyear/MS +mien/M +miff/DSG +might've +might/M +mightily +mightiness/M +mightn't +mighty/TRP +mignonette/SM +migraine/MS +migrant/MS +migrate/AGDS +migration/SM +migratory +mikado/MS +mike/MGDS +mil/SZMR +milady/SM +milch +mild/MRYTP +mildew/SMDG +mildness/M +mile/MS +mileage/SM +milepost/MS +miler/M +milestone/MS +milf/MS +milieu/SM +militancy/M +militant/MYS +militarily +militarisation/CM +militarise/CDSG +militarism/M +militarist/SM +militaristic +military/M +militate/GDS +militia/SM +militiaman/M +militiamen +milk/MDRSZG +milker/M +milkiness/M +milkmaid/MS +milkman/M +milkmen +milkshake/SM +milksop/MS +milkweed/SM +milky/RTP +mill/MDRSZGJ +millage/M +millennia +millennial/M +millennium/MS +miller/M +millet/M +milliard/MS +millibar/MS +milligram/MS +millilitre/MS +millimetre/MS +milliner/MS +millinery/M +milling/M +million/HSM +millionaire/SM +millionairess/S +millionth/M +millionths +millipede/SM +millisecond/SM +millpond/SM +millrace/SM +millstone/SM +millstream/MS +millwright/SM +milometer/S +milquetoast/SM +milt/MDSG +mime/MGDS +mimeograph/GMD +mimeographs +mimetic +mimic/SM +mimicked +mimicker/SM +mimicking +mimicry/SM +mimosa/SM +min +minaret/MS +minatory +mince/DRSMZG +mincemeat/M +mincer/M +mind's +mind/ADRSZG +mindbogglingly +minded/P +mindful/YP +mindfulness/M +mindless/YP +mindlessness/M +mindset/MS +mine/MZGNDRSX +minefield/SM +miner/M +mineral/MS +mineralogical +mineralogist/MS +mineralogy/M +minestrone/M +minesweeper/SM +mingle/DSG +mingy +mini/MS +miniature/MS +miniaturisation/M +miniaturise/GDS +miniaturist/MS +minibar/S +minibike/SM +minibus/MS +minicab/S +minicam/MS +minicomputer/SM +minifloppies +minim/SM +minima +minimal/Y +minimalism/M +minimalist/MS +minimisation/M +minimise/DSG +minimum/MS +mining/M +minion/M +miniseries/M +miniskirt/MS +minister/SGMD +ministerial +ministrant/MS +ministration/MS +ministry/SM +minivan/MS +mink/MS +minnesinger/MS +minnow/SM +minor/SMDG +minority/SM +minoxidil/M +minster/MS +minstrel/SM +minstrelsy/M +mint/MDRSZG +mintage/M +minter/M +minty/RT +minuend/MS +minuet/SM +minus/MS +minuscule/MS +minute/PDRSMYTG +minuteman/M +minutemen +minuteness/M +minutia/M +minutiae +minx/MS +miracle/MS +miraculous/Y +mirage/SM +mire/MGDS +mirror/GSMD +mirth/M +mirthful/PY +mirthfulness/M +mirthless/Y +miry/RT +misaddress/DSG +misadventure/MS +misaligned +misalignment/M +misalliance/MS +misanthrope/SM +misanthropic +misanthropically +misanthropist/MS +misanthropy/M +misapplication/M +misapply/DSGNX +misapprehend/GSD +misapprehension/MS +misappropriate/XDSGN +misappropriation/M +misbegotten +misbehave/GDS +misbehaviour/M +misc +miscalculate/DSXGN +miscalculation/M +miscall/DSG +miscarriage/MS +miscarry/GDS +miscast/SG +miscegenation/M +miscellaneous/Y +miscellany/SM +mischance/SM +mischief/M +mischievous/YP +mischievousness/M +miscibility/M +miscible +misclassified +miscommunication/S +misconceive/GDS +misconception/SM +misconduct/MDGS +misconstruction/MS +misconstrue/GDS +miscount/MDSG +miscreant/SM +miscue/DSMG +misdeal/GMS +misdealt +misdeed/MS +misdemeanour/MS +misdiagnose/GDS +misdiagnosis/M +misdid +misdirect/SDG +misdirection/M +misdo/JG +misdoes +misdoing/M +misdone +miser/SBMY +miserableness/M +miserably +miserliness/M +misery/SM +misfeasance/M +misfeature/S +misfile/GDS +misfire/MGDS +misfit/SM +misfitted +misfitting +misfortune/SM +misgiving/MS +misgovern/SDGL +misgovernment/M +misguidance/M +misguide/DSG +misguided/Y +mishandle/DSG +mishap/SM +mishear/GS +misheard +mishit/S +mishitting +mishmash/MS +misidentify/GDS +misinform/DGS +misinformation/M +misinterpret/SGD +misinterpretation/SM +misjudge/LDSG +misjudgement/SM +mislabel/S +mislabelled +mislabelling +mislaid +mislay/GS +mislead/GS +misleading/Y +misled +mismanage/LGDS +mismanagement/M +mismatch/GMDS +misname/GDS +misnomer/MS +misogamist/MS +misogamy/M +misogynist/SM +misogynistic +misogynous +misogyny/M +misplace/GLDS +misplacement/M +misplay/GMDS +misprint/GMDS +misprision/M +mispronounce/DSG +mispronunciation/SM +misquotation/MS +misquote/MGDS +misread/GJS +misreading/M +misremember/GDS +misreport/MDGS +misrepresent/GDS +misrepresentation/MS +misrule/MGDS +miss's +miss/EDSGV +missal/ESM +missed/U +misshape/GDS +misshapen +missile/MS +missilery/M +mission/AMS +missionary/SM +missioner/SM +missive/MS +misspeak/GS +misspell/GDJS +misspelling/M +misspend/GS +misspent +misspoke +misspoken +misstate/GDSL +misstatement/SM +misstep/MS +missus/MS +mist's +mist/CDRSZG +mistakable/U +mistake/BMGS +mistaken/Y +mister's +mistily +mistime/GDS +mistiness/M +mistletoe/M +mistook +mistral/MS +mistranslated +mistreat/LDGS +mistreatment/M +mistress/MS +mistrial/MS +mistrust/MDSG +mistrustful/Y +misty/PRT +mistype/GS +misunderstand/SGJ +misunderstanding/M +misunderstood +misuse/DSMG +mite/MS +mitigate/DSGN +mitigated/U +mitigation/M +mitochondria +mitochondrial +mitochondrion +mitoses +mitosis/M +mitotic +mitral +mitre/DSMG +mitt/MNSX +mitten/M +mitzvah +mix/ZGMDRSB +mixed/U +mixer/M +mixture/SM +mizzen/MS +mizzenmast/SM +mkay +mks +ml +mm +mnemonic/MS +mnemonically +mo/CKHS +moan/MDRSZG +moaner/M +moat/MDS +mob's +mob/CS +mobbed/C +mobbing/C +mobile/MS +mobilisation/CM +mobilisations +mobilise/CDSG +mobiliser/MS +mobility/M +mobster/SM +moccasin/SM +mocha/SM +mock/DRSZG +mocker/M +mockery/SM +mocking/Y +mockingbird/SM +mod/STM +modal/SM +modality/S +modded +modding +mode/MS +model's +model/AS +modelled/A +modeller/MS +modelling/MS +modem/SM +moderate/MYGNPDS +moderateness/M +moderation/M +moderator/SM +modern/MYPS +modernisation/M +modernise/DRSZG +moderniser/M +modernism/M +modernist/SM +modernistic +modernity/M +modernness/M +modest/Y +modesty/M +modicum/SM +modifiable +modification/M +modified/U +modifier/M +modify/DRSXZGN +modish/YP +modishness/M +modular +modularisation +modulate/CGNDS +modulation/CM +modulations +modulator/MS +module/MS +modulo +modulus +moggie +mogul/SM +mohair/M +moi +moiety/SM +moil/MDSG +moire/SM +moist/XTPNRY +moisten/DRZG +moistener/M +moistness/M +moisture/M +moisturise/ZGDRS +moisturiser/M +molar/SM +molasses/M +moldboard/SM +moldiness/M +mole/MS +molecular +molecularity/M +molecule/SM +molehill/SM +moleskin/M +molest/DRZGS +molestation/M +molested/U +molester/M +moll/MS +mollification/M +mollify/DSNG +mollusc/SM +molluscan +molly/SM +mollycoddle/DSMG +molten +molter/MS +molybdenum/M +moment/MS +momenta +momentarily +momentariness/M +momentary/P +momentous/PY +momentousness/M +momentum/M +mommy/SM +monad +monarch/M +monarchic +monarchical +monarchism/M +monarchist/MS +monarchistic +monarchs +monarchy/SM +monastery/SM +monastic/MS +monastical/Y +monasticism/M +monaural +monetarily +monetarism/M +monetarist/MS +monetary +monetisation/C +monetise/CGDS +money/SMD +moneybag/MS +moneybox/S +moneylender/SM +moneymaker/SM +moneymaking/M +monger/MDGS +mongol/S +mongolism/M +mongoloid/MS +mongoose/MS +mongrel/SM +monies +moniker/SM +monism/M +monist/MS +monition/SM +monitor/SMDG +monitory +monk/MS +monkey/MDGS +monkeyshine/SM +monkish +monkshood/SM +mono/M +monochromatic +monochrome/MS +monocle/DSM +monoclonal +monocotyledon/SM +monocotyledonous +monocular +monodic +monodist/SM +monody/SM +monogamist/MS +monogamous/Y +monogamy/M +monogram/SM +monogrammed +monogramming +monograph/M +monographs +monolingual/MS +monolith/M +monolithic +monoliths +monologist/SM +monologue/SM +monomania/M +monomaniac/MS +monomaniacal +monomer/SM +mononucleosis/M +monophonic +monoplane/SM +monopolisation/M +monopolise/DRSZG +monopoliser/M +monopolist/SM +monopolistic +monopoly/SM +monorail/MS +monosyllabic +monosyllable/MS +monotheism/M +monotheist/SM +monotheistic +monotone/MS +monotonic +monotonically +monotonous/PY +monotonousness/M +monotony/M +monounsaturated +monoxide/MS +monseigneur/M +monsieur/M +monsignor/SM +monsoon/SM +monsoonal +monster/SM +monstrance/ASM +monstrosity/SM +monstrous/Y +montage/SM +month/MY +monthly/SM +months +monument/MS +monumental/Y +moo/SGMD +mooch/ZGMDRS +moocher/M +mood/MS +moodily +moodiness/M +moody/TPR +moon/MDSG +moonbeam/MS +moonless +moonlight/SMDRZG +moonlighter/M +moonlighting/M +moonlit +moonscape/SM +moonshine/MZRS +moonshiner/M +moonshot/MS +moonstone/MS +moonstruck +moonwalk/MS +moor/MDJSG +moorhen/S +mooring/M +moorland/MS +moose/M +moot/DSG +mop/SZGMDR +mope/MS +moped/SM +moper/M +mopey +mopier +mopiest +mopish +mopped +moppet/MS +mopping +moraine/SM +moral/SMY +morale/M +moralisation/CM +moralise/CGDS +moraliser/MS +moralism +moralist/MS +moralistic +moralistically +moralities +morality/UM +morass/MS +moratorium/SM +moray/SM +morbid/YP +morbidity/M +morbidness/M +mordancy/M +mordant/SMY +more/MS +moreish +morel/SM +moreover +mores/M +morgue/MS +moribund +morn/MJSG +morning/M +morocco/M +moron/SM +moronic +moronically +morose/YP +moroseness/M +morph/GD +morpheme/MS +morphemic +morphia/M +morphine/M +morphing/M +morphological +morphology/M +morphs +morrow/MS +morsel/MS +mortal/MYS +mortality/M +mortar/MDSG +mortarboard/SM +mortgage's +mortgage/AGDS +mortgagee/MS +mortgagor/MS +mortician/MS +mortification/M +mortify/NGDS +mortise/DSMG +mortuary/SM +mosaic/MS +mosey/SGD +mosh/DSG +mosque/MS +mosquito/M +mosquitoes +moss/MS +mossback/SM +mossy/TR +most/MY +mot/SM +mote's +mote/KCXSVN +motel/SM +motet/SM +moth/M +mothball/GMDS +mother/MDYSG +motherboard/SM +motherfucker/MS! +motherfucking/! +motherhood/M +motherland/MS +motherless +motherliness/M +moths +motif/SM +motile/S +motility/M +motion/KCM +motioned +motioning +motionless/YP +motionlessness/M +motivate/CDSG +motivated/U +motivation/SM +motivational +motivator/SM +motive/MS +motiveless +motley/MS +motlier +motliest +motocross/MS +motor/SGMD +motorbike/MGDS +motorboat/MS +motorcade/MS +motorcar/SM +motorcycle/DSMG +motorcyclist/MS +motorisation/M +motorise/DSG +motorist/SM +motorman/M +motormen +motormouth/M +motormouths +motorway/SM +mottle/GDS +motto/M +mottoes +moue/MS +mould/JSZGMDR +moulder/MDG +moulding/M +mouldy/TR +moult/SGMD +mound/SGMD +mount/EASGMD +mountable +mountain/SM +mountaineer/SMDG +mountaineering/M +mountainous +mountainside/SM +mountaintop/SM +mountebank/MS +mounted/U +mounter/MS +mounting/SM +mourn/SZGDR +mourned/U +mourner/M +mournful/YP +mournfulness/M +mourning/M +mouse/DRSMZG +mouser/M +mousetrap/SM +mousetrapped +mousetrapping +mousiness/M +moussaka/S +mousse/MGDS +moustache/DSM +mousy/PTR +mouth/GMD +mouthfeel +mouthful/MS +mouthiness/M +mouthpiece/MS +mouths +mouthwash/MS +mouthwatering +mouthy/PTR +mouton/M +movable/SM +move/AMZGDRSB +moved/U +movement/SM +mover/AM +movie/SM +moviegoer/SM +moving/Y +mow/SZGMDR +mower/M +moxie/M +mozzarella/M +mp +mpg +mph +mt +mtg +mtge +mu/SM +much/M +mucilage/M +mucilaginous +muck/MDSG +muckrake/DRSZG +muckraker/M +mucky/TR +mucous +mucus/M +mud/M +muddily +muddiness/M +muddle/MGDS +muddleheaded +muddy/PTGDRS +mudflap/S +mudflat/MS +mudguard/SM +mudpack/S +mudroom/MS +mudslide/MS +mudslinger/SM +mudslinging/M +muenster/M +muesli +muezzin/MS +muff/MDSG +muffin/MS +muffle/ZGDRS +muffler/M +mufti/SM +mug/SM +mugful/MS +mugged +mugger/MS +mugginess/M +mugging/MS +muggins +muggle/MS +muggy/PTR +mugshot/MS +mugwump/MS +mujaheddin +mukluk/MS +mulatto/M +mulattoes +mulberry/SM +mulch/GMDS +mulct/SGMD +mule/MS +muleskinner/MS +muleteer/MS +mulish/PY +mulishness/M +mull/DSG +mullah/M +mullahs +mullein/M +mullet/MS +mulligan/SM +mulligatawny/M +mullion/SMD +multi +multicellular +multichannel +multicoloured +multicultural +multiculturalism/M +multidimensional +multidisciplinary +multifaceted +multifamily +multifarious/PY +multifariousness/M +multiform +multigrain +multilateral/Y +multilayered +multilevel +multilingual +multilingualism/M +multimedia/M +multimillionaire/SM +multinational/SM +multipart +multiparty +multiplayer/M +multiple/MS +multiplex/ZGMDRS +multiplexer/M +multiplicand/MS +multiplication/M +multiplicative +multiplicity/SM +multiplier/M +multiply/NZGDRSX +multiprocessing +multiprocessor/SM +multipurpose +multiracial +multistage +multistory +multitask/GS +multitasking/M +multitude/SM +multitudinous +multivariate +multiverse/SM +multivitamin/MS +multiyear +mum/SM +mumble/MZGDRS +mumbler/M +mumbletypeg/M +mummer/MS +mummery/M +mummification/M +mummify/GNDS +mummy/SM +mumps/M +mun +munch/GDS +munchie/S +munchies/M +munchkin/SM +mundane/SY +mung/DSG +municipal/SMY +municipality/SM +munificence/M +munificent/Y +munition/MDGS +mural/SM +muralist/SM +murder/ZGMDRS +murderer/M +murderess/MS +murderous/Y +murk/MS +murkily +murkiness/M +murky/PTR +murmur/ZGJMDRS +murmurer/M +murmuring/M +murmurous +murrain/M +muscat/MS +muscatel/SM +muscle/MGDS +musclebound +muscleman +musclemen +muscly +muscular/Y +muscularity/M +musculature/M +musculoskeletal +muse/MGDSJ +musette/MS +museum/MS +mush/MDRSZG +mushiness/M +mushroom/GSMD +mushy/PTR +music/SM +musical/MYS +musicale/MS +musicality/M +musician/SMY +musicianship/M +musicological +musicologist/MS +musicology/M +musing/MY +musk/M +muskeg/MS +muskellunge/MS +musket/MS +musketeer/MS +musketry/M +muskie/M +muskiness/M +muskmelon/SM +muskox/MN +muskrat/MS +musky/PTRS +muslin/M +muss/MDSG +mussel/MS +mussy/TR +must've +must/MRSZ +mustachio/SMD +mustang/MS +mustard/M +muster/GMD +mustily +mustiness/M +mustn't +musty/PTR +mutability/M +mutably +mutagen/MS +mutagenic +mutant/MS +mutate/XGNVDS +mutation/M +mutational +mute/MYTGDRSPB +muteness/M +mutilate/DSGNX +mutilation/M +mutilator/SM +mutineer/SM +mutinous/Y +mutiny/GDSM +mutt/MS +mutter/ZGJMDRS +mutterer/M +muttering/M +mutton/M +muttonchops/M +muttony +mutual/Y +mutuality/M +muumuu/MS +muzak +muzzily +muzzle/DSMG +muzzy/P +my +mycologist/SM +mycology/M +myelitis/M +mynah/MS +myocardial +myocardium +myopia/M +myopic +myopically +myriad/SM +myrmidon/MS +myrrh/M +myrtle/SM +mys +myself +mysterious/PY +mysteriousness/M +mystery/SM +mystic/SM +mystical/Y +mysticism/M +mystification/CM +mystify/CDSGN +mystique/M +myth/M +mythic +mythical +mythological +mythologise/DSG +mythologist/SM +mythology/SM +myths +myxomatosis +n/IKTH +naan/S +nab/S +nabbed +nabbing +nabob/SM +nacelle/SM +nacho/SM +nacre/M +nacreous +nadir/SM +nae +naff/RT +nag/SM +nagged +nagger/MS +nagging +nagware +nah +naiad/SM +naif/MS +nail/MDSG +nailbrush/MS +naive/RYT +naivete/M +naivety/M +naked/PY +nakedness/M +name's +name/AGDS +nameable/U +named/U +nameless/Y +namely +nameplate/MS +namesake/SM +nanny/SM +nanobot/S +nanometre/S +nanosecond/SM +nanotechnology/SM +nanotube +nap/SM +napalm/MDSG +nape/MS +naphtha/M +naphthalene/M +napkin/MS +napless +napoleon/SM +napped +napper/MS +napping +nappy/TRSM +narc/MS +narcissism/M +narcissist/MS +narcissistic +narcissus/M +narcolepsy/M +narcoleptic +narcoses +narcosis/M +narcotic/SM +narcotisation/M +narcotise/GDS +nark +narky +narrate/GNVDSX +narration/M +narrative/SM +narrator/SM +narrow/PTGMDRYS +narrowness/M +narwhal/MS +nary +nasal/SMY +nasalisation/M +nasalise/DSG +nasality/M +nascence/AM +nascent/A +nastily +nastiness/M +nasturtium/SM +nasty/PTR +natal +natch +nation/MS +national/MYS +nationalisation/SM +nationalise/CDSG +nationalism/M +nationalist/SM +nationalistic +nationalistically +nationality/SM +nationhood/M +nationwide +native/MS +nativity/SM +natl +natter/GMDS +nattily +nattiness/M +natty/PTR +natural's +natural/UPY +naturalisation/M +naturalise/DSG +naturalism/M +naturalist/SM +naturalistic +naturalness/UM +naturals +nature's +nature/CS +naturism +naturist/S +naughtily +naughtiness/M +naughty/PTR +nausea/M +nauseam +nauseate/GDS +nauseating/Y +nauseous/PY +nauseousness/M +nautical/Y +nautilus/MS +naval +nave/MS +navel/SM +navigability/M +navigable +navigate/DSGN +navigation/M +navigational +navigator/MS +navvy/S +navy/SM +nay/SM +naysayer/MS +ne'er +neanderthal/MS +neap/MS +near/DRYSPTG +nearby +nearness/M +nearshore +nearside +nearsighted/YP +nearsightedness/M +neat/NRYPXT +neaten/GD +neath +neatness/M +nebula/M +nebulae +nebular +nebulous/PY +nebulousness/M +necessarily/U +necessary/SM +necessitate/DSG +necessitous +necessity/SM +neck/MDSG +neckband/S +neckerchief/MS +necking/M +necklace/MGDSJ +neckline/MS +necktie/MS +necrology/M +necromancer/SM +necromancy/M +necrophilia +necrophiliac/S +necropolis/MS +necroses +necrosis/M +necrotic +nectar/M +nectarine/MS +nee +need/MDSG +needed/U +needful/Y +neediness/M +needle/MGDS +needlepoint/M +needless/YP +needlessness/M +needlewoman/M +needlewomen +needlework/M +needn't +needy/PTR +nefarious/YP +nefariousness/M +neg +negate/DSGNVX +negation/M +negative/MYGPDS +negativeness/M +negativism/M +negativity/M +neglect/SGMD +neglectful/YP +neglectfulness/M +negligee/MS +negligence/M +negligent/Y +negligible +negligibly +negotiability/M +negotiable/A +negotiate/ADSGN +negotiation/AM +negotiations +negotiator/MS +negritude/M +negro +negroid +neigh/MDG +neighbour/SGMDY +neighbourhood/MS +neighbourliness/M +neighs +neither +nelson/SM +nematode/SM +nemeses +nemesis/M +neoclassic +neoclassical +neoclassicism/M +neocolonialism/M +neocolonialist/MS +neocon/SM +neoconservative/SM +neocortex +neodymium/M +neolithic +neologism/SM +neon/M +neonatal +neonate/MS +neophilia +neophyte/MS +neoplasm/MS +neoplastic +neoprene/M +nepenthe/M +nephew/SM +nephrite/M +nephritic +nephritis/M +nephropathy +nepotism/M +nepotist/SM +nepotistic +neptunium/M +nerd/MS +nerdy/RT +nerve's +nerve/UDSG +nerveless/YP +nervelessness/M +nerviness/M +nervous/YP +nervousness/M +nervy/TPR +nest/MDSG +nestle/GJDS +nestling/M +net/SM +netball +netbook/MS +nether +nethermost +netherworld/M +netiquette/S +netted +netter/S +netting/M +nettle/MGDS +nettlesome +network/SGMD +networking/M +neural/Y +neuralgia/M +neuralgic +neurasthenia/M +neurasthenic/MS +neuritic/MS +neuritis/M +neurological/Y +neurologist/SM +neurology/M +neuron/MS +neuronal +neuroscience +neuroses +neurosis/M +neurosurgeon/MS +neurosurgery/M +neurosurgical +neurotic/MS +neurotically +neuroticism +neurotransmitter/SM +neut +neuter/MDGS +neutral/SMY +neutralisation/M +neutralise/DRSZG +neutraliser/M +neutralism/M +neutralist/SM +neutrality/M +neutrino/SM +neutron/SM +never +nevermore +nevertheless +nevi +nevus/M +new/STMRYP +newbie/MS +newborn/SM +newcomer/SM +newel/SM +newfangled +newfound +newline/S +newlywed/SM +newness/M +news/M +newsagent/S +newsboy/SM +newscast/SMRZ +newscaster/M +newsdealer/SM +newsflash/S +newsgirl/SM +newsgroup/MS +newshound/S +newsletter/MS +newsman/M +newsmen +newspaper/MS +newspaperman/M +newspapermen +newspaperwoman/M +newspaperwomen +newspeak +newsprint/M +newsreader/S +newsreel/MS +newsroom/MS +newsstand/SM +newsweekly/SM +newswoman/M +newswomen +newsworthiness/M +newsworthy/P +newsy/TR +newt/MS +newton/MS +next/M +nexus/MS +niacin/M +nib/SM +nibble/MZGDRS +nibbler/M +nice/PYTR +niceness/M +nicety/SM +niche/SM +nick/MDRSZG +nickel/MS +nickelodeon/SM +nicker/MDG +nickle/S +nickname/DSMG +nicotine/M +niece/SM +nifedipine +niff +niffy +nifty/TR +nigga/MS! +niggard/SMY +niggardliness/M +niggaz/! +nigger/SM! +niggle/MZGDRS +niggler/M +nigh/RT +night/SMY +nightcap/SM +nightclothes/M +nightclub/SM +nightclubbed +nightclubbing +nightdress/MS +nightfall/M +nightgown/SM +nighthawk/SM +nightie/SM +nightingale/SM +nightlife/M +nightlight/S +nightlong +nightmare/SM +nightmarish +nightshade/SM +nightshirt/SM +nightspot/MS +nightstand/SM +nightstick/SM +nighttime/M +nightwatchman +nightwatchmen +nightwear/M +nihilism/M +nihilist/MS +nihilistic +nil/M +nimbi +nimble/TPR +nimbleness/M +nimbly +nimbus/M +nimby +nimrod/MS +nincompoop/SM +nine/MS +ninepin/MS +ninepins/M +nineteen/SMH +nineteenth/M +nineteenths +ninetieth/M +ninetieths +ninety/HSM +ninja/SM +ninny/SM +ninth/M +ninths +niobium/M +nip/SM +nipped +nipper/MS +nippiness/M +nipping +nipple/MS +nippy/TPR +nirvana/M +nisei/M +nit/SM +nitpick/SZGDR +nitpicker/M +nitpicking/M +nitrate/DSMGN +nitration/M +nitre/M +nitric +nitrification/M +nitrite/SM +nitro +nitrocellulose/M +nitrogen/M +nitrogenous +nitroglycerine/M +nitwit/MS +nix/GMDS +no/SM +nob/SY +nobble/GDS +nobelium/M +nobility/M +noble/RSPMT +nobleman/M +noblemen +nobleness/M +noblewoman/M +noblewomen +nobody/SM +nocturnal/Y +nocturne/MS +nod/SM +nodal +nodded +nodding +noddle/MS +noddy +node/MS +nodular +nodule/MS +noel/MS +noes +noggin/MS +nohow +noise/DSMG +noiseless/PY +noiselessness/M +noisemaker/MS +noisily +noisiness/M +noisome +noisy/PTR +nomad/SM +nomadic +nomenclature/MS +nominal/Y +nominate/ACGNVDS +nomination's/A +nomination/CSM +nominative/SM +nominator/CSM +nominee/MS +non +nonabrasive +nonabsorbent/SM +nonacademic +nonacceptance/M +nonacid +nonactive/MS +nonaddictive +nonadhesive +nonadjacent +nonadjustable +nonadministrative +nonage/MS +nonagenarian/MS +nonaggression/M +nonalcoholic +nonaligned +nonalignment/M +nonallergic +nonappearance/MS +nonassignable +nonathletic +nonattendance/M +nonautomotive +nonavailability/M +nonbasic +nonbeliever/MS +nonbelligerent/MS +nonbinding +nonbreakable +nonburnable +noncaloric +noncancerous +nonce/M +nonchalance/M +nonchalant/Y +nonchargeable +nonclerical/MS +nonclinical +noncollectable +noncom/MS +noncombat +noncombatant/MS +noncombustible +noncommercial/MS +noncommittal/Y +noncommunicable +noncompeting +noncompetitive +noncompliance/M +noncomplying +noncomprehending +nonconducting +nonconductor/MS +nonconforming +nonconformism +nonconformist/MS +nonconformity/M +nonconsecutive +nonconstructive +noncontagious +noncontinuous +noncontributing +noncontributory +noncontroversial +nonconvertible +noncooperation/M +noncorroding +noncorrosive +noncredit +noncriminal/SM +noncritical +noncrystalline +noncumulative +noncustodial +nondairy +nondeductible/M +nondelivery/SM +nondemocratic +nondenominational +nondepartmental +nondepreciating +nondescript +nondestructive +nondetachable +nondeterminism +nondeterministic +nondisciplinary +nondisclosure/M +nondiscrimination/M +nondiscriminatory +nondramatic +nondrinker/MS +nondrying +none +noneducational +noneffective +nonelastic +nonelectric +nonelectrical +nonempty +nonenforceable +nonentity/SM +nonequivalent/MS +nonessential +nonesuch/MS +nonetheless +nonevent/MS +nonexchangeable +nonexclusive +nonexempt/M +nonexistence/M +nonexistent +nonexplosive/MS +nonfactual +nonfading +nonfat +nonfatal +nonfattening +nonferrous +nonfiction/M +nonfictional +nonflammable +nonflowering +nonfluctuating +nonflying +nonfood/M +nonfreezing +nonfunctional +nongovernmental +nongranular +nonhazardous +nonhereditary +nonhuman +nonidentical +noninclusive +nonindependent +nonindustrial +noninfectious +noninflammatory +noninflationary +noninflected +nonintellectual/MS +noninterchangeable +noninterference/M +nonintervention/M +nonintoxicating +noninvasive +nonirritating +nonissue +nonjudgmental +nonjudicial +nonlegal +nonlethal +nonlinear +nonliterary +nonliving/M +nonmagnetic +nonmalignant +nonmember/MS +nonmetal/SM +nonmetallic +nonmigratory +nonmilitant +nonmilitary +nonnarcotic/SM +nonnative/MS +nonnegotiable +nonnuclear +nonnumerical +nonobjective +nonobligatory +nonobservance/M +nonobservant +nonoccupational +nonoccurence +nonofficial +nonoperational +nonoperative +nonparallel/MS +nonpareil/MS +nonparticipant/MS +nonparticipating +nonpartisan/SM +nonpaying +nonpayment/SM +nonperformance/M +nonperforming +nonperishable +nonperson/MS +nonphysical/Y +nonplus/S +nonplussed +nonplussing +nonpoisonous +nonpolitical +nonpolluting +nonporous +nonpracticing +nonprejudicial +nonprescription +nonproductive +nonprofessional/SM +nonprofit/SMB +nonproliferation/M +nonpublic +nonpunishable +nonracial +nonradioactive +nonrandom +nonreactive +nonreciprocal/SM +nonreciprocating +nonrecognition/M +nonrecoverable +nonrecurring +nonredeemable +nonrefillable +nonrefundable +nonreligious +nonrenewable +nonrepresentational +nonresident/MS +nonresidential +nonresidual/M +nonresistance/M +nonresistant +nonrestrictive +nonreturnable/MS +nonrhythmic +nonrigid +nonsalaried +nonscheduled +nonscientific +nonscoring +nonseasonal +nonsectarian +nonsecular +nonsegregated +nonsense/M +nonsensical/Y +nonsensitive +nonsexist +nonsexual +nonskid +nonslip +nonsmoker/SM +nonsmoking +nonsocial +nonspeaking +nonspecialist/MS +nonspecializing +nonspecific +nonspiritual/SM +nonstaining +nonstandard +nonstarter/MS +nonstick +nonstop +nonstrategic +nonstriking +nonstructural +nonsuccessive +nonsupport/GM +nonsurgical +nonsustaining +nonsympathiser/M +nontarnishable +nontaxable +nontechnical +nontenured +nontheatrical +nonthinking +nonthreatening +nontoxic +nontraditional +nontransferable +nontransparent +nontrivial +nontropical +nonuniform +nonunion +nonuser/MS +nonvenomous +nonverbal +nonviable +nonviolence/M +nonviolent/Y +nonvirulent +nonvocal +nonvocational +nonvolatile +nonvoter/MS +nonvoting +nonwhite/MS +nonworking +nonyielding +nonzero +noodle/MGDS +nook/MS +nookie +nooky +noon/M +noonday/M +noontide/M +noontime/M +noose/SM +nope +nor +nor'easter +norm/MS +normal/MY +normalcy/M +normalisation/M +normalise/DSG +normality/M +normative +north/ZMR +northbound +northeast/MRZ +northeaster/MY +northeastern +northeastward/S +norther/MY +northerly/SM +northern/ZR +northerner/M +northernmost +northward/S +northwest/ZMR +northwester/MY +northwestern +northwestward/S +nose/MGDS +nosebag/S +nosebleed/MS +nosecone/SM +nosedive/DSMG +nosegay/SM +nosh/MDRSZG +nosher/M +nosily +nosiness/M +nostalgia/M +nostalgic +nostalgically +nostril/MS +nostrum/MS +nosy/RPT +not/B +notability/SM +notable/SM +notably +notarial +notarisation +notarise/GDS +notarization's +notary/SM +notate/GDS +notation/FCSM +notch/GMDS +note's +note/FCSDG +notebook/MS +notelet/S +notepad/S +notepaper/M +noteworthiness/M +noteworthy/P +nothing/PSM +nothingness/M +notice/MGDS +noticeable/U +noticeably +noticeboard/S +noticed/U +notifiable +notification/M +notifier/M +notify/NDRSXZG +notion/MS +notional/Y +notoriety/M +notorious/Y +notwithstanding +notwork/S +nougat/MS +nought/MS +noun/KMS +nourish/DSLG +nourishment/M +nous +nova/MS +novae +novel/SM +novelette/SM +novelisation/MS +novelise/DSG +novelist/SM +novella/MS +novelty/SM +novena/MS +novenae +novice/MS +novitiate/MS +now/M +nowadays/M +noway/S +nowhere/M +nowise +nowt +noxious +nozzle/MS +nu/SM +nuance/MDS +nub/SM +nubbin/MS +nubby/TR +nubile +nuclear/K +nucleate/DSGN +nucleation/M +nuclei +nucleic +nucleoli +nucleolus/M +nucleon/SM +nucleoside +nucleotide +nucleus/M +nude/MTRS +nudge/GDSM +nudism/M +nudist/SM +nudity/M +nugatory +nugget/SM +nuisance/MS +nuke/MGDS +null/S +nullification/M +nullify/NDSG +nullity/M +numb/ZTGPDRYS +number's +number/ASDG +numbered/U +numberless +numbness/M +numbskull/SM +numerable/I +numeracy/IM +numeral/SM +numerate/XGNDS +numeration/M +numerator/MS +numeric +numerical/Y +numerologist/MS +numerology/M +numerous/Y +numinous +numismatic/S +numismatics/M +numismatist/SM +nun/SM +nuncio/SM +nunnery/SM +nuptial/MS +nurse/MZGDRS +nurselings +nursemaid/MS +nurser/M +nursery/SM +nurseryman/M +nurserymen +nursing/M +nursling/SM +nurture/DRSMZG +nurturer/M +nut/SM +nutcase/S +nutcracker/MS +nuthatch/MS +nuthouse/S +nutmeat/SM +nutmeg/SM +nutpick/SM +nutria/SM +nutrient/MS +nutriment/MS +nutrition/M +nutritional/Y +nutritionist/SM +nutritious/YP +nutritiousness/M +nutritive +nutshell/MS +nutted +nutter/S +nuttiness/M +nutting +nutty/RTP +nuzzle/DRSMZG +nuzzler/M +nybble/S +nylon/MS +nylons/M +nymph/M +nymphet/MS +nympho/S +nymphomania/M +nymphomaniac/SM +nymphs +o +o'clock +o'er +oaf/SM +oafish/PY +oafishness/M +oak/SMN +oakum/M +oar/SGMD +oarlock/SM +oarsman/M +oarsmen +oarswoman/M +oarswomen +oases +oasis/M +oat/SMN +oatcake/SM +oath/M +oaths +oatmeal/M +oats/M +ob/S +obbligato/MS +obduracy/M +obdurate/PY +obdurateness/M +obedience/EM +obedient/EY +obeisance/SM +obeisant +obelisk/MS +obese +obesity/M +obey/EDSG +obfuscate/GNXDS +obfuscation/M +obi/SM +obit/MS +obituary/SM +obj +object/SGVMD +objectify/NGDS +objection/SMB +objectionable/U +objectionably +objective/SMYP +objectiveness/M +objectivity/M +objector/MS +objurgate/XGNDS +objurgation/M +oblate/NX +oblation/M +obligate/DSXGN +obligation/M +obligatorily +obligatory +oblige/EGDS +obliging/Y +oblique/SMYP +obliqueness/M +obliquity/M +obliterate/DSGN +obliteration/M +oblivion/M +oblivious/YP +obliviousness/M +oblong/MS +obloquy/M +obnoxious/YP +obnoxiousness/M +oboe/MS +oboist/MS +obscene/RYT +obscenity/SM +obscurantism/M +obscurantist/SM +obscure/DRSYTG +obscurity/SM +obsequies +obsequious/PY +obsequiousness/M +obsequy/M +observably +observance/MS +observant/Y +observation/SM +observational +observatory/SM +observe/DRSBZG +observed/U +observer/M +obsess/DSGV +obsession/SM +obsessional/Y +obsessive/PSMY +obsessiveness/M +obsidian/M +obsolesce/DSG +obsolescence/M +obsolescent +obsolete/GDS +obstacle/MS +obstetric/S +obstetrical +obstetrician/SM +obstetrics/M +obstinacy/M +obstinate/Y +obstreperous/YP +obstreperousness/M +obstruct/DGVS +obstructed/U +obstruction/SM +obstructionism/M +obstructionist/MS +obstructive/YP +obstructiveness/M +obtain/DBLGS +obtainable/U +obtainment/M +obtrude/DSG +obtrusion/M +obtrusive/UPY +obtrusiveness/UM +obtuse/YTRP +obtuseness/M +obverse/SM +obviate/DSGN +obviation/M +obvious/PY +obviousness/M +ocarina/MS +occasion/GMDS +occasional/Y +occidental/SM +occlude/GDS +occlusion/SM +occlusive +occult/M +occultism/M +occultist/SM +occupancy/M +occupant/SM +occupation/AM +occupational/Y +occupations +occupied/U +occupier/SM +occupy/ADSG +occur/AS +occurred/A +occurrence/SM +occurring/A +ocean/SM +oceanfront/SM +oceangoing +oceanic/M +oceanographer/SM +oceanographic +oceanography/M +oceanology/M +ocelot/MS +och +ochre/M +ocker/S +octagon/MS +octagonal +octal +octane/MS +octave/MS +octavo/MS +octet/SM +octogenarian/SM +octopus/MS +ocular/MS +oculist/SM +oculomotor +odalisque/SM +odd/STRYLP +oddball/SM +oddity/SM +oddment/SM +oddness/M +odds/M +ode/SM +odious/YP +odiousness/M +odium/M +odometer/MS +odoriferous +odorous +odour/SMD +odourless +odyssey/MS +oecus +oedema/MS +oedipal +oenology/M +oenophile/SM +oesophagi +oesophagus +oestradiol +oestrogen/MS +oestrous +oestrus/MS +oeuvre/MS +of +off/SZGDRJ +offal/M +offbeat/MS +offence/MS +offend/ZGDRS +offender/M +offensive's +offensive/IPY +offensiveness/IM +offensives +offer/JGMD +offering/M +offertory/SM +offhand +offhanded/PY +offhandedness/M +office/MZRS +officeholder/SM +officer/M +official/MYS +officialdom/M +officialese +officialism/M +officiant/SM +officiate/DSG +officiator/MS +officious/PY +officiousness/M +offing/M +offish +offline +offload/SDG +offprint/SM +offset/MS +offsetting +offshoot/MS +offshore/G +offside +offsite +offspring/M +offstage/S +offtrack +oft +often/TR +oftentimes +ofttimes +ogle/MZGDRS +ogler/M +ogre/MS +ogreish +ogress/MS +oh/M +ohm/SM +ohmmeter/MS +oho +ohs +oi +oik/S +oil/SGMD +oilcan/S +oilcloth/M +oilcloths +oilfield/S +oiliness/M +oilman +oilmen +oilskin/MS +oilskins/M +oily/RPT +oink/MDSG +ointment/SM +okapi/SM +okay/MDSG +okra/MS +old/TMNRP +oldie/SM +oldish +oldness/M +oldster/MS +ole/SMV +oleaginous +oleander/MS +oleo/M +oleomargarine/M +olfactory/SM +oligarch/M +oligarchic +oligarchical +oligarchs +oligarchy/SM +oligonucleotide/S +oligopoly/SM +olive/SM +om/SMNX +ombudsman/M +ombudsmen +omega/SM +omelette/MS +omen/M +omicron/MS +ominous/YP +ominousness/M +omission/MS +omit/S +omitted +omitting +omnibus/MS +omnipotence/M +omnipotent +omnipresence/M +omnipresent +omniscience/M +omniscient +omnivore/MS +omnivorous/PY +omnivorousness/M +on/Y +onboard +once/M +oncogene/SM +oncologist/SM +oncology/M +oncoming +one/SXMNP +oneness/M +onerous/PY +onerousness/M +oneself +onetime +ongoing +onion/M +onionskin/M +online +onlooker/SM +onlooking +onomatopoeia/M +onomatopoeic +onomatopoetic +onrush/MSG +onscreen +onset/MS +onshore +onside +onsite +onslaught/MS +onstage +onto +ontogeny/M +ontological +ontology/M +onus/MS +onward/S +onyx/MS +oodles/M +ooh/GD +oohs +oomph +oops +ooze/MGDS +oozy/TR +op/SMDG +opacity/M +opal/MS +opalescence/M +opalescent +opaque/PYTGDRS +opaqueness/M +opcode/S +ope/S +open/ZTGJPMDRYS +opencast +opened/U +opener/M +openhanded/P +openhandedness/M +openhearted +opening/M +openness/M +openwork/M +opera/MS +operable/I +operand/S +operate/DSGNVX +operatic +operatically +operation/M +operational/Y +operative/SM +operator/SM +operetta/SM +ophthalmic +ophthalmologist/SM +ophthalmology/M +opiate/SM +opine/GNXDS +opinion/M +opinionated +opioid/SM +opium/M +opossum/MS +opp +opponent/SM +opportune/IY +opportunism/M +opportunist/SM +opportunistic +opportunistically +opportunity/SM +oppose/DSG +opposed/U +opposite/SMYNX +opposition/M +oppress/DSGV +oppression/M +oppressive/YP +oppressiveness/M +oppressor/MS +opprobrious/Y +opprobrium/M +opt/SGD +optic/MS +optical/Y +optician/SM +optics/M +optima +optimal/Y +optimisation/SM +optimise/DRSG +optimism/SM +optimist/SM +optimistic +optimistically +optimum/SM +option/SMDG +optional/Y +optometrist/MS +optometry/M +opulence/M +opulent/Y +opus/MS +or +oracle/SM +oracular +oral/MYS +orality +orange/SMP +orangeade/MS +orangery/SM +orangutan/SM +orate/GNXDS +oration/M +orator/SM +oratorical/Y +oratorio/MS +oratory/SM +orb/SM +orbicular +orbit/MDRZGS +orbital/SM +orbiter/M +orc/SM +orchard/SM +orchestra/MS +orchestral +orchestrate/DSXGN +orchestration/M +orchid/SM +ordain/SDLG +ordainment/M +ordeal/SM +order/EAMDGS +ordered/U +orderings +orderliness/EM +orderly/PSM +ordinal/SM +ordinance/SM +ordinarily +ordinariness/M +ordinary/SMP +ordinate/MNSX +ordination/M +ordnance/M +ordure/M +ore/SM +oregano/M +org +organ/MS +organdie/M +organelle/MS +organic/SM +organically/I +organisation/ASM +organisational/Y +organise/AESDG +organised/U +organiser/MS +organism/MS +organismic +organist/MS +organza/M +orgasm/SM +orgasmic +orgiastic +orgy/SM +oriel/MS +orient's +orient/AEDGS +oriental/MS +orientalist/S +orientate/EDSGN +orientation/AEM +orientations +orienteering +orifice/MS +orig +origami/M +origin/SM +original/MYS +originality/M +originate/DSGN +origination/M +originator/SM +oriole/SM +orison/SM +ormolu/M +ornament/SGMD +ornamental +ornamentation/M +ornate/YP +ornateness/M +orneriness/M +ornery/PRT +ornithological +ornithologist/MS +ornithology/M +orotund +orotundity/SM +orphan/SMDG +orphanage/MS +orris/MS +orthodontia/M +orthodontic/S +orthodontics/M +orthodontist/SM +orthodox/U +orthodoxy/SM +orthogonal +orthogonality +orthographic +orthographically +orthography/SM +orthopaedic/S +orthopaedics/M +orthopaedist/MS +orzo/M +oscillate/GNDSX +oscillation/M +oscillator/SM +oscillatory +oscilloscope/MS +osculate/DSXGN +osculation/M +osier/MS +osmium/M +osmosis/M +osmotic +osprey/SM +ossicles +ossification/M +ossify/NGDS +ostensible +ostensibly +ostentation/M +ostentatious/Y +osteoarthritis/M +osteopath/M +osteopathic +osteopaths +osteopathy/M +osteoporosis/M +ostler/S +ostracise/GDS +ostracism/M +ostrich/MS +other/MSP +otherwise +otherworldly +otiose +otter/MS +ottoman/MS +oubliette/MS +ouch +ought +oughtn't +ounce/MS +our/S +ourselves +oust/ZGDRS +ouster/M +out/SJGMDR +outage/SM +outargue/GDS +outback/MS +outbalance/DSG +outbid/S +outbidding +outboard/MS +outboast/DSG +outbound +outbox/MS +outbreak/MS +outbuilding/MS +outburst/SM +outcast/MS +outclass/DSG +outcome/MS +outcrop/MS +outcropped +outcropping/SM +outcry/SM +outdated +outdid +outdistance/GDS +outdo/G +outdoes +outdone +outdoor/S +outdoors/M +outdoorsy +outdraw/GS +outdrawn +outdrew +outercourse +outermost +outerwear/M +outface/GDS +outfall/S +outfield/SMRZ +outfielder/M +outfight/SG +outfit/SM +outfitted +outfitter/MS +outfitting +outflank/GSD +outflow/MS +outfought +outfox/GDS +outgo/MJG +outgoes +outgrew +outgrow/HGS +outgrown +outgrowth/M +outgrowths +outguess/GDS +outgun/S +outgunned +outgunning +outhit/S +outhitting +outhouse/SM +outing/M +outlaid +outlandish/PY +outlandishness/M +outlast/DSG +outlaw/SGMD +outlay/SGM +outlet/SM +outlier/S +outline/MGDS +outlive/GDS +outlook/MS +outlying +outmanoeuvre/DSG +outmatch/GDS +outmoded +outnumber/DSG +outpace/GDS +outpatient/MS +outperform/GSD +outplace/L +outplacement/M +outplay/GDS +outpoint/DGS +outpost/MS +outpouring/MS +outproduce/DSG +output/SM +outputted +outputting +outrace/GDS +outrage/MGDS +outrageous/Y +outran +outrank/GDS +outre +outreach/MDSG +outrider/MS +outrigger/SM +outright +outrun/S +outrunning +outscore/GDS +outsell/GS +outset/SM +outshine/GS +outshone +outshout/GDS +outside/MZRS +outsider/M +outsize/MS +outskirt/MS +outsmart/GDS +outsold +outsource/DSG +outsourcing/M +outspend/SG +outspent +outspoken/YP +outspokenness/M +outspread/GS +outstanding/Y +outstation/MS +outstay/DGS +outstretch/DSG +outstrip/S +outstripped +outstripping +outta +outtake/MS +outvote/GDS +outward/YS +outwear/GS +outweigh/GD +outweighs +outwit/S +outwith +outwitted +outwitting +outwore +outwork/MDRSZG +outworn +ouzo/MS +ova +oval/MS +ovarian +ovary/SM +ovate/NX +ovation/M +oven/MS +ovenbird/SM +ovenproof +ovenware +over/MYS +overabundance/M +overabundant +overachieve/ZGDRS +overachiever/M +overact/GVSD +overage/SM +overaggressive +overall/SM +overalls/M +overambitious +overanxious +overarching +overarm/GSD +overate +overattentive +overawe/DSG +overbalance/MGDS +overbear/GS +overbearing/Y +overbid/SM +overbidding +overbite/MS +overblown +overboard +overbold +overbook/DGS +overbore +overborne +overbought +overbuild/SG +overbuilt +overburden/GSD +overbuy/GS +overcame +overcapacity/M +overcapitalise/DSG +overcareful +overcast/MGS +overcautious +overcharge/DSMG +overclock/GD +overcloud/SGD +overcoat/MS +overcome/GS +overcompensate/DSGN +overcompensation/M +overconfidence/M +overconfident +overconscientious +overcook/DGS +overcritical +overcrowd/SDG +overcrowding/M +overdecorate/DSG +overdependent +overdevelop/SDG +overdid +overdo/G +overdoes +overdone +overdose/MGDS +overdraft/SM +overdraw/GS +overdrawn +overdress/GMDS +overdrew +overdrive/SM +overdub/SM +overdubbed +overdubbing +overdue +overeager +overeat/GSN +overemotional +overemphasis/GMDS +overemphasise +overenthusiastic +overestimate/MGNDS +overestimation/M +overexcite/DSG +overexercise/GDS +overexert/SDG +overexertion/M +overexpose/GDS +overexposure/M +overextend/DGS +overfed +overfeed/GS +overfill/DGS +overflew +overflight/MS +overflow/MDSG +overflown +overfly/GS +overfond +overfull +overgeneralise/DSG +overgenerous +overgraze/DSG +overgrew +overground +overgrow/HSG +overgrown +overgrowth/M +overhand/MDS +overhang/MSG +overhasty +overhaul/MDSG +overhead/MS +overhear/SG +overheard +overheat/DSG +overhung +overindulge/GDS +overindulgence/M +overindulgent +overinflated +overjoy/GSD +overkill/M +overladen +overlaid +overlain +overland +overlap/SM +overlapped +overlapping +overlarge +overlay/GSM +overleaf +overlie +overload/GMDS +overlong +overlook/GMDS +overlord/MS +overly/SG +overmanned +overmanning +overmaster/SDG +overmodest +overmuch/S +overnice +overnight/MS +overoptimism/M +overoptimistic +overpaid +overparticular +overpass/MS +overpay/GS +overplay/GDS +overpopulate/GNDS +overpopulation/M +overpower/SDG +overpowering/Y +overpraise/DSG +overprecise +overprice/DSG +overprint/SMDG +overproduce/GDS +overproduction/M +overprotect/SDGV +overqualified +overran +overrate/GDS +overreach/GDS +overreact/SDG +overreaction/SM +overrefined +overridden +override/MGS +overripe/M +overrode +overrule/GDS +overrun/SM +overrunning +oversampling +oversaw +oversea/S +oversee/RSZ +overseeing +overseen +overseer/M +oversell/GS +oversensitive/P +oversensitiveness/M +oversexed +overshadow/DSG +overshare/DSG +overshoe/MS +overshoot/GS +overshot +oversight/SM +oversimple +oversimplification/M +oversimplify/DSNGX +oversized +oversleep/GS +overslept +oversold +overspecialisation/M +overspecialise/GDS +overspend/SG +overspent +overspread/GS +overstaffed +overstate/DSLG +overstatement/MS +overstay/DSG +overstep/S +overstepped +overstepping +overstimulate/DSG +overstock/GSD +overstretch/GDS +overstrict +overstrung +overstuffed +oversubscribe/DSG +oversubtle +oversupply/GDS +oversuspicious +overt/Y +overtake/GS +overtaken +overtax/GDS +overthink/SG +overthought +overthrew +overthrow/SMG +overthrown +overtime/MS +overtire/GDS +overtone/MS +overtook +overture/MS +overturn/DSG +overuse/DSMG +overvaluation/S +overvalue/DSG +overview/MS +overweening/Y +overweight/M +overwhelm/SGD +overwhelming/Y +overwinter/SDG +overwork/GMDS +overwrite/GS +overwritten +overwrote +overwrought +overzealous +oviduct/SM +oviparous +ovoid/MS +ovular +ovulate/DSGN +ovulation/M +ovule/MS +ovum/M +ow +owe/DSG +owl/SM +owlet/MS +owlish/Y +own/ESGD +owner/MS +ownership/M +ox/MN +oxalate +oxblood/M +oxbow/MS +oxcart/SM +oxford/SM +oxidant/MS +oxidase +oxidation/M +oxidative +oxide/MS +oxidisation/M +oxidise/ZGDRS +oxidiser/M +oxtail/S +oxyacetylene/M +oxygen/M +oxygenate/DSGN +oxygenation/M +oxymora +oxymoron/M +oyster/SM +oz +ozone/M +p/NRXTGJ +pH +pa/SMH +pablum/M +pabulum/M +pace/MZGDRS +pacemaker/SM +pacer/M +pacesetter/SM +pacey +pachyderm/MS +pachysandra/MS +pacific +pacifically +pacification/M +pacifier/M +pacifism/M +pacifist/SM +pacifistic +pacify/ZGDRSN +pack's +pack/AUGSD +package's +package/AGDS +packager/SM +packaging/M +packer/MS +packet/MS +packing's +packinghouse/SM +packsaddle/MS +pact/MS +pacy/RT +pad/SM +padded +padding/M +paddle/MZGDRS +paddler/M +paddock/MDGS +paddy/SM +padlock/MDSG +padre/SM +paean/SM +paediatric/S +paediatrician/MS +paedophile/S +paedophilia +paella/MS +pagan/SM +paganism/M +page/MZGDRS +pageant/MS +pageantry/M +pageboy/SM +pager/M +paginate/DSGN +pagination/M +pagoda/MS +pah +paid/AU +pail/MS +pailful/SM +pain/MDSG +painful/PY +painfuller +painfullest +painfulness/M +painkiller/MS +painkilling +painless/PY +painlessness/M +painstaking/MY +paint/SZGJMDR +paintball +paintbox/MS +paintbrush/MS +painted/U +painter/MY +painting/M +paintwork +pair/AMDSG +paired/U +pairing/S +pairwise +paisley/SM +pal/SMY +palace/MS +paladin/SM +palaeolithic +palaeontologist/MS +palaeontology/M +palanquin/SM +palatable/U +palatal/SM +palatalisation/M +palatalise/GDS +palate/MBS +palatial/Y +palatinate/MS +palatine/MS +palaver/GSMD +palazzi +palazzo +pale/MYTGPDRSJ +paleface/MS +paleness/M +paleo +paleographer/MS +paleography/M +palette/SM +palfrey/SM +palimony/M +palimpsest/MS +palindrome/MS +palindromic +paling/M +palisade/SM +palish +pall/MDSG +palladium/M +pallbearer/MS +pallet/MS +palliate/DSGNV +palliation/M +palliative/SM +pallid/YP +pallidness/M +pallor/M +palm/MDSG +palmate +palmetto/SM +palmist/SM +palmistry/M +palmtop/SM +palmy/TR +palomino/MS +palpable +palpably +palpate/DSGN +palpation/M +palpitate/XGNDS +palpitation/M +palsy/GDSM +paltriness/M +paltry/RPT +pampas/M +pamper/DSG +pamphlet/MS +pamphleteer/MS +pan/SM +panacea/SM +panache/M +panama/MS +panatella/S +pancake/DSMG +panchromatic +pancreas/MS +pancreatic +pancreatitis +panda/SM +pandemic/SM +pandemonium/M +pander/MDRZGS +panderer/M +pane/KM +panegyric/SM +panel/SM +panelled +panelling/SM +panellist/SM +panes +pang/MS +panhandle/DRSMZG +panhandler/M +panic/SM +panicked +panicking +panicky +panned +pannier/SM +panning +panoply/SM +panorama/SM +panoramic +panpipes/M +pansy/SM +pant/MDSG +pantaloons/M +pantechnicon/S +pantheism/M +pantheist/SM +pantheistic +pantheon/SM +panther/MS +pantie/MS +panto/S +pantomime/MGDS +pantomimic +pantomimist/SM +pantry/SM +pantsuit/SM +pantyhose/M +pantyliner/M +pantywaist/SM +pap/SM +papa/MS +papacy/SM +papal +paparazzi/M +paparazzo +papaya/MS +paper/SZGMDR +paperback/SM +paperbark/S +paperboard/M +paperboy/SM +paperclip/S +paperer/M +papergirl/SM +paperhanger/SM +paperhanging/M +paperless +paperweight/MS +paperwork/M +papery +papilla/M +papillae +papillary +papist/MS +papoose/MS +pappy/SM +paprika/M +papyri +papyrus/M +par/SZGMDRBJ +para/MS +parable/MS +parabola/SM +parabolic +paracetamol/S +parachute/DSMG +parachutist/MS +parade/MZGDRS +parader/M +paradigm/SM +paradigmatic +paradisaical +paradise/SM +paradox/MS +paradoxical/Y +paraffin/M +paragliding +paragon/MS +paragraph/GMD +paragraphs +parakeet/SM +paralegal/MS +parallax/MS +parallel/SGMD +paralleled/U +parallelisation +parallelised +parallelism/MS +parallelogram/SM +paralyse/DSG +paralysing/Y +paralysis/M +paralytic/SM +paramagnetic +paramecia +paramecium/M +paramedic/MS +paramedical/MS +parameter/MS +parameterise/D +parametric +paramilitary/SM +paramount +paramountcy +paramour/SM +paranoia/M +paranoiac/MS +paranoid/SM +paranormal +parapet/MS +paraphernalia/M +paraphrase/DSMG +paraplegia/M +paraplegic/SM +paraprofessional/MS +parapsychologist/MS +parapsychology/M +paraquat/M +parasailing +parascending +parasite/SM +parasitic +parasitical/Y +parasitism/M +parasol/MS +parasympathetic/S +parathion/M +parathyroid/MS +paratroop/RZS +paratrooper/M +paratroops/M +paratyphoid/M +parboil/DSG +parcel/MS +parcelled +parcelling +parch/LGDS +parchment/SM +pardner/S +pardon/ZGMDRBS +pardonable/U +pardonably/U +pardoner/M +pare/S +paregoric/M +parent/GMDS +parentage/M +parental +parentheses +parenthesis/MDSG +parenthesise +parenthetic +parenthetical/Y +parenthood/M +parenting/M +parer/M +pares/S +paresis/M +parfait/MS +pariah/M +pariahs +paribus +parietal +parimutuel/MS +paring/M +parish/MS +parishioner/MS +parity/ESM +park/MDSG +parka/SM +parking/M +parkland +parkour +parkway/MS +parky +parlance/M +parlay/GMDS +parley/GMDS +parliament/SM +parliamentarian/SM +parliamentary +parlour/MS +parlous +parmigiana +parochial/Y +parochialism/M +parodist/SM +parody/GDSM +parole/MGDS +parolee/MS +parotid +paroxysm/SM +paroxysmal +parquet/MDSG +parquetry/M +parred +parricidal +parricide/MS +parring +parrot/GMDS +parry/GDSM +parse/DRSG +parsec/MS +parsimonious/Y +parsimony/M +parsley/M +parsnip/MS +parson/MS +parsonage/MS +part's +part/CDSG +partake/ZGRS +partaken +partaker/M +parterre/SM +parthenogenesis/M +partial/MYS +partiality/M +participant/SM +participate/DSGN +participation/M +participator/MS +participatory +participial/M +participle/MS +particle/SM +particleboard/M +particular/SMY +particularisation/M +particularise/DSG +particularity/SM +particulate/SM +parting/MS +partisan/SM +partisanship/M +partition/GMDS +partitive/MS +partly +partner/MDSG +partnership/MS +partook +partridge/SM +parturition/M +partway +party/GDSM +parvenu/MS +pascal/MS +paschal +pasha/SM +pass/M +passably +passage/MS +passageway/MS +passbook/MS +passe/DRSBXZGNV +passel/MS +passenger/SM +passer/M +passerby/M +passersby +passim +passing/MY +passion/EM +passionate/EY +passionflower/SM +passionless +passive/PMYS +passiveness/M +passivisation +passivity/M +passivize/DSG +passkey/MS +passphrase/S +passport/MS +password/MS +past/AMS +pasta/SM +paste/DSMG +pasteboard/M +pastel/MS +pastern/MS +pasteurisation/M +pasteurise/ZGDRS +pasteurised/U +pasteuriser/M +pastiche/MS +pastie +pastille/MS +pastime/MS +pastiness/M +pastor/MS +pastoral/MS +pastorate/MS +pastrami/M +pastry/SM +pasturage/M +pasture/DSMG +pastureland/M +pasty/PTRSM +pat/SM +patch/EGMDS +patchily +patchiness/M +patchouli +patchwork/SM +patchy/TPR +pate/MS +patella/MS +patellae +patent/GMDYS +paterfamilias/MS +paternal/Y +paternalism/M +paternalist/S +paternalistic +paternity/M +paternoster/MS +path/M +pathetic +pathetically +pathfinder/SM +pathless +pathogen/SM +pathogenic +pathological/Y +pathologist/SM +pathology/M +pathos/M +paths +pathway/MS +patience/M +patient/IMST +patienter +patiently +patina/MS +patinae +patio/SM +patisserie/S +patois/M +patresfamilias +patriarch/M +patriarchal +patriarchate/MS +patriarchs +patriarchy/SM +patrician/SM +patricidal +patricide/SM +patrimonial +patrimony/SM +patriot/SM +patriotic/U +patriotically +patriotism/M +patrol/MS +patrolled +patrolling +patrolman/M +patrolmen +patrolwoman/M +patrolwomen +patron/MS +patronage/MS +patroness/MS +patronise/ZGDRS +patroniser/M +patronising/Y +patronymic/SM +patronymically +patroon/SM +patsy/SM +patted +patter/MDGS +pattern/SMDG +patting +patty/SM +paucity/M +paunch/MS +paunchy/RT +pauper/MS +pauperise/DSG +pauperism/M +pause/DSMG +pave/AGDS +paved/U +pavement/MS +pavilion/SM +paving/MS +pavlova/S +paw/SGMD +pawl/MS +pawn/MDSG +pawnbroker/MS +pawnbroking/M +pawnshop/MS +pawpaw/MS +pay's +pay/ASGBL +payback/SM +paycheck/MS +payday/MS +payed +payee/SM +payer/SM +payload/SM +paymaster/SM +payment/ASM +payoff/MS +payola/M +payout/MS +payphone/S +payroll/SM +payslip/SM +paywall/SM +payware +pct +pd +pea/SM +peace/SM +peaceable +peaceably +peaceful/PY +peacefulness/M +peacekeeper/SM +peacekeeping/M +peacemaker/MS +peacemaking/M +peacetime/M +peach/MS +peachy/TR +peacock/MS +peafowl/MS +peahen/MS +peak/MDSG +peaky +peal/AMDSG +peanut/MS +pear/MYS +pearl/SGMD +pearly/RT +peasant/SM +peasantry/M +peashooter/SM +peat/M +peaty/TR +pebble/MGDS +pebbly +pecan/SM +peccadillo/M +peccadilloes +peccary/SM +peck/MDRSZG +peckish +pecs +pectic +pectin/M +pectoral/MS +pectoralis +peculate/GNDS +peculation/M +peculator/SM +peculiar/Y +peculiarity/SM +pecuniary +pedagogic +pedagogical/Y +pedagogue/SM +pedagogy/M +pedal/SM +pedalled +pedalling +pedalo/S +pedant/MS +pedantic +pedantically +pedantry/M +peddle/GDS +pederast/MS +pederasty/M +pedestal/MS +pedestrian/SM +pedestrianisation +pedestrianise/GDS +pediatrics's +pedicab/SM +pedicure/MGDS +pedicurist/MS +pedigree/MDS +pediment/MS +pedlar/MS +pedometer/MS +peduncle/MS +pee/DRSMZ +peeing +peek/MDSG +peekaboo/M +peel/MDRSJZG +peeled/U +peeler/M +peeling/M +peen/MS +peep/MDRSZG +peepbo +peeper/M +peephole/MS +peepshow/MS +peer/MDG +peerage/SM +peeress/MS +peerless +peeve/DSMG +peevish/PY +peevishness/M +peewee/MS +peewit/S +peg/SM +pegboard/MS +pegged +pegging +peignoir/SM +pejoration/M +pejorative/SMY +peke/MS +pekineses +pekingese/SM +pekoe/M +pelagic +pelf/M +pelican/MS +pellagra/M +pellet/GMDS +pellucid +pelmet/S +pelt/MDSG +pelvic +pelvis/MS +pemmican/M +pen/M +penal +penalisation/M +penalise/DSG +penalty/SM +penance/MS +pence +penchant/SM +pencil/MS +pencilled +pencilling/S +pend/CDSG +pendant/CMS +pendent/MS +pendulous +pendulum/MS +penetrability/M +penetrable +penetrate/DSGNVX +penetrating/Y +penetration/M +penfriend/S +penguin/MS +penicillin/M +penile +peninsula/SM +peninsular +penis/MS +penitence/M +penitent/SMY +penitential +penitentiary/SM +penknife/M +penknives +penlight/SM +penman/M +penmanship/M +penmen +pennant/MS +penned +penniless +penning +pennon/MS +penny/SM +pennyweight/MS +pennyworth +penologist/MS +penology/M +pension/BZGMDRS +pensioner/M +pensive/PY +pensiveness/M +pent +pentacle/MS +pentagon/MS +pentagonal +pentagram/SM +pentameter/SM +pentathlete/MS +pentathlon/MS +penthouse/SM +penuche/M +penultimate/SM +penumbra/MS +penumbrae +penurious/PY +penuriousness/M +penury/M +peon/MS +peonage/M +peony/SM +people/MGDS +pep/SM +pepped +pepper/GMDS +peppercorn/SM +peppermint/SM +pepperoni/MS +peppery +peppiness/M +pepping +peppy/TPR +pepsin/M +peptic/MS +peptide/S +peradventure/M +perambulate/XGNDS +perambulation/M +perambulator/MS +percale/MS +perceive/BGDS +perceived/U +percent/MS +percentage/SM +percentile/SM +perceptible +perceptibly +perception/SM +perceptional +perceptive/PY +perceptiveness/M +perceptual/Y +perch/GMDS +perchance +percipience/M +percipient +percolate/GNDS +percolation/M +percolator/SM +percussion/AM +percussionist/MS +percussive +perdition/M +perdurable +peregrinate/DSXGN +peregrination/M +peregrine/MS +peremptorily +peremptory +perennial/SMY +perestroika/M +perfect/PTGMDRYS +perfecta/MS +perfectibility/M +perfectible +perfection/SM +perfectionism/M +perfectionist/SM +perfectness/M +perfidious/Y +perfidy/SM +perforate/GNXDS +perforation/M +perforce +perform/SDRZG +performance/SM +performed/U +performer/M +perfume/DRSMZG +perfumer/M +perfumery/SM +perfunctorily +perfunctory +perfusion +pergola/SM +perhaps +pericardia +pericardial +pericarditis +pericardium/M +perigee/SM +perihelia +perihelion/M +peril/SM +perilled +perilling +perilous/Y +perimeter/SM +perinatal +perinea +perineum/M +period/MS +periodic +periodical/SMY +periodicity/M +periodontal +periodontics/M +periodontist/SM +peripatetic/MS +peripheral/MYS +periphery/SM +periphrases +periphrasis/M +periphrastic +periscope/SM +perish/BDRSZG +perishable/MS +peristalses +peristalsis/M +peristaltic +peristyle/SM +peritoneal +peritoneum/MS +peritonitis/M +periwig/SM +periwinkle/SM +perjure/DRSZG +perjurer/M +perjury/SM +perk/MDSG +perkily +perkiness/M +perky/TPR +perm/MDSG +permafrost/M +permanence/M +permanency/M +permanent/SMY +permeability/M +permeable +permeate/GNDS +permeation/M +permissible +permissibly +permission/MS +permissive/PY +permissiveness/M +permit/MS +permitted +permitting +permittivity +permutation/SM +permute/DSG +pernicious/YP +perniciousness/M +peroration/MS +peroxide/MGDS +perpendicular/SMY +perpendicularity/M +perpetrate/DSGN +perpetration/M +perpetrator/MS +perpetual/SMY +perpetuate/DSGN +perpetuation/M +perpetuity/M +perplex/GDS +perplexed/Y +perplexing/Y +perplexity/SM +perquisite/SM +persecute/GNXDS +persecution/M +persecutor/SM +perseverance/M +persevere/DSG +persiflage/M +persimmon/SM +persist/SGD +persistence/M +persistent/Y +persnickety +person/UMS +persona/SM +personable +personae +personage/MS +personal/MYS +personalise/CDSG +personality/SM +personalty/M +personification/M +personify/GDSNX +personnel/M +perspective/MS +perspex +perspicacious/Y +perspicacity/M +perspicuity/M +perspicuous +perspiration/M +perspire/GDS +persuade/BZGDRS +persuaded/U +persuader/M +persuasion/SM +persuasive/PY +persuasiveness/M +pert/RYPT +pertain/GSD +pertinacious/Y +pertinacity/M +pertinence/M +pertinent/Y +pertness/M +perturb/DGS +perturbation/SM +perturbed/U +pertussis/M +peruke/MS +perusal/MS +peruse/GDS +pervade/DSG +pervasive/PY +pervasiveness/M +perverse/PXYN +perverseness/M +perversion/M +perversity/M +pervert/SGMD +pervs +peseta/MS +peskily +peskiness/M +pesky/TPR +peso/MS +pessary/S +pessimal +pessimism/M +pessimist/SM +pessimistic +pessimistically +pest/MRSZ +pester/GD +pesticide/MS +pestiferous +pestilence/SM +pestilent +pestilential +pestle/MGDS +pesto/M +pet/SZMR +petabyte/MS +petajoule/S +petal/SM +petalled +petard/MS +petawatt/S +petcock/SM +peter/GMD +petiole/SM +petite/MS +petition/ZGMDRS +petitionary +petitioner/M +petrel/MS +petrifaction/M +petrify/DSG +petrochemical/SM +petrodollar/MS +petrol/M +petrolatum/M +petroleum/M +petrologist/SM +petrology/M +petted +petticoat/MS +pettifog/S +pettifogged +pettifogger/SM +pettifoggery/M +pettifogging +pettily +pettiness/M +petting/M +pettish/Y +petty/PTR +petulance/M +petulant/Y +petunia/MS +pew/SM +pewee/SM +pewit/SM +pewter/MS +peyote/M +pf +pfennig/MS +pg +phaeton/MS +phage/S +phagocyte/SM +phalanger/SM +phalanges +phalanx/MS +phalli +phallic +phallocentric +phallocentrism +phallus/M +phantasm/MS +phantasmagoria/MS +phantasmagorical +phantasmal +phantom/SM +pharaoh/M +pharaohs +pharisaic +pharisee/SM +pharmaceutic/MS +pharmaceutical/SM +pharmaceutics/M +pharmacist/MS +pharmacologic +pharmacological +pharmacologist/SM +pharmacology/M +pharmacopoeia/MS +pharmacotherapy +pharmacy/SM +pharyngeal +pharynges +pharyngitis/M +pharynx/M +phase/DSMG +phaseout/SM +phat +pheasant/MS +phenacetin/M +phenobarbital/M +phenol/M +phenom/MS +phenomena +phenomenal/Y +phenomenological +phenomenology +phenomenon/MS +phenotype +phenytoin +pheromone/MS +phew +phi/SM +phial/SM +philander/ZGDRS +philanderer/M +philandering/M +philanthropic +philanthropically +philanthropist/MS +philanthropy/SM +philatelic +philatelist/MS +philately/M +philharmonic/SM +philippic/MS +philistine/MS +philistinism/M +philodendron/SM +philological +philologist/MS +philology/M +philosopher/MS +philosophic +philosophical/Y +philosophise/DRSZG +philosophiser/M +philosophy/SM +philtre/MS +phish/ZGDR +phisher/M +phlebitis/M +phlegm/M +phlegmatic +phlegmatically +phloem/M +phlox/M +phobia/MS +phobic/MS +phoebe/MS +phoenix/MS +phone/DSMG +phonecard/S +phoneme/MS +phonemic +phonemically +phonetic/S +phonetically +phonetician/SM +phonetics/M +phoney/GMDS +phonic/S +phonically +phonics/M +phonied +phonier +phoniest +phoniness/M +phonograph/M +phonographic +phonographs +phonological/Y +phonologist/MS +phonology/M +phonon +phonying +phooey +phosphate/MS +phosphodiesterase +phosphor/MS +phosphorescence/M +phosphorescent/Y +phosphoric +phosphorous +phosphorus/M +phosphorylation +photo/SGMD +photocell/MS +photocopier/M +photocopy/DRSMZG +photoelectric +photoelectrically +photoengrave/DRSJZG +photoengraver/M +photoengraving/M +photofinishing/M +photogenic +photogenically +photograph/MDRZG +photographer/M +photographic +photographically +photographs/A +photography/M +photojournalism/M +photojournalist/SM +photometer/MS +photon/MS +photosensitive +photostat/SM +photostatic +photostatted +photostatting +photosynthesis/GMDS +photosynthesise +photosynthetic +phototropic +phototropism +phototypesetter +phototypesetting +photovoltaic +phrasal +phrase's +phrase/AGDS +phrasebook/S +phraseology/M +phrasing/MS +phreaking +phrenologist/SM +phrenology/M +phyla +phylactery/SM +phylogeny/M +phylum/M +phys +physic/SM +physical/MYS +physicality +physician/SM +physicist/SM +physicked +physicking +physics/M +physio/S +physiognomy/SM +physiography/M +physiologic +physiological/Y +physiologist/MS +physiology/M +physiotherapist/MS +physiotherapy/M +physique/MS +phytoplankton +pi/SMDRHZG +pianissimo/SM +pianist/MS +piano/SM +pianoforte/SM +pianola/S +piastre/MS +piazza/MS +pibroch/M +pibrochs +pic/SM +pica/M +picador/MS +picante +picaresque +picayune +piccalilli/M +piccolo/MS +pick/MDRSJZG +pickax/GMDS +picker/M +pickerel/MS +picket/ZGMDRS +pickings/M +pickle/MGDS +pickpocket/SM +pickup/MS +picky/PTR +picnic/MS +picnicked +picnicker/SM +picnicking +picot/SM +pictogram/S +pictograph/M +pictographs +pictorial/MYS +picture/MGDS +picturesque/PY +picturesqueness/M +piddle/MGDS +piddly +pidgin/MS +pie/SM +piebald/MS +piece/DSMG +piecemeal +piecework/MRZ +pieceworker/M +piecrust/SM +pieing +pier/M +pierce/JGDS +piercing/MY +piety/M +piezoelectric +piffle/MG +pig/SML +pigeon/MS +pigeonhole/DSMG +pigged +piggery/S +pigging +piggish/PY +piggishness/M +piggy/TRSM +piggyback/MDSG +pigheaded/PY +pigheadedness/M +piglet/MS +pigment/MDS +pigmentation/M +pigpen/MS +pigskin/MS +pigsty/SM +pigswill +pigtail/MS +pike/MZGDRS +piker/M +pikestaff/SM +pilaf/SM +pilaster/MS +pilchard/MS +pile/MGDSJ +pileup/MS +pilfer/ZGDRS +pilferage/M +pilferer/M +pilgrim/MS +pilgrimage/MS +piling/M +pill/MDSG +pillage/MZGDRS +pillager/M +pillar/MDS +pillbox/MS +pillion/MS +pillock/S +pillory/GDSM +pillow/GMDS +pillowcase/MS +pillowslip/MS +pilot/DGSM +pilothouse/SM +pimento/MS +pimiento/MS +pimp/GMDYS +pimpernel/MS +pimple/DSM +pimply/RT +pin/SM +pinafore/MS +pinata/MS +pinball/M +pincer/MS +pinch/GMDS +pincushion/MS +pine's +pine/AGDS +pineapple/MS +pinewood/S +piney +pinfeather/SM +ping/GMD +pinhead/SM +pinhole/SM +pinier +piniest +pinion/SMDG +pink/TGPMDRS +pinkeye/M +pinkie/SM +pinkish +pinkness/M +pinko/MS +pinnacle/SM +pinnate +pinned/U +pinning/U +pinny/S +pinochle/M +pinon/MS +pinpoint/SGMD +pinprick/MS +pinsetter/SM +pinstripe/DSM +pint/MS +pinto/MS +pinup/MS +pinwheel/GSMD +pinyin/M +pinyon/SM +pioneer/SGMD +pious/YP +piousness/M +pip/SZGMDR +pipe/MS +pipeline/SM +piper/M +pipette/SM +pipework +piping/M +pipit/MS +pipped +pippin/SM +pipping +pipsqueak/SM +piquancy/M +piquant/Y +pique/MGDS +piracy/M +piranha/SM +pirate/DSMG +piratical/Y +pirogi/M +piroshki/M +pirouette/DSMG +piscatorial +pismire/SM +piss/ZGMDRS +pissoir/S +pistachio/SM +piste/S +pistil/SM +pistillate +pistol/SM +piston/SM +pit/SM +pita/MS +pitapat/SM +pitch/MDRSZG +pitchblende/M +pitcher/M +pitchfork/MDSG +pitchman/M +pitchmen +piteous/YP +piteousness/M +pitfall/SM +pith/M +pithead/S +pithily +pithiness/M +pithy/RTP +pitiable +pitiably +pitiful/Y +pitiless/PY +pitilessness/M +piton/MS +pitta/S +pittance/MS +pitted +pitting +pituitary/SM +pity/GDSM +pitying/Y +pivot/MDGS +pivotal +pix/M +pixel/MS +pixie/MS +pizza/MS +pizzazz/M +pizzeria/SM +pizzicati +pizzicato/M +pj's +pk +pkg +pkt +pkwy +pl +placard/SMDG +placate/DSGN +placation/M +placatory +place's +place/AESDLG +placebo/SM +placed/U +placeholder/MS +placekick/MDRZGS +placekicker/M +placement/EASM +placenta/SM +placental/S +placer/SM +placid/Y +placidity/M +placings +placket/SM +plagiarise/DRSZG +plagiariser/M +plagiarism/SM +plagiarist/SM +plagiary/M +plague/DSMG +plaice +plaid/MS +plain/MRYTSP +plainchant +plainclothes +plainclothesman/M +plainclothesmen +plainness/M +plainsman/M +plainsmen +plainsong/M +plainspoken +plaint/SMV +plaintiff/SM +plaintive/Y +plait/MDGS +plan/ZMRS +planar +plane's +plane/CGDS +planeload/MS +planer/M +planet/SM +planetarium/SM +planetary +plangency/M +plangent +plank/MDGS +planking/M +plankton/M +planned/U +planner/SM +planning/S +plant/MDRZGSJ +plantain/SM +plantar +plantation/MS +planter/M +planting/M +plantlike +plaque/SM +plash/MDSG +plasma/M +plasmon +plaster/SZGMDR +plasterboard/M +plasterer/M +plastic/SM +plasticise/DSG +plasticity/M +plastique +plat/XGMDNS +plate/MS +plateau/SMDG +plateful/SM +platelet/SM +platen/M +platform/SGMD +plating/M +platinum/M +platitude/SM +platitudinous +platonic +platoon/SGMD +platted +platter/SM +platting +platy/M +platypus/MS +platys +plaudit/SM +plausibility/M +plausible +plausibly +play/AEGMDS +playable/EU +playact/SGD +playacting/M +playback/MS +playbill/MS +playbook/MS +playboy/SM +player/SM +playfellow/SM +playful/PY +playfulness/M +playgirl/MS +playgoer/MS +playground/SM +playgroup/S +playhouse/MS +playlist/MS +playmate/MS +playoff/SM +playpen/SM +playroom/SM +playschool/S +plaything/SM +playtime/M +playwright/SM +plaza/MS +plea/MS +plead/DRZGSJ +pleader/M +pleading/MY +pleasant/UTYP +pleasanter +pleasantness/UM +pleasantry/SM +please/EDSG +pleasing/YS +pleasurably +pleasure/MGDSB +pleasureful +pleat/MDGS +pleb/S +plebby +plebe/MS +plebeian/MS +plebiscite/MS +plectra +plectrum/MS +pledge/DSMG +plenary/SM +plenipotentiary/SM +plenitude/SM +plenteous +plentiful/Y +plenty/M +plenum/S +pleonasm/MS +plethora/M +pleura/M +pleurae +pleurisy/M +plexus/MS +pliability/M +pliable +pliancy/M +pliant/Y +pliers/M +plight/SMDG +plimsoll/S +plinth/M +plinths +plod/S +plodded +plodder/MS +plodding/S +plonk/DRSZG +plop/MS +plopped +plopping +plosive/S +plot/MS +plotted +plotter/SM +plotting +plough/MDG +ploughman/M +ploughmen +ploughs +ploughshare/MS +plover/SM +ploy's +ploy/S +pluck/MDSG +pluckily +pluckiness/M +plucky/RPT +plug's +plug/US +plugged/U +plugging/U +plughole/S +plugin/SM +plum/GMDS +plumage/M +plumb/MDRSZGJ +plumbed/U +plumber/M +plumbing/M +plume/MS +plummet/SGMD +plummy +plump/MDRYSTGP +plumpness/M +plumy/RT +plunder/SZGMDR +plunderer/M +plunge/DRSMZG +plunger/M +plunk/MDSG +pluperfect/SM +plural/SM +pluralisation/M +pluralise/GDS +pluralism/M +pluralist/MS +pluralistic +plurality/SM +plus/MS +plush/MRYTP +plushness/M +plushy/RT +plutocracy/SM +plutocrat/SM +plutocratic +plutonium/M +pluvial +ply/AGDSM +plywood/M +pm +pneumatic +pneumatically +pneumococcal +pneumococci +pneumococcus +pneumonia/M +poach/DRSZG +poacher/M +poaching/M +pock/GMDS +pocket/SMDG +pocketbook/SM +pocketful/SM +pocketknife/M +pocketknives +pockmark/MDGS +pod/SM +podcast/SMG +podded +podding +podiatrist/SM +podiatry/M +podium/SM +poem/MS +poesy/M +poet/MS +poetaster/MS +poetess/MS +poetic/S +poetical/Y +poetry/M +pogrom/SM +poi/M +poignancy/M +poignant/Y +poinciana/SM +poinsettia/SM +point/MDRSZG +pointblank +pointed/Y +pointer/M +pointillism/M +pointillist/SM +pointless/PY +pointlessness/M +pointy/TR +poise/MGDS +poison/SJZGMDR +poisoner/M +poisoning/M +poisonous/Y +poke/MZGDRS +poker/M +pokey/MS +poky/TR +pol/SGMD +polar +polarisation/CM +polarise/CDSG +polarity/SM +pole/MS +poleaxe/GDS +polecat/MS +polemic/MS +polemical/Y +polemicist/SM +polemics/M +polestar/SM +police/DSMG +policeman/M +policemen +policewoman/M +policewomen +policy/SM +policyholder/MS +policymaker/S +polio/MS +poliomyelitis/M +polish/ZGMDRS +polished/U +polisher/M +politburo/MS +polite/RYTP +politeness/M +politesse/M +politic/S +political/Y +politician/SM +politicisation/M +politicise/CDSG +politicking/M +politico/SM +politics/M +polity/SM +polka/MDSG +poll/GMDNS +pollack/MS +pollard/S +pollen/M +pollinate/GNDS +pollination/M +pollinator/SM +polling/M +polliwog/SM +pollster/SM +pollutant/MS +pollute/ZGNDRS +polluted/U +polluter/M +pollution/M +polo/M +polonaise/SM +polonium/M +poltergeist/MS +poltroon/SM +poly +polyacrylamide +polyamory/S +polyandrous +polyandry/M +polyclinic/SM +polyester/MS +polyethylene/M +polygamist/MS +polygamous +polygamy/M +polyglot/SM +polygon/SM +polygonal +polygraph/GMD +polygraphs +polyhedral +polyhedron/SM +polymath/M +polymaths +polymer/SM +polymeric +polymerisation/M +polymerise/GDS +polymorphic +polymorphous +polynomial/MS +polyp/MS +polyphonic +polyphony/M +polypropylene/M +polys +polysemous +polystyrene/M +polysyllabic +polysyllable/MS +polytechnic/MS +polytheism/M +polytheist/SM +polytheistic +polythene +polyunsaturate/DS +polyurethane/MS +polyvinyl +pom/S +pomade/DSMG +pomander/SM +pomegranate/MS +pommel/SM +pommelled +pommelling +pommy/S +pomp/M +pompadour/SMD +pompano/MS +pompom/SM +pomposity/M +pompous/YP +pompousness/M +ponce/GDS +poncho/SM +poncy +pond/MS +ponder/SZGDR +ponderer/M +ponderous/YP +ponderousness/M +pone/MS +pong/GDS +pongee/M +poniard/MS +pontiff/SM +pontifical/Y +pontificate/DSMG +pontoon/SM +pony/GDSM +ponytail/MS +poo/SGD +pooch/MDSG +poodle/SM +poof/MS +poofter/S +pooh/GMD +poohs +pool/GMDS +poolroom/MS +poolside/S +poop/GMDS +poor/TRYP +poorboy/M +poorhouse/SM +poorness/M +pop/SM +popcorn/M +pope/MS +popgun/SM +popinjay/MS +poplar/SM +poplin/M +popover/SM +poppa/MS +poppadom/S +popped +popper/SM +poppet/S +popping +poppy/SM +poppycock/M +populace/MS +popular/Y +popularisation/M +popularise/DSG +popularity/UM +populate/ACGDS +populated/U +population/CM +populations +populism/M +populist/MS +populous/P +populousness/M +popup/MS +porcelain/SM +porch/MS +porcine +porcupine/SM +pore/MGDS +porgy/SM +pork/ZMR +porker/M +porky/RSMT +porn/M +porno/M +pornographer/MS +pornographic +pornographically +pornography/M +porosity/M +porous/P +porousness/M +porphyritic +porphyry/M +porpoise/MGDS +porridge/M +porringer/SM +port's/A +port/CAEGDS +portability/M +portable/MS +portage/DSMG +portal/SM +portcullis/MS +portend/SGD +portent/SM +portentous/YP +porter/ASM +porterhouse/SM +portfolio/MS +porthole/MS +portico/M +porticoes +portiere/MS +portion/KSGMD +portliness/M +portly/RPT +portmanteau/MS +portrait/MS +portraitist/SM +portraiture/M +portray/SGD +portrayal/MS +portulaca/M +pose's/A +pose/CAKEGDS +poser/EKSM +poseur/SM +posh/TR +posit/DSGV +position/CKEMS +positional/KE +positioned/K +positioning/AK +positive/MYPS +positiveness/M +positivism +positivist/S +positron/MS +poss +posse/MS +possess/AEVGSD +possession/ASM +possessive/SMYP +possessiveness/M +possessor/SM +possibility/SM +possible/SM +possibly +possum/SM +post/ZGMDRSJ +postage/M +postal +postbag/S +postbox/S +postcard/SM +postcode/S +postcolonial +postconsonantal +postdate/DSG +postdoc/MS +postdoctoral +poster/M +posterior/SM +posterity/M +postgraduate/SM +posthaste +posthumous/Y +posthypnotic +postie/S +postilion/SM +postindustrial +posting/M +postlude/SM +postman/M +postmark/SMDG +postmaster/MS +postmen +postmenopausal +postmeridian +postmistress/MS +postmodern +postmodernism/M +postmodernist/MS +postmortem/SM +postnasal +postnatal +postoperative +postpaid +postpartum +postpone/DSGL +postponement/SM +postprandial +postscript/SM +postseason/SM +postsynaptic +postulate/XDSMGN +postulation/M +postural +posture/MGJDS +posturing/M +postwar +postwoman +postwomen +posy/SM +pot/CSM +potability/M +potable/SM +potash/M +potassium/M +potato/M +potatoes +potbelly/DSM +potboiler/SM +potency/M +potent/Y +potentate/MS +potential/MYS +potentiality/SM +potentiate/GDS +potful/SM +pothead/SM +pother/SMDG +potherb/SM +potholder/MS +pothole/DRSMZG +pothook/SM +potion/SM +potluck/MS +potpie/SM +potpourri/SM +potsherd/SM +potshot/MS +pottage/M +potted +potter/GSMD +pottery/SM +potting +potty/PRSMT +pouch/MDSG +pouf/S +pouffe/S +poulterer/MS +poultice/DSMG +poultry/M +pounce/DSMG +pound's +pound/KDSG +poundage/M +pounding/SM +pour/GDSJ +pout/ZGMDRS +pouter/M +poverty/M +pow +powder/GSMD +powdery +power/MDSG +powerboat/MS +powerful/Y +powerhouse/SM +powerless/PY +powerlessness/M +powwow/SGMD +pox/MS +pp +ppm +ppr +pr +practicability/M +practicably +practical/SMY +practicality/SM +practice/SMB +practicum/SM +practise/DSG +practised/U +practitioner/SM +praetor/SM +praetorian +pragmatic/MS +pragmatical/Y +pragmatism/M +pragmatist/MS +prairie/SM +praise/EDSMG +praiseworthiness/M +praiseworthy/P +praline/SM +pram/MS +prance/DRSMZG +prancer/M +prancing/Y +prang/DSG +prank/MS +prankster/SM +praseodymium/M +prat/S +prate/MZGDRS +prater/M +pratfall/SM +prattle/DRSMZG +prattler/M +prawn/MDSG +pray/ZGDRS +prayer/M +prayerful/Y +preach/DRSZGL +preacher/M +preachment/M +preachy/RT +preadolescence/SM +preadolescent +preamble/MGDS +prearrange/LGDS +prearrangement/M +preassigned +precancel/SMDG +precancerous +precarious/PY +precariousness/M +precast +precaution/MS +precautionary +precede/DSG +precedence/M +precedent/SM +precept/SM +preceptor/SM +precinct/MS +preciosity/M +precious/YP +preciousness/M +precipice/SM +precipitant/MS +precipitate/XMYGNDS +precipitation/M +precipitous/Y +precis/M +precise/DRSYTGNP +preciseness/M +precision/M +preclude/GDS +preclusion/M +precocious/YP +precociousness/M +precocity/M +precognition/M +precognitive +precolonial +preconceive/GDS +preconception/SM +precondition/MDGS +precook/GSD +precursor/SM +precursory +predate/DSG +predator/MS +predatory +predawn +predecease/GDS +predecessor/SM +predefined +predesignate/GDS +predestination/M +predestine/DSG +predetermination/M +predetermine/ZGDRS +predeterminer/M +predicable +predicament/MS +predicate/MGNVDS +predication/M +predicative/Y +predict/BGVSD +predictability/UM +predictable/U +predictably/U +prediction/SM +predictor/MS +predigest/GDS +predilection/SM +predispose/GDS +predisposition/MS +prednisone +predominance/M +predominant/Y +predominate/YGDS +preemie/SM +preeminence/M +preeminent/Y +preempt/GVSD +preemption/M +preemptive/Y +preen/DSG +preexist/DGS +preexistence/M +pref +prefab/SM +prefabbed +prefabbing +prefabricate/DSGN +prefabrication/M +preface/DSMG +prefatory +prefect/SM +prefecture/MS +prefer/SBL +preferably +preference/MS +preferential/Y +preferment/M +preferred +preferring +prefigure/GDS +prefix/MDSG +preform/GSD +preformative +prefrontal +pregame/SM +pregnancy/SM +pregnant +preheat/GSD +prehensile +prehistorian/S +prehistoric +prehistorical/Y +prehistory/M +prehuman +preinstalled +prejudge/LGDS +prejudgement/MS +prejudice/MGDS +prejudiced/U +prejudicial +prekindergarten/SM +prelacy/M +prelate/SM +prelim/SM +preliminary/SM +preliterate +prelude/MS +premarital +premature/Y +premed/SM +premedical +premeditate/DSGN +premeditated/U +premeditation/M +premenstrual +premier/SGMD +premiere/MS +premiership/MS +premise/DSMG +premium/SM +premix/GDS +premolar/SM +premonition/MS +premonitory +prenatal/Y +prenup/SM +prenuptial +preoccupation/SM +preoccupy/DSG +preoperative +preordain/GDS +preowned +prep/MS +prepackage/DSG +prepacked +prepaid +preparation/SM +preparatory +prepare/GDS +prepared/UP +preparedness/UM +prepay/GSL +prepayment/MS +prepend +preponderance/SM +preponderant/Y +preponderate/GDS +preposition/SM +prepositional/Y +prepossess/GDS +prepossessing/U +prepossession/SM +preposterous/Y +prepped +prepping +preppy/TRSM +prepubescence/M +prepubescent/SM +prepuce/MS +prequel/MS +prerecord/GSD +preregister/SGD +preregistration/M +prerequisite/MS +prerogative/SM +pres +presage/MGDS +presbyopia/M +presbyter/SM +presbytery/SM +preschool/SZMR +preschooler/M +prescience/M +prescient/Y +prescribe/DSG +prescript/SVM +prescription/SM +prescriptive/Y +preseason/SM +presence/SM +present/LMDRYZGSB +presentably +presentation/ASM +presenter/M +presentiment/SM +presentment/SM +preservation/M +preservationist/SM +preservative/SM +preserve/BDRSMZG +preserver/M +preset/S +presetting +preshrank +preshrink/GS +preshrunk +preside/GDS +presidency/SM +president/MS +presidential +presidium/M +presort/DGS +press's +press/ACGSD +pressed/U +presser/MS +pressie/S +pressing/SMY +pressman/M +pressmen +pressure/DSMG +pressurisation/M +pressurise/CGDS +pressuriser/S +pressurizer's +prestidigitation/M +prestige/M +prestigious +presto/SM +presumably +presume/GDSB +presumption/SM +presumptive +presumptuous/YP +presumptuousness/M +presuppose/DSG +presupposition/MS +pretax +preteen/MS +pretence/SM +pretend/DRZGS +pretender/M +pretension/SM +pretentious/UY +pretentiousness/M +preterite/MS +preterm +preternatural/Y +pretest/DGS +pretext/MS +pretrial/S +prettify/GDS +prettily +prettiness/M +pretty/TGDRSMP +pretzel/MS +prev +prevail/DGS +prevalence/M +prevalent +prevaricate/DSGNX +prevarication/M +prevaricator/SM +prevent/DBSGV +preventable/U +preventative/MS +prevention/M +preventive/SM +preview/MDRSZG +previous/Y +prevision/MS +prewar +prey/GMDS +prezzie/S +priapic +price's +price/AGDS +priceless +pricey +pricier +priciest +prick/MDRYSZG +pricker/M +prickle/MGDS +prickliness/M +prickly/PRT +pride/MGDS +prideful/Y +prier/M +priest/SMY +priestess/MS +priesthood/SM +priestliness/M +priestly/RTP +prig/MS +priggish/P +priggishness/M +prim/ZGDRYP +primacy/M +primal +primarily +primary/SM +primate/MS +prime/MS +primer/M +primeval +priming/M +primitive/SPMY +primitiveness/M +primmer +primmest +primness/M +primogenitor/SM +primogeniture/M +primordial/Y +primp/DSG +primrose/SM +primula/S +prince/SMY +princedom/SM +princeliness/M +princely/PRT +princess/MS +principal/SMY +principality/SM +principle/DSM +principled/U +print/AMDSG +printable/U +printer/MS +printing/SM +printmaking +printout/SM +prion/S +prior/MS +prioress/MS +prioritisation +prioritise/DSG +priority/SM +priory/SM +prise/AGDS +prism/MS +prismatic +prison/SZMR +prisoner/M +prissily +prissiness/M +prissy/PTR +pristine +prithee +privacy/M +private/XMYTNRS +privateer/SM +privation/CSM +privatisation/SM +privatise/DSG +privet/SM +privilege/DSMG +privileged/U +privily +privy/RSMT +prize/MS +prizefight/ZGSMR +prizefighter/M +prizefighting/M +prizewinner/MS +prizewinning +pro/SM +probabilistic +probability/SM +probable/SM +probably +probate/MN +probation/ZMR +probational +probationary +probationer/M +probe/MGDSBJ +probity/M +problem/MS +problematic/U +problematical/Y +probosces +proboscis/MS +procaine/M +procedural +procedure/SM +proceed/GJDS +proceeding/M +proceeds/M +process's +process/AGDS +processable +processed/U +procession/GD +processional/MS +processor/SM +proclamation/MS +proclivity/SM +procrastinate/DSGN +procrastination/M +procrastinator/MS +procreate/V +proctor/GMDS +procurement/M +prod/MS +prodigal/MYS +prodigality/M +prodigious/Y +prodigy/SM +produce's +produce/AZGDRS +producer/AM +producible/A +production/ASM +productive/UY +productiveness/M +productivity/M +prof/MS +profanation/MS +profane/PYGDS +profaneness/M +profanity/SM +professed/Y +profession/SM +professional/MYS +professionalisation +professionalise/DSG +professionalism/M +professor/SM +professorial/Y +professorship/SM +proffer/GMDS +proficiency/M +proficient/MYS +profit/BGD +profitability/M +profitable/U +profitably/U +profiteer/MDGS +profiteering/M +profiterole/SM +profitless +profligacy/M +profligate/SMY +proforma +profound/RYTP +profoundness/M +profundity/SM +profuse/PY +profuseness/M +progenitor/SM +progeny/M +progesterone/M +progestin/S +prognathous +prognoses +prognosis/M +prognostic/MS +prognosticate/XGNDS +prognostication/M +prognosticator/MS +program/CAS +programmable/MS +programmatic +programme/BJDRSMZG +programmed/AC +programmer/M +programming/M +progress/MDSGV +progression/MS +progressive/PMYS +progressiveness/M +prohibit/DGVS +prohibition/SM +prohibitionist/MS +prohibitive/Y +prohibitory +project/GMDS +projectile/SM +projection/SM +projectionist/SM +projector/MS +prokaryote/MS +prokaryotic +prole/S +proletarian/MS +proletariat/M +proliferate/DSGN +proliferation/M +prolific +prolifically +prolix/Y +prolixity/M +prologue/SM +prolongation/SM +prom/M +promenade/MGDS +promethium/M +prominence/M +prominent/Y +promiscuity/M +promiscuous/Y +promise/DSMG +promising/Y +promissory +promo/M +promontory/SM +promote/DRZG +promoter/M +promotional +prompt/JPSMDRYZTG +prompted/U +prompter/M +prompting/M +promptitude/M +promptness/M +promulgate/GNDS +promulgation/M +promulgator/MS +prone/P +proneness/M +prong/MDS +pronghorn/MS +pronominal/M +pronounce/DSLG +pronounceable/U +pronouncement/SM +pronto +pronunciation/MS +proof/ADGSM +proofread/SRZG +proofreader/M +prop/MS +propaganda/M +propagandise/GDS +propagandist/MS +propagate/DSGN +propagation/M +propagator/SM +propel/S +propellant/MS +propelled +propeller/SM +propelling +propensity/SM +proper/MRYT +property/DSM +prophecy/SM +prophesier/M +prophesy/DRSMZG +prophet/SM +prophetess/MS +prophetic +prophetical/Y +prophylactic/SM +prophylaxes +prophylaxis/M +propinquity/M +propitiate/DSGN +propitiation/M +propitiatory +propitious/Y +proponent/SM +proportion/ESM +proportional/YS +proportionality +proportionate/EY +proposal/MS +propped +propping +propranolol +proprietary/SM +proprieties/M +proprietor/SM +proprietorial/Y +proprietorship/M +proprietress/MS +propriety/SM +propulsion/M +propulsive +prorate/DSG +prorogation/M +prorogue/GD +prosaic +prosaically +proscenium/SM +prosciutto/M +proscribe/DG +proscription/MS +prose/M +prosecute/DSXGN +prosecution/M +prosecutor/MS +proselyte/DSMG +proselytise/DRSZG +proselytiser/M +proselytism/M +prosocial +prosody/SM +prospect/MDGVS +prospective/Y +prospector/SM +prospectus/MS +prosper/GSD +prosperity/M +prosperous/Y +prostate/MS +prostheses +prosthesis/M +prosthetic +prostitute/MGNDS +prostitution/M +prostrate/GNXDS +prostration/M +prosy/RT +protactinium/M +protagonist/SM +protean +protect/GVSD +protected/U +protection/SM +protectionism/M +protectionist/MS +protective/PY +protectiveness/M +protector/MS +protectorate/MS +protege/SM +protegee/S +protein/SM +protestant/S +protestation/MS +protocol/MS +proton/SM +protoplasm/M +protoplasmic +prototype/MGS +prototypical +protozoa +protozoan/MS +protozoic +protract/GD +protrude/GDS +protrusile +protrusion/MS +protuberance/MS +protuberant +proud/RYT +prov/NB +provability/M +provably +prove/EAGDS +proved/U +proven/U +provenance/SM +provender/M +provenience/M +proverbial/Y +provide/DRSZG +provided/U +providence/M +provident/Y +providential/Y +provider/M +province/MS +provincial/SMY +provincialism/M +provisional/Y +proviso/SM +provocateur/S +provocative/PY +provocativeness/M +provoke/DRSZG +provoked/U +provoker/M +provoking/Y +provolone/M +provost/SM +prow/MS +prowess/M +prowl/MDRSZG +prowler/M +proximal +proximate +proximity/M +proxy/SM +prude/MS +prudence/M +prudent/Y +prudential/Y +prudery/M +prudish/YP +prudishness/M +prune/MZGDRS +pruner/M +prurience/M +prurient/Y +pry/ZTGDRSM +psalm/MS +psalmist/SM +psaltery/SM +psephologist/S +psephology +pseud/S +pseudo/S +pseudonym/SM +pseudonymous +pseudoscience/MS +pseudy +pshaw/MS +psi/SM +psittacosis/M +psoriasis/M +psst +psych/MDSG +psyche/M +psychedelia +psychedelic/SM +psychedelically +psychiatric +psychiatrist/SM +psychiatry/M +psychic/MS +psychical/Y +psycho/SM +psychoactive +psychoanalyse/DSG +psychoanalysis/M +psychoanalyst/SM +psychoanalytic +psychoanalytical/Y +psychobabble/M +psychodrama/MS +psychogenic +psychokinesis +psychokinetic +psychological/Y +psychologist/MS +psychology/SM +psychometric +psychoneuroses +psychoneurosis/M +psychopath/M +psychopathic +psychopathology +psychopaths +psychopathy/M +psychopharmacology +psychophysiology +psychos/S +psychosis/M +psychosomatic +psychotherapist/MS +psychotherapy/SM +psychotic/SM +psychotically +psychotropic/MS +psychs +pt/C +ptarmigan/MS +pterodactyl/MS +ptomaine/SM +pub/SM +pubertal +puberty/M +pubes/M +pubescence/M +pubescent +pubic +pubis/M +public/AM +publican/AMS +publication/ASM +publicise/GDS +publicist/MS +publicity/M +publicly +publish/AGDS +publishable +published/U +publisher/MS +publishing/M +puce/M +puck/ZMRS +pucker/MDG +puckish/YP +puckishness/M +pud/S +pudding/SM +puddle/DSMG +puddling/M +pudenda +pudendum/M +pudginess/M +pudgy/PRT +pueblo/SM +puerile +puerility/M +puerperal +puff/ZGMDRS +puffball/SM +puffer/M +puffin/SM +puffiness/M +puffy/PRT +pug/SM +pugilism/M +pugilist/SM +pugilistic +pugnacious/YP +pugnaciousness/M +pugnacity/M +puke/MGDS +pukka +pulchritude/M +pulchritudinous +pule/GDS +pull/ZGMDRS +pullback/MS +puller/M +pullet/SM +pulley/SM +pullout/MS +pullover/SM +pulmonary +pulp/GMDS +pulpiness/M +pulpit/SM +pulpwood/M +pulpy/RPT +pulsar/SM +pulsate/XGNDS +pulsation/M +pulse/AMGDS +pulverisation/M +pulverise/DSG +puma/MS +pumice/SM +pummel/S +pummelled +pummelling +pump/ZGMDRS +pumper/M +pumpernickel/M +pumpkin/MS +pun/SM +punch/MDRSZG +punchbag/S +puncheon/MS +puncher/M +punchline/S +punchy/TR +punctilio/M +punctilious/PY +punctiliousness/M +punctual/Y +punctuality/M +punctuate/GNDS +punctuation/M +puncture/DSMG +pundit/SM +punditry/M +pungency/M +pungent/Y +puniness/M +punish/BLGDS +punished/U +punishing/Y +punishment/MS +punitive/Y +punk/TMRS +punned +punnet/S +punning +punster/SM +punt/ZGMDRS +punter/M +puny/TRP +pup/SM +pupa/M +pupae +pupal +pupate/DSG +pupil/MS +pupped +puppet/MS +puppeteer/SM +puppetry/M +pupping +puppy/SM +purblind +purchase/DRSMZGB +purchaser/M +purdah/M +pure/PYTR +purebred/SM +puree/MDS +pureeing +pureness/M +purgative/SM +purgatorial +purgatory/SM +purge/MZGDRS +purger/M +purification/M +purifier/M +purify/NDRSZG +purine/MS +purism/M +purist/MS +puristic +puritan/SM +puritanical/Y +puritanism/M +purity/M +purl/GMDS +purlieu/SM +purloin/SGD +purple/MTRS +purplish +purport/SMDG +purported/Y +purpose/DSMYG +purposed/A +purposeful/YP +purposefulness/M +purposeless/PY +purr/GMDS +purse/MZGDRS +purser/M +pursuance/M +pursuant +pursue/ZGDRS +pursuer/M +pursuit/SM +purulence/M +purulent +purvey/DSG +purveyance/M +purveyor/SM +purview/M +pus/M +push/ZGMDRS +pushbike/S +pushcart/SM +pushchair/S +pusher/M +pushily +pushiness/M +pushover/MS +pushpin/S +pushy/TRP +pusillanimity/M +pusillanimous/Y +puss/MS +pussy/TRSM +pussycat/MS +pussyfoot/DSG +pustular +pustule/SM +put/ISM +putative +putout/MS +putrefaction/M +putrefactive +putrefy/GDS +putrescence/M +putrescent +putrid +putsch/MS +putt/ZGMDRS +putted/I +puttee/MS +putter/MDRZG +putterer/M +putting/I +putty/GDSM +putz/S +puzzle/MZGDRSL +puzzlement/M +puzzler/M +pvt +pwn/SGD +pyelonephritis +pygmy/SM +pyjama/S +pyjamas/M +pylon/SM +pylori +pyloric +pylorus/M +pyorrhoea/M +pyramid/GSMD +pyramidal +pyre/MS +pyrimidine/MS +pyrite/SM +pyrites/M +pyromania/M +pyromaniac/SM +pyrotechnic/S +pyrotechnical +pyrotechnics/M +pyruvate +python/SM +pyx/MS +pzazz +q +qr +qt/S +qty +qua +quack/GMDS +quackery/M +quad/MS +quadrangle/SM +quadrangular +quadrant/MS +quadraphonic +quadratic/MS +quadrature +quadrennial +quadrennium/MS +quadriceps/MS +quadrilateral/SM +quadrille/XMNS +quadrillion/M +quadriplegia/M +quadriplegic/SM +quadrivium/M +quadruped/MS +quadrupedal +quadruple/MGDS +quadruplet/MS +quadruplicate/MGNDS +quadruplication/M +quaff/GMDS +quagmire/SM +quahog/MS +quail/GMDS +quaint/PRYT +quaintness/M +quake/MGDS +quaky +qualification/EM +qualified/U +qualifier/SM +qualify/EGXNDS +qualitative/Y +quality/SM +qualm/MS +qualmish +quandary/SM +quango/S +quanta +quantifiable +quantification/M +quantifier/M +quantify/NDRSZG +quantisation +quantise +quantitation +quantitative/Y +quantity/SM +quantum/M +quarantine/MGDS +quark/MS +quarrel/SM +quarrelled +quarreller/MS +quarrelling +quarrelsome/P +quarrelsomeness/M +quarry/DSMG +quart/MS +quarter/SGMDY +quarterback/GMDS +quarterdeck/MS +quarterfinal/SM +quarterly/SM +quartermaster/MS +quarterstaff/M +quarterstaves +quartet/SM +quarto/MS +quartz/M +quasar/MS +quash/GDS +quasi +quatrain/MS +quaver/MDSG +quavery +quay/MS +quayside/S +queasily +queasiness/M +queasy/TPR +queen/GMDYS +queenly/RT +queer/PTGMDRYS +queerness/M +quell/GDS +quench/ZGDRSB +quenchable/U +quencher/M +quenchless +querulous/YP +querulousness/M +query/DSMG +ques +quesadilla/MS +quest/IFAMS +quested +questing +question/SMDRZGBJ +questionable/U +questionably/U +questioned/U +questioner/M +questioning/MY +questionnaire/SM +queue's +queue/CDS +queuing +quibble/DRSMZG +quibbler/M +quiche/SM +quick/MNRYXTP +quicken/DG +quickfire +quickie/SM +quicklime/M +quickness/M +quicksand/MS +quicksilver/M +quickstep/MS +quid/MS +quiescence/M +quiescent/Y +quiet/SMDNRYXTGP +quieten/DG +quietism +quietness/M +quietude/IEM +quietus/MS +quiff/S +quill/SM +quilt/SMDRZG +quilter/M +quilting/M +quin/S +quince/SM +quine/S +quinidine +quinine/M +quinoa +quinsy/M +quint/SM +quintessence/SM +quintessential/Y +quintet/SM +quintuple/MGDS +quintuplet/MS +quip/MS +quipped +quipping +quipster/SM +quire's +quire/IAS +quirk/SMDG +quirkiness/M +quirky/RTP +quirt/SM +quisling/SM +quit/S +quitclaim/MS +quite +quittance/M +quitter/SM +quitting +quiver/SMDG +quivery +quixotic +quixotically +quiz/M +quizzed +quizzer/SM +quizzes +quizzical/Y +quizzing +quo/H +quoin/SM +quoit/SMDG +quondam +quorate/I +quorum/SM +quot/B +quota/SM +quotability/M +quotation/SM +quote's +quote/UDSG +quotidian +quotient/SM +qwerty +r/S +rabbet/GMDS +rabbi/SM +rabbinate/M +rabbinic +rabbinical +rabbit/GMDS +rabble/MS +rabid/PY +rabidness/M +rabies/M +raccoon/MS +race/MZGDRS +racecourse/SM +racegoer/S +racehorse/MS +raceme/MS +racer/M +racetrack/MS +raceway/MS +racial/Y +racialism/M +racialist/MS +racily +raciness/M +racing/M +racism/M +racist/SM +rack/GMDS +racket/SMDG +racketeer/SMDG +racketeering/M +raconteur/SM +racquetball/SM +racy/PRT +rad/SM +radar/SM +radarscope/SM +raddled +radial/SMY +radian/S +radiance/M +radiant/Y +radiate/DSGNX +radiation/M +radiator/SM +radical/SMY +radicalisation/M +radicalise/DSG +radicalism/M +radicchio/M +radii +radio/MDGS +radioactive/Y +radioactivity/M +radiocarbon/M +radiogram/MS +radiographer/SM +radiography/M +radioisotope/MS +radiologist/SM +radiology/M +radioman/M +radiomen +radiometer/MS +radiometric +radiometry/M +radiophone/SM +radioscopy/M +radiosonde/SM +radiosurgery +radiotelegraph/M +radiotelegraphs +radiotelegraphy/M +radiotelephone/MS +radiotherapist/MS +radiotherapy/M +radish/MS +radium/M +radius/M +radon/M +raffia/M +raffish/YP +raffishness/M +raffle/DSMG +raft/ZGMDRS +rafter/M +rafting/M +rag/SGMD +raga/MS +ragamuffin/MS +ragbag/M +rage/MS +ragga +ragged/RYTP +raggedness/M +raggedy/RT +ragging +raging/Y +raglan/SM +ragout/SM +ragtag/S +ragtime/M +ragweed/M +ragwort +rah +raid/ZGMDRS +raider/M +rail's +rail/CGDS +railcard/S +railing/SM +raillery/SM +railroad/SZGMDR +railroader/M +railroading/M +railway/SM +railwayman +railwaymen +raiment/M +rain/GMDS +rainbow/SM +raincoat/SM +raindrop/SM +rainfall/SM +rainmaker/SM +rainmaking/M +rainproof +rainstorm/MS +rainwater/M +rainy/RT +raise/MZGDRS +raiser/M +raisin/SM +rajah/M +rajahs +rake/MGDS +rakish/YP +rakishness/M +rally/DSMG +ram/SM +ramble/DRSMZGJ +rambler/M +rambunctious/PY +rambunctiousness/M +ramekin/SM +ramie/M +ramification/M +ramify/DSXNG +ramjet/SM +rammed +ramming +ramp/GMS +rampage/DSMG +rampancy/M +rampant/Y +rampart/SM +ramrod/SM +ramrodded +ramrodding +ramshackle +ran/A +ranch/MDRSZG +rancher/M +ranching/M +rancid/P +rancidity/M +rancidness/M +rancorous/Y +rancour/M +rand/M +randiness/M +random/PSY +randomisation/M +randomise/DSG +randomness/MS +randy/RTP +ranee/MS +rang/ZR +range's +range/CGDS +rangefinder/S +ranger/M +ranginess/M +rangy/RTP +rank/TGJPMDRYS +ranking/M +rankle/DSG +rankness/M +ransack/SGD +ransom/SZGMDR +ransomer/M +ransomware +rant/ZGMDJRS +ranter/M +rap/SZGMDR +rapacious/PY +rapaciousness/M +rapacity/M +rape/MS +raper/M +rapeseed/M +rapid/PMRYTS +rapidity/M +rapidness/M +rapier/SM +rapine/M +rapist/SM +rapped +rappel/SM +rappelled +rappelling +rapper/SM +rapping +rapport/MS +rapporteur/S +rapprochement/SM +rapscallion/MS +rapt/YP +raptness/M +raptor/S +rapture/MS +rapturous/Y +rare/YTGPDRS +rarebit/MS +rarefaction/M +rarefy/GDS +rareness/M +rarity/SM +rascal/SMY +rash/ZTMRSYP +rasher/M +rashness/M +rasp/GMDS +raspberry/SM +raspy/RT +raster +rat/SM +ratatouille/M +ratbag/S +ratchet/GMDS +rate/JXMZGNDRS +rated/U +ratepayer/S +rater/M +rather +rathskeller/SM +ratification/M +ratifier/M +ratify/NDRSZG +rating/M +ratio/MS +ratiocinate/GNDS +ratiocination/M +ration/MDG +rational/SMY +rationale/MS +rationalisation/SM +rationalise/DSG +rationalism/M +rationalist/SM +rationalistic +rationality/M +ratlike +ratline/SM +rattan/SM +ratted +ratter/SM +ratting +rattle/DRSMZGJ +rattlebrain/SMD +rattler/M +rattlesnake/SM +rattletrap/SM +rattly +rattrap/SM +ratty/RT +raucous/YP +raucousness/M +raunchily +raunchiness/M +raunchy/TRP +ravage/DRSMZG +ravager/M +ravages/M +rave/JMZGDRS +ravel's +ravel/US +ravelled/U +ravelling/S +raven/MDSG +ravenous/Y +ravine/SM +raving/M +ravioli/SM +ravish/DRSZGL +ravisher/M +ravishing/Y +ravishment/M +raw/PTMR +rawboned +rawhide/M +rawness/M +ray/SM +rayon/M +raze/GDS +razor/MS +razorback/MS +razz/GMDS +razzmatazz/M +rcpt +rd +re/DSMYTGVJ +reach/MDSGB +reachable/U +reacquire/DSG +react/V +reactance +reactant/SM +reactionary/SM +reactivity +read/ZGMRBJS +readability/SM +reader/M +readership/SM +readily +readiness/M +reading/M +readmitted +readout/SM +ready/DRSTGP +reafforestation +real/TMRYPS +realisation/SM +realise/DSBG +realised/U +realism/M +realist/SM +realistic/U +realistically/U +realities +reality/UM +realm/MS +realness/M +realpolitik/M +realty/M +ream/ZGMDRS +reamer/M +reap/ZGDRS +reaper/M +rear/GMDS +rearguard/MS +rearmost +rearward/S +reason/SMDRZGB +reasonable/UP +reasonableness/UM +reasonably/U +reasoner/M +reasoning/M +reassuring/Y +reauthorise/S +reauthorized +reauthorizing +rebate/M +rebel/MS +rebellion/MS +rebellious/YP +rebelliousness/M +rebid/S +rebidding +rebirth/M +reboil/SDG +rebuild/SG +rebuke/DSMG +rebuking/Y +rebuttal/MS +rec'd +rec/M +recalcitrance/M +recalcitrant +recant/SDG +recantation/SM +recap/MS +recapitalisation +recce/S +recd +receipt/SMDG +receivables/M +receive/DRSZGB +receiver/M +receivership/M +recent/RYTP +recentness/M +receptacle/SM +reception/MS +receptionist/SM +receptive/PY +receptiveness/M +receptivity/M +receptor/SM +recess/MDSGV +recessional/SM +recessionary +recessive/SM +recherche +recidivism/M +recidivist/SM +recipe/SM +recipient/SM +reciprocal/SMY +reciprocate/GNDS +reciprocation/M +reciprocity/M +recital/SM +recitalist/MS +recitative/MS +reciter/SM +reckless/YP +recklessness/M +reckon/SJDG +reckoning/M +reclamation/M +recline/DRSZG +recliner/M +recluse/SMV +recognisable/U +recognisably/U +recognise/DRSGB +recognised/U +recombination +recompense/DSMG +recompilation +recompile/GD +recon/S +reconcile/GDSB +reconciliation/S +recondite +reconfiguration +reconfigure/D +reconnaissance/MS +reconnoitre/GDS +reconstruct/V +reconstructed/U +recorded/U +recorder/MS +recording/MS +recoup/DG +recourse/M +recoverable/U +recovery/SM +recreant/MS +recreational +recriminate/DSGNX +recrimination/M +recriminatory +recrudesce/GDS +recrudescence/M +recrudescent +recruit/LSMDRZG +recruiter/M +recruitment/M +rectal/Y +rectangle/MS +rectangular +rectifiable +rectification/M +rectifier/M +rectify/XNDRSZG +rectilinear +rectitude/M +recto/MS +rector/SM +rectory/SM +rectum/SM +recumbent +recuperate/GNVDS +recuperation/M +recur/S +recurred +recurrence/SM +recurring +recursion/S +recuse/DSG +recyclable/SM +recycling/M +red/PSM +redact/SDG +redaction/M +redactor/SM +redbird/SM +redbreast/MS +redbrick +redcap/SM +redcoat/SM +redcurrant/S +redden/SDG +redder +reddest +reddish +redeem/RZB +redeemer/M +redemption/M +redemptive +redhead/SMD +redialling +redirection +redistrict/GD +redivide/GDS +redlining/M +redneck/SM +redness/M +redo/G +redolence/M +redolent +redoubt/SBM +redoubtably +redound/SDG +redraw/SG +redskin/SM +reduce/DRSZG +reducer/M +reducible +reductase/M +reduction/SM +reductionist +reductive +redundancy/SM +redundant/Y +redwood/SM +redye/DS +reediness/M +reedy/RTP +reef/ZGMDRS +reefer/M +reek/GMDS +reel's +reel/UGDS +reeve/G +reexport/SDG +ref/SZM +refashion/DGS +refection/M +refectory/SM +refer/B +referee/DSM +refereeing +reference/MGDS +referendum/MS +referent/SM +referential +referral/SM +referred +referrer/SM +referring +reffed +reffing +refill/BM +refined/U +refinement/SM +refiner/SM +refinery/S +refitting +reflate/XDSGN +reflationary +reflect/GVSD +reflection/MS +reflective/Y +reflectivity +reflector/MS +reflexive/SMY +reflexivity +reflexology +reforge/DSG +reform/MZ +reformat/V +reformatory/SM +reformatting +reformed/U +reformist/S +refortify/GDS +refract/SGVD +refraction/M +refractory/SM +refrain/SGMD +refresh/ZGLDRS +refresher/M +refreshing/Y +refreshment/SM +refreshments/M +refrigerant/SM +refrigerate/DSGN +refrigeration/M +refrigerator/MS +refuge/SM +refugee/SM +refulgence/M +refulgent +refund/B +refurbishment/MS +refusal/MS +refutation/MS +refute/BDRSZG +refuter/M +reg +regal/DYG +regalement/M +regalia/M +regard/ESMDG +regardless +regards/M +regather/DGS +regatta/SM +regency/SM +regeneracy/M +regenerate/V +regex/M +regexp/S +reggae/M +regicidal +regicide/MS +regime/SM +regimen/SM +regiment/MDGS +regimental +regimentation/M +region/SM +regional/Y +regionalism/MS +register/GMDS +registered/U +registrant/MS +registrar/MS +registration/SM +registry/SM +regnant +regress/MDSGV +regression/MS +regret/SM +regretful/Y +regrettable +regrettably +regretted +regretting +regrind/GS +reground +regroup/DGS +regular/MYS +regularisation/M +regularise/DSG +regularity/SM +regulate/CDSGNV +regulated/U +regulation/CM +regulations +regulator/MS +regulatory +regurgitate/DSGN +regurgitation/M +rehab/MS +rehabbed +rehabbing +rehabilitate/GNVDS +rehabilitation/M +rehang/SDG +rehears/GD +rehearsal/MS +rehearsed/U +rehi +rehung +reify/NDSG +reign/MDSG +reimburse/BDSGL +reimbursement/MS +rein/GD +reindeer/M +reinforce/LGDS +reinforcement/SM +reinitialise +reinstall/DG +reinstatement/M +reinsurance +reiterate/V +reject/GSMD +rejection/SM +rejoice/JGDS +rejoicing/M +rejoinder/SM +rejuvenate/DSGN +rejuvenation/M +rel +relate/DRSBXZGNV +relatedness/M +relater/M +relation/M +relational +relationship/MS +relative/MYS +relativism/M +relativist/S +relativistic +relativity/M +relax/DRSZG +relaxant/MS +relaxation/SM +relaxer/M +relay/D +release/B +released/U +relegate/GNDS +relent/SGD +relentless/PY +relentlessness/M +relevance/M +relevancy/M +relevant/Y +reliability/UM +reliable/U +reliably/U +reliance/M +reliant +relic/MS +relief/SM +relieve/ZGDRS +reliever/M +religion/SM +religiosity +religious/MYP +religiousness/M +reline/DSG +relinquish/LDSG +relinquishment/M +reliquary/SM +relish/GMDS +relist/SGD +relive/DSBG +relocate/B +reluctance/M +reluctant/Y +rely/GDS +rem/M +remain/SGD +remainder/GMDS +remand/SGD +remapping +remark/B +remarkableness/M +remarkably +remarked/U +remediable +remedy/GDSM +remember/DG +remembered/U +remembrance/MS +reminder/M +reminisce/GDS +reminiscence/MS +reminiscent/Y +remiss/PY +remissness/M +remit/S +remittance/SM +remitted +remitting/U +remix/DSG +remnant/MS +remodelling +remonstrant/SM +remonstrate/DSG +remorse/M +remorseful/Y +remorseless/PY +remorselessness/M +remote/RSMYTP +remoteness/M +remould/SDG +removal/SM +remunerate/GNVXDS +remuneration/M +renaissance/MS +renal +renascence/S +rend/GS +render/SGMDJ +rendering/M +rendezvous/GMDS +rendition/MS +renegade/DSMG +renege/DRSZG +reneger/M +renew/DSBG +renewal/MS +rennet/M +rennin/M +renounce/LDSG +renouncement/M +renovate/DSXGN +renovation/M +renovator/MS +renown/MD +rent/ZGMDRS +rental/SM +renter/M +renunciation/SM +reopen/SDG +reorg/MDSG +rep/SM +repaint/GDS +repair/BZR +repairer/M +repairman/M +repairmen +reparable +reparation/MS +reparations/M +repartee/M +repatriate/XDSMGN +repatriation/M +repeat/SMDRZGB +repeatability +repeatable/U +repeatably +repeated/Y +repeater/M +repeating/M +repel/S +repelled +repellent/SM +repelling +repent/SDG +repentance/M +repentant/Y +repercussion/S +repertoire/MS +repertory/SM +repetition/MS +repetitious/YP +repetitiousness/M +repetitive/YP +repetitiveness/M +rephotograph/DG +replaceable +replant/GSD +replenish/LGDS +replenishment/M +replete/PDSGN +repleteness/M +repletion/M +replica/SM +replicate/DSGNX +replication/M +replicator/S +reportage/M +reported/Y +reportorial +reposeful +reposition +repository/SM +reprehend/DGS +reprehensibility/M +reprehensible +reprehensibly +reprehension/M +represent/GDS +representational +representative/MS +represented/U +repression/MS +repressive/PY +reprieve/DSMG +reprimand/GSMD +reprisal/SM +reprise/M +reproach/GMDSB +reproachful/Y +reprobate/MS +reproductive +reprogramming +reproving/Y +reptile/SM +reptilian/MS +republic/S +republicanism/M +repudiate/XGNDS +repudiation/M +repudiator/MS +repugnance/M +repugnant +repulsion/M +repulsive/YP +repulsiveness/M +repurchase/GDS +reputability/M +reputably/E +reputation/MS +repute/DSMGB +reputed/Y +request/GDR +requiem/SM +require/LDG +requirement/MS +requisite/XMNS +requisition/GMD +requital/M +requite/DRSZG +requited/U +requiter/M +reread/SG +rerecord/GDS +rerunning +resale/B +resample/GDS +resat +rescind/SDG +rescission/M +rescue/DRSMZG +rescuer/M +reseal/B +resemble/DSG +resend +resent/LSDG +resentful/YP +resentfulness/M +resentment/MS +reserpine/M +reservation/MS +reserved/UY +reservedness/M +reservist/SM +reservoir/SM +resetting +reshipping +residence/SM +residency/SM +resident/MS +residential +residua +residual/MS +residue/SM +residuum/M +resignation/SM +resigned/Y +resilience/M +resiliency/M +resilient/Y +resinous +resist/SMDRZG +resistance/SM +resistant/U +resistible +resistivity +resistless +resistor/MS +resit/S +resitting +resold +resole/DSG +resolute/PY +resoluteness/M +resolve/RBM +resolved/U +resonance/SM +resonant/Y +resonate/GDS +resonator/SM +resorption/M +resound/SGD +resounding/Y +resourceful/YP +resourcefulness/M +resp +respect/ESGVMD +respectability/M +respectable +respectably +respecter/MS +respectful/EY +respectfulness/M +respective/Y +respell/SGD +respiration/M +respirator/SM +respiratory +respire/DG +resplendence/M +resplendent/Y +respond/SGD +respondent/SM +response/MS +responsibility/SM +responsible +responsibly +responsive/UYP +responsiveness/UM +rest/GVMDS +restate/GDS +restaurant/SM +restaurateur/MS +restful/YP +restfuller +restfullest +restfulness/M +restitution/M +restive/YP +restiveness/M +restless/PY +restlessness/M +restoration/SM +restorative/SM +restorer/SM +restrained/U +restraint/MS +restrict/SDGV +restricted/U +restriction/MS +restrictive/YP +restrictiveness/M +restring/SG +restroom/SM +restructuring/SM +result/GSMD +resultant/SM +resume/DSMG +resumption/MS +resupply/DSG +resurgence/MS +resurgent +resurrect/GSD +resurrection/MS +resuscitate/GNDS +resuscitation/M +resuscitator/SM +retailer/MS +retain/SDRZG +retainer/M +retake/G +retaliate/DSGNVX +retaliation/M +retaliatory +retard/SMDRZG +retardant/SM +retardation/M +retarder/M +retch/DSG +reteach/GS +retention/M +retentive/YP +retentiveness/M +rethink/SGM +rethought +reticence/M +reticent/Y +reticulated +reticulation/MS +reticulum +retina/SM +retinal +retinoblastoma +retinue/SM +retiree/SM +retirement/MS +retort/GMD +retrace/GDS +retract/DBG +retractile +retraction/S +retrain/DGS +retread/D +retrenchment/MS +retribution/MS +retributive +retrieval/SM +retrieve/DRSMZGB +retriever/M +retro/MS +retroactive/Y +retrofire/GDS +retrofit/SM +retrofitted +retrofitting +retrograde/DSG +retrogress/GVDS +retrogression/M +retrorocket/MS +retrospect/MDSGV +retrospection/M +retrospective/MYS +retrovirus/MS +retsina/M +returnable/SM +returnee/SM +rev/ZVM +revamping/M +reveal/GJSD +revealed/U +revealing/Y +reveille/M +revel/MS +revelation/SM +revelatory +revelled +reveller/SM +revelling/S +revelry/SM +revenge/MGDS +revenuer/SM +reverb +reverberate/DSGNX +reverberation/M +revere/DSG +reverence/DSMG +reverend/SM +reverent/Y +reverential/Y +reverie/MS +revers/M +reversal/SM +reverse/Y +reversibility +reversible +reversibly +revert/GSD +revertible +revetment/SM +revile/DRSLZG +revilement/M +reviler/M +reviser/MS +revision/SM +revisionism/M +revisionist/SM +revival/MS +revivalism/M +revivalist/SM +revive/DSG +revivification/M +revocable +revoke/DSG +revolt/GD +revolting/Y +revolution/SM +revolutionary/SM +revolutionise/DSG +revolutionist/SM +revolve/BZGDRS +revolver/M +revue/MS +revulsion/M +revved +revving +rewarded/U +rewarding/U +rewarm/GSD +rewash/GDS +reweave/GS +rewedding +rewind/MB +rewound +rewrite/MGS +rhapsodic +rhapsodical +rhapsodise/GDS +rhapsody/SM +rhea/MS +rhenium/M +rheostat/SM +rhesus/MS +rhetoric/M +rhetorical/Y +rhetorician/SM +rheum/M +rheumatic/MS +rheumatically +rheumatism/M +rheumatoid +rheumy +rhinestone/SM +rhinitis/M +rhino/MS +rhinoceros/MS +rhinoplasty +rhinovirus/MS +rhizome/MS +rho/SM +rhodium/M +rhododendron/SM +rhomboid/SM +rhomboidal +rhombus/MS +rhubarb/MS +rhyme/MZGDRS +rhymer/M +rhymester/MS +rhythm/SM +rhythmic +rhythmical/Y +rial/MS +rib/SM +ribald +ribaldry/M +ribbed +ribber/SM +ribbing +ribbon/SM +riboflavin/M +rice/MZGDRS +ricer/M +rich/TMRSYP +richness/M +rick/GMDS +rickets/M +rickety/RT +rickrack/M +rickshaw/MS +ricochet/GMDS +ricotta/M +rid/S +riddance/M +ridden +ridding +riddle/DSMG +ride/MZGRS +rider/M +riderless +ridership/M +ridge/MGDS +ridgepole/SM +ridgy +ridicule/MGDS +ridiculous/YP +ridiculousness/M +riding/M +rife/TR +riff/GMDS +riffle/DSMG +riffraff/M +rifle/MZGDRS +rifleman/M +riflemen +rifler/M +rifling/M +rift/GMDS +rig/SM +rigatoni/M +rigged +rigger/SM +rigging/M +right/MDRYSPTG +righteous/UP +righteously +righteousness/UM +rightful/PY +rightfulness/M +rightism/M +rightist/SM +rightmost +rightness/M +righto +rightsize/DSG +rightward/S +rigid/YP +rigidity/M +rigidness/M +rigmarole/MS +rigorous/YP +rigorousness/M +rigour/SM +rile/GDS +rill/MS +rim/SGMD +rime/MS +rimless +rimmed +rimming +rind/MS +ring/ZGMDRJ +ringer/M +ringgit/MS +ringleader/MS +ringlet/MS +ringlike +ringmaster/MS +ringside/M +ringtone/SM +ringworm/M +rink/MS +rinse/MGDS +riot/ZGMDRS +rioter/M +rioting/M +riotous/PY +rip/SXTMNR +riparian +ripcord/MS +ripe/YP +ripen/DG +ripened/U +ripeness/M +ripoff/SM +riposte/MGDS +ripped +ripper/SM +ripping +ripple/DSMG +ripply +ripsaw/SM +riptide/MS +rise/JMZGRS +risen +riser/M +risibility/M +risible +rising/M +risk/GMDS +riskily +riskiness/M +risky/RPT +risotto/MS +risque +rissole/S +rite/MS +ritual/SMY +ritualised +ritualism/M +ritualistic +ritualistically +ritzy/RT +riv/ZNR +rival/MS +rivalled/U +rivalling +rivalry/SM +rive/CGDS +river/M +riverbank/SM +riverbed/MS +riverboat/SM +riverfront +riverside/MS +rivet/MDRSZG +riveter/M +riviera/S +rivulet/MS +riyal/MS +rm +roach/GMDS +road/IMS +roadbed/SM +roadblock/MDSG +roadhouse/SM +roadie/MS +roadkill/M +roadrunner/SM +roadshow/SM +roadside/SM +roadster/SM +roadway/SM +roadwork/SM +roadworthy +roam/ZGDRS +roamer/M +roaming/M +roan/MS +roar/ZGMDRS +roarer/M +roaring/M +roast/ZGMDRSJ +roaster/M +roasting/M +rob/S +robbed +robber/MS +robbery/SM +robbing +robe's +robe/EGDS +robin/MS +robocall/SGMD +robot/MS +robotic/S +robotics/M +robotise/GDS +robust/RYPT +robustness/M +rock/ZGMDRS +rockabilly/M +rockbound +rocker/M +rockery/S +rocket/MDSG +rocketry/M +rockfall/SM +rockiness/M +rocky/TRP +rococo/M +rod/SM +rode +rodent/MS +rodeo/MS +roe/SM +roebuck/SM +roentgen/MS +roger/GDS +rogue's +rogue/KS +roguery/M +roguish/YP +roguishness/M +roil/GDS +roister/ZGDRS +roisterer/M +role/MS +roll/MDRZGJS +rollback/SM +roller/M +rollerblading +rollerskating/M +rollick/SDG +rollicking/M +rollmop/S +rollover/SM +romaine/MS +roman/M +romance/MZGDRS +romancer/M +romantic/MS +romantically +romanticise/DSG +romanticism/M +romanticist/SM +romeo/MS +romp/MDRZGS +romper/M +rondo/SM +rood/MS +roof/MDRZGS +roofer/M +roofing/M +roofless +rooftop/SM +rook/MDGS +rookery/SM +rookie/SM +room/MDRZGS +roomer/M +roomette/SM +roomful/SM +roominess/M +roommate/SM +roomy/RTP +roost/SMDRZG +rooster/M +root/MDRZGS +rooter/M +rootkit/SM +rootless/P +rootlet/SM +rope/MZGDRS +roper/M +ropy/RT +rosary/SM +rose/MS +roseate +rosebud/SM +rosebush/MS +rosemary/M +rosette/SM +rosewater/M +rosewood/MS +rosily +rosin/SMDG +rosiness/M +roster/SM +rostrum/MS +rosy/RTP +rot/SM +rota/S +rotary/SM +rotate/DSGNX +rotation/M +rotational +rotatory +rote/M +rotgut/M +rotisserie/SM +rotogravure/MS +rotor/SM +rototiller/MS +rotted +rotten/TPRY +rottenness/M +rotter/S +rotting +rottweiler/S +rotund/P +rotunda/MS +rotundity/M +rotundness/M +rouble/SM +roue/MS +rouge/DSMG +rough/MDNRYXTGP +roughage/M +roughcast +roughen/GD +roughhouse/MGDS +roughneck/GMDS +roughness/M +roughs +roughshod +roulette/M +round/PSMDRYZTG +roundabout/SM +roundel/S +roundelay/MS +roundhouse/SM +roundish +roundness/M +roundup/MS +roundworm/SM +rouse/DSG +roust/SDG +roustabout/SM +rout/MRZS +route's +route/ADSG +routeing +router/M +routine/MYS +routinise/GDS +roux +rove/ZGDRS +rover/M +row/SZGMDR +rowan/S +rowboat/MS +rowdily +rowdiness/M +rowdy/PRSMT +rowdyism/M +rowel/SM +rowelled +rowelling +rower/M +rowing/M +rowlock/S +royal/SMY +royalist/SM +royalties/M +royalty/SM +rpm +rps +rt +rte +rub/SM +rubato/SM +rubbed +rubber/SM +rubberise/GDS +rubberneck/MDRSZG +rubbernecker/M +rubbery +rubbing/S +rubbish/MDSG +rubbishy +rubble/M +rubdown/SM +rube/MS +rubella/M +rubicund +rubidium/M +rubric/SM +ruby/RSMT +ruched +ruck/DGS +rucksack/MS +ruckus/MS +ructions +rudder/SM +rudderless +ruddiness/M +ruddy/RTP +rude/YTRP +rudeness/M +rudiment/SM +rudimentary +rue/DSMG +rueful/PY +ruefulness/M +ruff/MDYGS +ruffian/MYS +ruffle/DSMG +ruffled/U +rug/SM +rugby/M +rugged/PTRY +ruggedness/M +rugger +rugrat/SM +ruin/MDGS +ruination/M +ruinous/Y +rule/MZGJDRS +ruler/M +ruling/M +rum/SM +rumba/SMDG +rumble/DSJMG +rumbling/M +rumbustious +ruminant/MS +ruminate/XGNVDS +rumination/M +ruminative/Y +rummage/DSMG +rummer +rummest +rummy/M +rumour/SMDG +rumourmonger/SM +rump/MYS +rumple/DSMG +rumpus/MS +run/ASM +runabout/MS +runaround/SM +runaway/MS +rundown/SM +rune/MS +rung/MS +runic +runlet/SM +runnel/SM +runner/SM +running/M +runny/RT +runoff/SM +runt/MS +runtime +runty/RT +runway/SM +rupee/SM +rupiah/M +rupiahs +rupture/MGDS +rural +ruse/MS +rush/MDRSZG +rusher/M +rushy +rusk/MS +russet/SM +rust/MDGS +rustic/SM +rustically +rusticate/GDS +rustication/M +rusticity/M +rustiness/M +rustle/DRSJMZG +rustler/M +rustproof/SDG +rusty/RPNT +rut/SM +rutabaga/SM +ruthenium/M +rutherfordium/M +ruthless/YP +ruthlessness/M +rutted +rutting +rutty/RT +rye/M +s/NYXB +sabbath/M +sabbaths +sabbatical/SM +sable/MS +sabot/MS +sabotage/DSMG +saboteur/SM +sabra/MS +sabre/MS +sac/SM +saccharin/M +saccharine +sacerdotal +sachem/SM +sachet/SM +sack/ZGMDRJS +sackcloth/M +sacker/M +sackful/MS +sacking/M +sacra +sacrament/MS +sacramental +sacred/YP +sacredness/M +sacrifice/DSMG +sacrificial/Y +sacrilege/MS +sacrilegious/Y +sacristan/MS +sacristy/SM +sacroiliac/MS +sacrosanct/P +sacrosanctness/M +sacrum/M +sad/PY +sadden/SDG +sadder +saddest +saddle's +saddle/UDSG +saddlebag/MS +saddler/S +saddlery +sades +sadhu/S +sadism/M +sadist/SM +sadistic +sadistically +sadness/M +sadomasochism/M +sadomasochist/MS +sadomasochistic +safari/SGMD +safe/MYTPRS +safeguard/SMDG +safekeeping/M +safeness/M +safety/SM +safflower/MS +saffron/MS +sag/SM +saga/MS +sagacious/Y +sagacity/M +sage/MYTRS +sagebrush/M +sagged +sagging +saggy/RT +sago/M +saguaro/MS +sahib/MS +said/U +sail/GMDSJ +sailboard/MRZGS +sailboarder/M +sailboarding/M +sailboat/MS +sailcloth/M +sailfish/MS +sailing/M +sailor/SM +sailplane/MS +saint/MDYS +sainthood/M +saintlike +saintliness/M +saintly/PRT +saith +sake/M +saki/M +salaam/SMDG +salacious/PY +salaciousness/M +salacity/M +salad/MS +salamander/SM +salami/SM +salary/DSM +sale/AMS +saleable/U +saleroom/S +salesclerk/SM +salesgirl/SM +saleslady/SM +salesman/M +salesmanship/M +salesmen +salespeople/M +salesperson/MS +salesroom/S +saleswoman/M +saleswomen +salience/M +salient/SMY +saline/SM +salinity/M +saliva/M +salivary +salivate/GNDS +salivation/M +sallow/RTP +sallowness/M +sally/DSMG +salmon/SM +salmonella/M +salmonellae +salon/MS +saloon/SM +salsa/MS +salt's +salt/CTGDS +saltbox/MS +saltcellar/SM +salted/U +salter +saltine/SM +saltiness/M +saltpetre/M +saltshaker/SM +saltwater/M +salty/RTP +salubrious/I +salutary +salutation/MS +salutatorian/MS +salutatory +salute/DSMG +salvage/DSMG +salvageable +salvation/M +salve/MZGDRS +salver/M +salvo/MS +samarium/M +samba/MDSG +same/SP +sameness/M +samey +samizdat/S +samosa/S +samovar/SM +sampan/SM +sample/DRSMZGJ +sampler/M +sampling/M +samurai/SM +sanatorium/SM +sanctification/M +sanctify/GDSN +sanctimonious/YP +sanctimoniousness/M +sanctimony/M +sanction/GSMD +sanctioned/U +sanctity/M +sanctuary/SM +sanctum/SM +sand/ZGMDRS +sandal/SM +sandalwood/M +sandbag/SM +sandbagged +sandbagger/SM +sandbagging +sandbank/MS +sandbar/SM +sandblast/ZGMDRS +sandblaster/M +sandbox/MS +sandcastle/MS +sander/M +sandhog/SM +sandiness/M +sandlot/SM +sandlotter/MS +sandman/M +sandmen +sandpaper/GMDS +sandpiper/MS +sandpit/S +sandstone/M +sandstorm/SM +sandwich/MDSG +sandy/RTP +sane/IYTR +saneness/M +sang/S +sangfroid/M +sangria/M +sanguinary +sanguine/Y +sanitarian/SM +sanitarium/SM +sanitary/IU +sanitation/M +sanitise/ZGDRS +sanity/IM +sank +sans +sanserif +sap/SM +sapience/M +sapiens +sapient +sapless +sapling/MS +sapped +sapper/S +sapphire/SM +sappiness/M +sapping +sappy/PRT +saprophyte/SM +saprophytic +sapsucker/SM +sapwood/M +saran/M +sarcasm/MS +sarcastic +sarcastically +sarcoma/MS +sarcophagi +sarcophagus/M +sardine/MS +sardonic +sardonically +sarge/MS +sari/MS +sarky +sarnie/S +sarong/SM +sarsaparilla/MS +sartorial/Y +sash/MS +sashay/SGMD +sass/GMDS +sassafras/MS +sassy/RT +sat +satanic +satanical/Y +satanism/M +satanist/MS +satay +satchel/MS +sate/GDS +sateen/M +satellite/DSMG +satiable/I +satiate/GNDS +satiation/M +satiety/M +satin/M +satinwood/SM +satiny +satire/SM +satiric +satirical/Y +satirise/DSG +satirist/SM +satisfaction/EM +satisfactions +satisfactorily/U +satisfactory/U +satisfied/U +satisfy/EDSG +satisfying/U +satisfyingly +satori/M +satrap/SM +satsuma/S +saturate/DSGN +saturated/U +saturation/M +saturnine +satyr/MS +satyriasis/M +satyric +sauce/MZGDRS +saucepan/SM +saucer/M +saucily +sauciness/M +saucy/RPT +sauerkraut/M +sauna/MDSG +saunter/MDGS +saurian +sauropod/SM +sausage/MS +saute/MS +sauteed +sauteing +savage/DRSMYTGP +savageness/M +savagery/SM +savanna/MS +savant/SM +save/BJMZGDRS +saved/U +saver/M +saving/M +savings/M +saviour/MS +savour/SGMD +savouriness/M +savoury/TRSMP +savoy/MS +savvy/DRSMTG +saw/SGMD +sawbones/M +sawbuck/MS +sawdust/M +sawfly/SM +sawhorse/SM +sawmill/MS +sawyer/SM +sax/MS +saxifrage/SM +saxophone/MS +saxophonist/SM +say's +say/USG +saying/SM +scab/MS +scabbard/MS +scabbed +scabbiness/M +scabbing +scabby/PTR +scabies/M +scabrous +scad/MS +scaffold/SMG +scaffolding/M +scag/S +scagged +scalability +scalar/S +scalawag/MS +scald/MDSG +scale's +scale/CGDS +scaleless +scalene +scaliness/M +scallion/MS +scallop/GSMD +scalp/MDRSZG +scalpel/SM +scalper/M +scaly/RTP +scam/MS +scammed +scammer/S +scamming +scamp/MRSZ +scamper/GMD +scampi/M +scan/MS +scandal/SM +scandalise/DSG +scandalmonger/SM +scandalous/Y +scandium/M +scanned +scanner/SM +scanning +scansion/M +scant/CDSTG +scanter +scantily +scantiness/M +scantly +scantness/M +scanty/RSPT +scapegoat/SGMD +scapegrace/MS +scapula/M +scapulae +scapular/SM +scar/GMDS +scarab/SM +scarce/RYTP +scarceness/M +scarcity/SM +scare/MS +scarecrow/MS +scaremonger/SMG +scarf/MDSG +scarification/M +scarify/NDSG +scarily +scariness/M +scarlatina/M +scarlet/M +scarp/MDRSZG +scarper/DG +scarred +scarring +scarves +scary/RTP +scat/MS +scathing/Y +scatological +scatology/M +scatted +scatter/GJSMD +scatterbrain/SMD +scattering/M +scattershot +scatting +scatty +scavenge/ZGDRS +scavenger/M +scenario/MS +scenarist/MS +scene/MS +scenery/M +scenic +scenically +scent/CMS +scented/U +scenting +scentless +sceptic/MS +sceptical/Y +scepticism/M +sceptre/MS +sch +schadenfreude +schedule's +schedule/ADSG +scheduled/U +scheduler/S +schema +schemata +schematic/SM +schematically +schematise/GDS +scheme/DRSMZG +schemer/M +scherzo/MS +schilling/MS +schism/SM +schismatic/SM +schist/M +schistosomiasis +schizo/SM +schizoid/MS +schizophrenia/M +schizophrenic/SM +schlemiel/SM +schlep/SM +schlepped +schlepping +schlock/M +schmaltz/M +schmaltzy/TR +schmo/M +schmoes +schmooze/DRSZG +schmuck/MS +schnapps/M +schnauzer/SM +schnitzel/SM +schnook/MS +schnoz/MS +schnozzle/SM +scholar/MYS +scholarship/MS +scholastic +scholastically +scholasticism +school/SGMD +schoolbag/MS +schoolbook/SM +schoolboy/MS +schoolchild/M +schoolchildren/M +schooldays +schooled/U +schoolfellow/SM +schoolgirl/SM +schoolhouse/SM +schooling/M +schoolkid/S +schoolmarm/SM +schoolmarmish +schoolmaster/MS +schoolmate/SM +schoolmistress/MS +schoolroom/SM +schoolteacher/MS +schoolwork/M +schoolyard/SM +schooner/SM +schuss/GMDS +schussboomer/MS +schwa/MS +sci +sciatic +sciatica/M +science/FMS +scientific/U +scientifically/U +scientist/SM +scimitar/SM +scintilla/MS +scintillate/DSGN +scintillation/M +scion/MS +scissor/GDS +scleroses +sclerosis/M +sclerotic +scoff/MDRSZG +scoffer/M +scofflaw/MS +scold/MDSGJ +scolding/M +scoliosis/M +sconce/SM +scone/MS +scoop/MDSG +scoopful/MS +scoot/DRSZG +scooter/M +scope/MGDS +scorbutic +scorch/MDRSZG +scorcher/M +score/MZGDRS +scoreboard/SM +scorecard/MS +scorekeeper/MS +scoreless +scoreline/S +scorer/M +scorn/MDRSZG +scorner/M +scornful/Y +scorpion/MS +scotch/MDSG +scotchs +scoundrel/MS +scour/DRSZG +scourer/M +scourge/DSMG +scout/MDRSZG +scouting/M +scoutmaster/MS +scow/MS +scowl/MDSG +scrabble/MZGDRS +scrabbler/M +scrag/MS +scraggly/RT +scraggy/TR +scram/S +scramble's +scramble/UGDS +scrambler/MS +scrammed +scramming +scrap/MDRSZGJ +scrapbook/SM +scrape/SM +scraper/M +scrapheap/SM +scrapie +scrapped +scrapper/MS +scrapping +scrappy/TR +scrapyard/SM +scratch/GMDS +scratchcard/S +scratched/U +scratchily +scratchiness/M +scratchpad/S +scratchy/PRT +scrawl/SMDG +scrawly +scrawniness/M +scrawny/PTR +scream/SMDRZG +screamer/M +screaming/Y +scree/MDS +screech/GMDS +screechy/TR +screed/S +screen/SJMDG +screening/M +screenplay/SM +screensaver/SM +screenshot/S +screenwriter/SM +screenwriting/M +screw's +screw/UDSG +screwball/MS +screwdriver/MS +screwiness/M +screwworm/SM +screwy/PRT +scribal +scribble/MZGDRS +scribbler/M +scribe's +scribe/CKIS +scrim/MS +scrimmage/MGDS +scrimp/SDG +scrimshaw/MDGS +scrip/MS +script/FSMDG +scripted/U +scriptural +scripture/MS +scriptwriter/SM +scrivener/SM +scrod/M +scrofula/M +scrofulous +scrog/S +scroll/GSMD +scrooge/MS +scrota +scrotal +scrotum/M +scrounge/DRSZG +scrounger/M +scroungy/TR +scrub/MS +scrubbed +scrubber/SM +scrubbing +scrubby/RT +scruff/SM +scruffily +scruffiness/M +scruffy/RPT +scrum/S +scrumhalf +scrumhalves +scrummage/S +scrummed +scrumming +scrump/SGD +scrumptious/Y +scrumpy +scrunch/MDSG +scrunchy/SM +scruple/MGDS +scrupulosity/M +scrupulous/UPY +scrupulousness/UM +scrutineer/S +scrutinise/GDS +scrutiny/M +scuba/MDSG +scud/MS +scudded +scudding +scuff/MDSG +scuffle/MGDS +scull/MDRSZG +sculler/M +scullery/SM +scullion/SM +sculpt/SGD +sculptor/SM +sculptress/MS +sculptural +sculpture/DSMG +scum/MS +scumbag/MS +scummed +scumming +scummy/TR +scupper/MDGS +scurf/M +scurfy +scurrility/M +scurrilous/PY +scurrilousness/M +scurry/GDSM +scurvily +scurvy/TRM +scutcheon/SM +scuttle/MGDS +scuttlebutt/M +scuzzy/TR +scythe/DSMG +sea/SM +seabed/SM +seabird/MS +seaboard/SM +seaborne +seacoast/SM +seafarer/SM +seafaring/M +seafloor/SM +seafood/M +seafront/SM +seagoing +seagull/MS +seahorse/MS +seal's +seal/AUSDG +sealant/MS +sealer/SM +sealskin/M +seam/GMDNS +seaman/M +seamanship/M +seamless/Y +seamount/MS +seamstress/MS +seamy/RT +seance/SM +seaplane/SM +seaport/MS +sear/GMDS +search/AZGMDRS +searchable/U +searcher/AM +searching/Y +searchlight/MS +searing/Y +seascape/SM +seashell/SM +seashore/SM +seasick/P +seasickness/M +seaside/MS +season/SGMDBJ +seasonable/U +seasonably/U +seasonal/Y +seasonality +seasoned/U +seasoning/M +seat's +seat/UGDS +seating/M +seatmate/SM +seawall/MS +seaward/MS +seawater/M +seaway/SM +seaweed/MS +seaworthiness/M +seaworthy/P +sebaceous +seborrhoea/M +sebum +sec'y +sec/SM +secant/SM +secateurs +secede/DSG +secession/M +secessionist/MS +seclude/GDS +seclusion/M +seclusive +second/SLZGMDRY +secondarily +secondary/SM +seconder/M +secondhand +secondment/S +secrecy/M +secret/SGVMDY +secretarial +secretariat/MS +secretary/SM +secretaryship/M +secrete/XNS +secretion/M +secretive/PY +secretiveness/M +secretory +sect/IMS +sectarian/MS +sectarianism/M +sectary/SM +section/AESM +sectional/MS +sectionalism/M +sectioned +sectioning +sector/ESM +secular +secularisation/M +secularise/DSG +secularism/M +secularist/SM +secure/DRSYTG +secured/U +security/ISM +secy +sedan/MS +sedate/DRSYTGNVP +sedateness/M +sedation/M +sedative/SM +sedentary +sedge/M +sedgy +sediment/MS +sedimentary +sedimentation/M +sedition/M +seditious +seduce/DRSZG +seducer/M +seduction/SM +seductive/YP +seductiveness/M +seductress/MS +sedulous/Y +see/RSMZ +seed's +seed/AGDS +seedbed/MS +seedcase/MS +seeded/U +seeder/SM +seediness/M +seedless +seedling/MS +seedpod/MS +seedy/RPT +seeing/S +seek/ZGRS +seeker/M +seem/GDS +seeming/Y +seemliness/UM +seemly/URTP +seen/U +seep/GDS +seepage/M +seer/M +seersucker/M +seesaw/SMDG +seethe/DSG +segfault/S +segment/GSMD +segmentation/M +segmented/U +segregate/CDSGN +segregated/U +segregation/CM +segregationist/MS +segue/MGDS +segueing +seigneur/SM +seignior/SM +seine/MZGDRS +seiner/M +seismic +seismically +seismograph/ZMR +seismographer/M +seismographic +seismographs +seismography/M +seismologic +seismological +seismologist/MS +seismology/M +seize/GDS +seizure/MS +seldom +select/CSGVD +selection/SM +selective/Y +selectivity/M +selectman/M +selectmen +selectness/M +selector/MS +selenium/M +selenographer/MS +selenography/M +self/M +selfie/SM +selfish/UYP +selfishness/UM +selfless/PY +selflessness/M +selfsame +sell's +sell/AZGRS +seller's +selloff/MS +sellotape/DSG +sellout/MS +seltzer/MS +selvage/MS +selves +semantic/S +semantically +semanticist/MS +semantics/M +semaphore/DSMG +semblance/ASM +semen/M +semester/SM +semi/MS +semiannual/Y +semiarid +semiautomatic/MS +semibreve/S +semicircle/SM +semicircular +semicolon/MS +semiconducting +semiconductor/MS +semiconscious +semidarkness/M +semidetached +semifinal/SM +semifinalist/MS +semigloss/S +semimonthly/SM +seminal +seminar/MS +seminarian/SM +seminary/SM +semiofficial +semiotic/S +semiotics/M +semipermeable +semiprecious +semiprivate +semipro/S +semiprofessional/SM +semiquaver/S +semiretired +semiskilled +semisolid +semisweet +semitone/SM +semitrailer/MS +semitransparent +semitropical +semivowel/SM +semiweekly/SM +semiyearly +semolina/M +sempstress/MS +senate/SM +senator/MS +senatorial +send/ZGRS +sender/M +sendoff/MS +senescence/M +senescent +senile +senility/M +senior/SM +seniority/M +senna/M +senor/MS +senora/SM +senorita/SM +sensation/MS +sensational/Y +sensationalise/GDS +sensationalism/M +sensationalist/MS +sense/MGDS +senseless/PY +senselessness/M +sensibilities +sensibility/IM +sensible/P +sensibleness/M +sensibly/I +sensitisation/CM +sensitise/CDSG +sensitive/SMYP +sensitiveness/M +sensitivities +sensitivity/IM +sensor/SM +sensory +sensual/Y +sensualist/SM +sensuality/M +sensuous/YP +sensuousness/M +sent/FAU +sentence/MGDS +sententious/Y +sentience/IM +sentient/I +sentiment/SM +sentimental/Y +sentimentalisation/M +sentimentalise/GDS +sentimentalism/M +sentimentalist/MS +sentimentality/M +sentinel/MS +sentry/SM +sepal/MS +separability/IM +separable +separably/I +separate/XMYGNVDSP +separateness/M +separation/M +separatism/M +separatist/MS +separator/MS +sepia/M +sepsis/M +septa +septal +septet/SM +septic +septicaemia/M +septicaemic +septuagenarian/MS +septum/M +sepulchral +sepulchre/MGDS +seq +sequel/SM +sequence/MZGDRS +sequencing/M +sequential/FY +sequester/SDG +sequestrate/XGNDS +sequestration/M +sequin/SMD +sequinned +sequitur +sequoia/MS +seraglio/MS +serape/SM +seraph/M +seraphic +seraphs +sere/TR +serenade/MGDS +serendipitous +serendipity/M +serene/RPYT +sereneness/M +serenity/M +serf/MS +serfdom/M +serge/M +sergeant/MS +serial/SMY +serialisation/SM +serialise/GDSB +series/M +serif/MS +serigraph/M +serigraphs +serine +serious/PY +seriousness/M +sermon/SM +sermonise/GDS +serology/M +serotonin +serous +serpent/MS +serpentine/M +serrate/XND +serration/M +serried +serum/MS +servant/MS +serve's/AF +serve/FACGDS +server/SM +servery/S +service/EMS +serviceability/M +serviceable +serviced +serviceman/M +servicemen +servicewoman/M +servicewomen +servicing +serviette/MS +servile +servility/M +serving's +servings +servitor/MS +servitude/M +servo/MS +servomechanism/SM +servomotor/MS +sesame/SM +sesquicentennial/MS +session/MS +set/AISM +setback/MS +setscrew/SM +setsquare/S +sett/BJZGRS +settee/MS +setter/M +setting/M +settle's +settle/AUGDS +settlement/AM +settlements +settler/SM +setup/MS +seven/MHS +seventeen/SMH +seventeenth/M +seventeenths +seventh/M +sevenths +seventieth/M +seventieths +seventy/SMH +sever/ETGDS +several/MY +severance/SM +severe/YPR +severeness/M +severity/M +sew/ASGD +sewage/M +sewer/MS +sewerage/M +sewing/M +sewn/A +sex/GMDS +sexagenarian/SM +sexily +sexiness/M +sexism/M +sexist/MS +sexless +sexologist/SM +sexology/M +sexpot/MS +sextant/SM +sextet/MS +sexting +sexton/MS +sextuplet/SM +sexual/Y +sexuality/M +sexy/PTR +sf +sh +shabbily +shabbiness/M +shabby/PTR +shack/MDSG +shackle's +shackle/UGDS +shad/GMDSJ +shade/MS +shadily +shadiness/M +shading/M +shadow/SGMD +shadowbox/GDS +shadowy/RT +shady/RPT +shaft/MDSG +shag/MS +shagged +shagginess/M +shagging +shaggy/TPR +shah/M +shahs +shake/MZGRS +shakedown/SM +shaken/U +shakeout/MS +shaker/M +shakeup/MS +shakily +shakiness/M +shaky/RPT +shale/M +shall +shallot/MS +shallow/TPMRYS +shallowness/M +shalom +shalt +sham/GMDS +shaman/SM +shamanic +shamanism +shamanistic +shamble/MGDS +shambles/M +shambolic +shame/MS +shamefaced/Y +shameful/PY +shamefulness/M +shameless/YP +shamelessness/M +shammed +shamming +shampoo/ZGMDRS +shampooer/M +shamrock/MS +shan't +shandy/S +shanghai/DSG +shank/MS +shantung/M +shanty/SM +shantytown/SM +shape's +shape/AGDS +shaped/U +shapeless/YP +shapelessness/M +shapeliness/M +shapely/PTR +shard/MS +share/MZGDRS +shareable +sharecrop/S +sharecropped +sharecropper/MS +sharecropping +shareholder/SM +shareholding/S +sharer/M +shareware/M +sharia/M +shariah +shark/MDSG +sharkskin/M +sharp/MDNRYSPXZTG +sharpen/ADGS +sharpener/MS +sharper/M +sharpie/MS +sharpish +sharpness/M +sharpshooter/SM +sharpshooting/M +shatter/GMDS +shatterproof +shave/MZGDRSJ +shaven/U +shaver/M +shaving/M +shawl/MS +shay/MS +she'd +she'll +she/DSM +sheaf/M +shear/MDRSZG +shearer/M +sheath/JM +sheathe/UGDS +sheathing/M +sheaths +sheave/DSMG +shebang/MS +shebeen/S +shed/MS +shedding +sheen/M +sheeny/TR +sheep/M +sheepdog/MS +sheepfold/SM +sheepherder/MS +sheepish/YP +sheepishness/M +sheepskin/MS +sheer/MDRSPTG +sheerness/M +sheet/MSG +sheeting/M +sheetlike +sheikdom/MS +sheikh/M +sheikhs +sheila/S +shekel/SM +shelf/M +shell/MDRSG +shellac/MS +shellacked +shellacking/MS +shellfire/M +shellfish/MS +shelter/GMDS +shelve/GDS +shelving/M +shenanigan/SM +shepherd/SMDG +shepherdess/MS +sherbet/SM +sheriff/SM +sherry/SM +shew/GDS +shewn +shh +shiatsu/M +shibboleth/M +shibboleths +shield/MDGS +shift/GMDS +shiftily +shiftiness/M +shiftless/PY +shiftlessness/M +shifty/RPT +shiitake/SM +shill/GMDSJ +shillelagh/M +shillelaghs +shilling/M +shim/MS +shimmed +shimmer/SMDG +shimmery +shimming +shimmy/DSMG +shin/ZGMDRS +shinbone/SM +shindig/SM +shine/MS +shiner/M +shingle/DSMG +shinguard/M +shininess/M +shinned +shinning +shinny/DSG +shinsplints/M +shiny/TRP +ship's +ship/ALS +shipboard/MS +shipbuilder/SM +shipbuilding/M +shipload/SM +shipmate/SM +shipment/AM +shipments +shipowner/MS +shipped/A +shipper/SM +shipping/M +shipshape +shipwreck/GMDS +shipwright/MS +shipyard/SM +shire/MS +shirk/ZGDRS +shirker/M +shirr/GMDSJ +shirring/M +shirt/GMDS +shirtfront/SM +shirting/M +shirtless +shirtsleeve/SM +shirttail/SM +shirtwaist/MS +shirty +shit/SM! +shitfaced/! +shithead/S! +shitload/! +shitted/! +shitting/! +shitty/RT! +shiv/ZMRS +shiver/MDG +shivery +shoal/GMDS +shoat/MS +shock/ZGMDRS +shocker/M +shocking/Y +shockproof +shod/U +shoddily +shoddiness/M +shoddy/PRMT +shoe/MS +shoehorn/GMDS +shoeing +shoelace/MS +shoemaker/SM +shoeshine/SM +shoestring/SM +shoetree/MS +shogun/MS +shogunate/M +shone +shoo/GDS +shook +shoot/ZGMRSJ +shooter/M +shooting/M +shootout/MS +shop/MS +shopaholic/MS +shopfitter/S +shopfitting +shopfront/S +shopkeeper/MS +shoplift/DRZGS +shoplifter/M +shoplifting/M +shoppe/MZGDRS +shopper/M +shopping/M +shoptalk/M +shopworn +shore/MGDS +shorebird/SM +shoreline/MS +shoring/M +short/XTGMDNRYSP +shortage/MS +shortbread/M +shortcake/MS +shortchange/DSG +shortcoming/MS +shortcrust +shortcut/MS +shorten/JGD +shortening/M +shortfall/MS +shorthand/MD +shorthorn/MS +shortish +shortlist/DGS +shortness/M +shortsighted/PY +shortsightedness/M +shortstop/MS +shortwave/MS +shorty/SM +shot/MS +shotgun/SM +shotgunned +shotgunning +should +should've +shoulder/MDGS +shouldn't +shout/ZGMDRS +shouter/M +shove/MGDS +shovel/MS +shovelful/SM +shovelled +shovelling +show/JZGMDRS +showbiz/M +showboat/MDGS +showcase/MGDS +showdown/MS +shower/MDG +showerproof +showery +showgirl/MS +showground/S +showily +showiness/M +showing/M +showjumping +showman/M +showmanship/M +showmen +shown +showoff/SM +showpiece/SM +showplace/SM +showroom/MS +showstopper/MS +showstopping +showtime +showy/TRP +shpt +shrank +shrapnel/M +shred/MS +shredded +shredder/MS +shredding +shrew/MS +shrewd/RYPT +shrewdness/M +shrewish +shriek/MDSG +shrift/M +shrike/MS +shrill/DRSPTG +shrillness/M +shrilly +shrimp/MDRSZG +shrine/MS +shrink/MSBG +shrinkage/M +shrive/GDS +shrivel/S +shrivelled +shrivelling +shriven +shroud/GMDS +shrub/MS +shrubbery/SM +shrubby/RT +shrug/MS +shrugged +shrugging +shrunk/N +shtick/MS +shuck/GMDS +shucks/S +shudder/MDSG +shuffle/AMGDS +shuffleboard/SM +shuffler/SM +shun/S +shunned +shunning +shunt/MSDG +shush/DSG +shut/S +shutdown/SM +shuteye/M +shutoff/SM +shutout/SM +shutter/SMDG +shutterbug/MS +shutting +shuttle/DSMG +shuttlecock/GMDS +shy/TGDRSMY +shyer +shyest +shyness/M +shyster/SM +sibilant/SM +sibling/SM +sibyl/MS +sibylline +sic/S +sicced +siccing +sick/PXTGDNRYS +sickbay/S +sickbed/SM +sicken/DG +sickening/Y +sickie/MS +sickish +sickle/MS +sickly/RT +sickness/MS +sicko/MS +sickout/SM +sickroom/MS +side's +side/AGDS +sidearm/SM +sidebar/SM +sideboard/SM +sideburns/M +sidecar/SM +sidekick/SM +sidelight/MS +sideline/DSMG +sidelong +sideman/M +sidemen +sidepiece/MS +sidereal +sidesaddle/MS +sideshow/MS +sidesplitting +sidestep/MS +sidestepped +sidestepping +sidestroke/DSMG +sideswipe/DSMG +sidetrack/SMDG +sidewalk/MS +sidewall/MS +sideways +sidewinder/SM +siding/MS +sidle/MGDS +siege/MS +sienna/M +sierra/MS +siesta/MS +sieve/MGDS +sift/ZGDRS +sifted/U +sifter/M +sigh/GMD +sighs +sight/GMDYSJ +sighting/M +sightless +sightly/UTR +sightread +sightseeing/M +sightseer/MS +sigma/MS +sign's/C +sign/AFCGDS +signage/M +signal/MYS +signalisation +signalise/GDS +signalization's +signalled +signaller/MS +signalling +signalman/M +signalmen +signatory/SM +signature/MS +signboard/MS +signed/U +signer/CMS +signet/MS +significance/IM +significant/IY +signification/M +signify/XDSNG +signing's/C +signings +signor/FMS +signora/SM +signore +signori +signorina/MS +signorine +signpost/GSMD +silage/M +silence/DRSMZG +silencer/M +silent/MRYST +silhouette/DSMG +silica/M +silicate/MS +siliceous +silicon/SM +silicone/M +silicosis/M +silk/MNS +silkily +silkiness/M +silkscreen/SM +silkworm/MS +silky/TRP +sill/MS +silliness/M +silly/TRSMP +silo/MS +silt/GMDS +silty/TR +silver/GMDS +silverfish/MS +silversmith/M +silversmiths +silverware/M +silvery +sim/SM +simian/MS +similar/Y +similarity/ESM +simile/MS +similitude/EM +simmer/GMDS +simonise +simonized +simonizes +simonizing +simony/M +simpatico +simper/GMDS +simpering/Y +simple/TRP +simpleminded +simpleness/M +simpleton/SM +simplex +simplicity/M +simplification/M +simplify/DSXNG +simplistic +simplistically +simply +simulacra +simulacrum/S +simulate/EDSGN +simulation/EM +simulations +simulator/EMS +simulcast/GMDS +simultaneity/M +simultaneous/Y +sin/ASM +since +sincere/IYT +sincerer +sincerity/IM +sine/MS +sinecure/MS +sinew/MS +sinewy +sinful/PY +sinfulness/M +sing/BZGMDRYS +singalong/S +singe/MS +singeing +singer/M +singing/M +single/PMGDS +singleness/M +singles/M +singlet/S +singleton/SM +singletree/SM +singsong/SMDG +singular/SMY +singularity/SM +sinister +sink/BZGMRS +sinkable/U +sinker/M +sinkhole/SM +sinless +sinned +sinner/MS +sinning +sinology +sinuosity/M +sinuous/Y +sinus/MS +sinusitis/M +sinusoidal +sip/SM +siphon/GMDS +sipped +sipper/SM +sipping +sir/SXMN +sire/CMGDS +siren/M +sirloin/SM +sirocco/SM +sirrah +sirree/M +sis/MS +sisal/M +sissified +sissy/RSMT +sister/ASM +sisterhood/MS +sisterliness/M +sisterly/P +sit/S +sitar/SM +sitarist/MS +sitcom/SM +site/MGDS +sitemap/SM +sitter/SM +sitting/SM +situ +situate/DSXGN +situation/M +situational +six/MSH +sixfold +sixpence/MS +sixshooter/M +sixteen/SMH +sixteenth/M +sixteenths +sixth/M +sixths +sixtieth/M +sixtieths +sixty/SMH +size's +size/AGDS +sizeable +sizer +sizing/M +sizzle/DRSMZG +ska/M +skate/MZGDRS +skateboard/MDRSZG +skateboarder/M +skateboarding/M +skater/M +skating/M +skedaddle/MGDS +skeet/ZMR +skein/MS +skeletal +skeleton/SM +sketch/MDRSZG +sketchbook/S +sketcher/M +sketchily +sketchiness/M +sketchpad/S +sketchy/RTP +skew/MDRZGS +skewbald/S +skewer/MDG +ski/SZGMDR +skibob/S +skid/MS +skidded +skidding +skidpan/S +skier/M +skiff/SM +skiffle +skiing/M +skilful/YP +skilfulness/M +skill's +skill/CSD +skilled/U +skillet/SM +skim/MS +skimmed +skimmer/SM +skimming +skimp/SDG +skimpily +skimpiness/M +skimpy/RTP +skin/MS +skincare/M +skinflint/MS +skinful +skinhead/MS +skinless +skinned +skinniness/M +skinning +skinny/RMTP +skint +skintight +skip/MS +skipped +skipper/SMDG +skipping +skirmish/ZGMDRS +skirt/SMDG +skit/MS +skitter/GSD +skittish/YP +skittishness/M +skittle/S +skive/DRSZG +skivvy/DSMG +skoal/SM +skua/S +skulduggery/M +skulk/SDRZG +skulker/M +skull/SM +skullcap/MS +skunk/SMDG +sky/GSM +skycap/SM +skydive/DRSZG +skydiver/M +skydiving/M +skyjack/JZGSDR +skyjacker/M +skyjacking/M +skylark/SGMD +skylight/MS +skyline/SM +skyrocket/GSMD +skyscraper/SM +skyward/S +skywriter/SM +skywriting/M +slab/MS +slabbed +slabbing +slack/PXZTGMDNRYS +slacken/DG +slacker/M +slackness/M +slacks/M +slag/MS +slagged +slagging +slagheap/S +slain +slake/GDS +slalom/MSDG +slam/MS +slammed +slammer/SM +slamming +slander/MZGDRS +slanderer/M +slanderous +slang/M +slangy/RT +slant/MSDG +slanting/Y +slantwise +slap/MS +slapdash +slaphappy +slapped +slapper/S +slapping +slapstick/M +slash/MDRSZG +slasher/M +slat/MDGS +slate/SM +slather/SDG +slatted +slattern/SMY +slaughter/MDRZGS +slaughterer/M +slaughterhouse/MS +slave/DRSMZG +slaveholder/MS +slaver/MDG +slavery/M +slavish/PY +slavishness/M +slaw/M +slay/DRZGJS +slayer/M +slaying/M +sleaze/SM +sleazebag/S +sleazeball/S +sleazily +sleaziness/M +sleazy/PRT +sled/MS +sledded +sledder/SM +sledding +sledge/DSMG +sledgehammer/GSMD +sleek/SDRYTGP +sleekness/M +sleep/SMRZG +sleeper/M +sleepily +sleepiness/M +sleepless/PY +sleeplessness/M +sleepover/SM +sleepwalk/ZGSDR +sleepwalker/M +sleepwalking/M +sleepwear/M +sleepy/RPT +sleepyhead/MS +sleet/SMDG +sleety +sleeve/DSM +sleeveless +sleigh/MDG +sleighs +sleight/SM +slender/PRT +slenderise/DSG +slenderness/M +slept +sleuth/MG +sleuths +slew/MDGS +slice/DRSMZG +slicer/M +slick/SMDRYZTGP +slicker/M +slickness/M +slid +slide/RSMZG +slider/M +slideshow/MS +slight/SMDRYTGP +slightness/M +slim/PS +slime/M +sliminess/M +slimline +slimmed +slimmer/S +slimmest +slimming/M +slimness/M +slimy/RTP +sling/SMG +slingback/S +slingshot/SM +slink/SG +slinky/RT +slip/MS +slipcase/MS +slipcover/MS +slipknot/MS +slippage/MS +slipped +slipper/SM +slipperiness/M +slippery/PRT +slipping +slippy +slipshod +slipstream/SM +slipway/SM +slit/MS +slither/SGMD +slithery +slitter +slitting +sliver/GSMD +slob/MS +slobbed +slobber/MDSG +slobbery +slobbing +sloe/MS +slog/MS +slogan/SM +sloganeering +slogged +slogging +sloop/SM +slop/MDGS +slope/SM +slopped +sloppily +sloppiness/M +slopping +sloppy/PTR +slops/M +slosh/DSG +slot/MS +sloth/M +slothful/YP +slothfulness/M +sloths +slotted +slotting +slouch/ZGMDRS +sloucher/M +slouchy/TR +slough/GMD +sloughs +sloven/SMY +slovenliness/M +slovenly/PTR +slow/DRYTGSP +slowcoach/S +slowdown/SM +slowness/M +slowpoke/SM +sludge/M +sludgy/RT +slue/MGDS +slug/MS +sluggard/MS +slugged +slugger/SM +slugging +sluggish/PY +sluggishness/M +sluice/DSMG +slum/MS +slumber/GSMD +slumberous +slumdog/SM +slumlord/MS +slummed +slummer +slumming +slummy/RT +slump/SMDG +slung +slunk +slur/MS +slurp/SMDG +slurred +slurring +slurry/M +slush/M +slushiness/M +slushy/RPT +slut/MS +sluttish +slutty/RT +sly/Y +slyer +slyest +slyness/M +smack/SMDRZG +smacker/M +small/SMRTP +smallholder/S +smallholding/S +smallish +smallness/M +smallpox/M +smarmy/RT +smart/SMDNRYXTGP +smarten/DG +smartness/M +smartphone/SM +smarts/M +smartwatch/MS +smarty/SM +smartypants/M +smash/MDRSZG +smasher/M +smashup/SM +smattering/MS +smear/SMDG +smeary/RT +smell/SMDG +smelliness/M +smelly/RPT +smelt/SMDRZG +smelter/M +smidgen/MS +smilax/M +smile/DSMG +smiley/SM +smiling/Y +smirch/GMDS +smirk/SMDG +smite/SG +smith/M +smithereens/M +smiths +smithy/SM +smitten +smock/SMDG +smocking/M +smog/MS +smoggy/RT +smoke/DRSMZG +smokehouse/MS +smokeless +smoker/M +smokescreen/SM +smokestack/SM +smokey +smokiness/M +smoking/M +smoky/RTP +smooch/MDSG +smoochy +smooth/PDRYTG +smoothie/MS +smoothness/M +smooths +smorgasbord/SM +smote +smother/GSMD +smoulder/GMDS +smudge/DSMG +smudgy/TR +smug/YP +smugger +smuggest +smuggle/ZGDRS +smuggler/M +smuggling/M +smugness/M +smurf/S +smut/MS +smuttiness/M +smutty/TRP +snack/SMDG +snaffle/DSMG +snafu/SM +snag/MS +snagged +snagging +snail/SMDG +snake/DSMG +snakebite/MS +snakelike +snakeskin +snaky/RT +snap's +snap/US +snapdragon/SM +snapped/U +snapper/MS +snappily +snappiness/M +snapping/U +snappish/YP +snappishness/M +snappy/TRP +snapshot/SM +snare/DSMG +snarf/SDG +snark/S +snarky/TR +snarl's +snarl/USDG +snarling/Y +snarly/TR +snatch/ZGMDRS +snatcher/M +snazzily +snazzy/TR +sneak/SMDRZG +sneaker/M +sneakily +sneakiness/M +sneaking/Y +sneaky/TRP +sneer/SJMDG +sneering/Y +sneeze/DSMG +snick/SDRZG +snicker/MDG +snide/RYT +sniff/SMDRZG +sniffer/M +sniffle/DSMG +sniffy/RT +snifter/SM +snip/MDRZGS +snipe/SM +sniper/M +snipped +snippet/SM +snipping +snippy/RT +snips/M +snit/MS +snitch/MDSG +snivel/SM +snivelled +sniveller/SM +snivelling +snob/MS +snobbery/M +snobbish/PY +snobbishness/M +snobby/RT +snog/S +snogged +snogging +snood/SM +snooker/MDSG +snoop/SMDRZG +snooper/M +snoopy/TR +snoot/SM +snootily +snootiness/M +snooty/PTR +snooze/DSMG +snore/DRSMZG +snorer/M +snorkel/ZMRS +snorkeler/M +snorkeling's +snorkelled +snorkelling +snort/SMDRZG +snorter/M +snot/MS +snottily +snottiness/M +snotty/TPR +snout/SM +snow/MDGS +snowball/GSMD +snowbank/SM +snowbird/SM +snowblower/MS +snowboard/ZGMDRS +snowboarder/M +snowboarding/M +snowbound +snowdrift/SM +snowdrop/SM +snowfall/SM +snowfield/SM +snowflake/SM +snowiness/M +snowline +snowman/M +snowmen +snowmobile/DSMG +snowplough/M +snowploughs +snowplowed +snowplowing +snowshoe/DSM +snowshoeing +snowstorm/SM +snowsuit/SM +snowy/PRT +snub/MS +snubbed +snubbing +snuff/SMDRYZG +snuffbox/MS +snuffer/M +snuffle/MGDS +snug/MYSP +snugged +snugger +snuggest +snugging +snuggle/MGDS +snugness/M +so +soak/MDGSJ +soaking/M +soap/MDGS +soapbox/MS +soapiness/M +soapstone/M +soapsuds/M +soapy/RPT +soar/MDGS +sob/SM +sobbed +sobbing/Y +sober/SDRYPTG +soberness/M +sobriety/IM +sobriquet/SM +soc +soccer/M +sociability/M +sociable/SM +sociably +social/SMY +socialisation/M +socialise/DSG +socialism/M +socialist/SM +socialistic +socialite/SM +societal +society/SM +socioeconomic +socioeconomically +sociological/Y +sociologist/SM +sociology/M +sociopath/M +sociopaths +sociopolitical +sock/MDGS +socket/SM +sockeye/SM +sod/SM +soda/MS +sodded +sodden/Y +sodding +sodium/M +sodomise/GDS +sodomite/MS +sodomy/M +soever +sofa/MS +soft/NRYXTP +softback +softball/MS +softbound +softcover +soften/DRZG +softener/M +softhearted +softness/M +software/M +softwood/SM +softy/SM +soggily +sogginess/M +soggy/RTP +soigne +soignee +soil/MDGS +soiled/U +soiree/SM +sojourn/ZGMDRS +sojourner/M +sol/SM +solace/DSMG +solar +solaria +solarium/M +sold +solder/ZGSMDR +solderer/M +soldier/MDYSG +soldiery/M +sole/FSDGM +solecism/SM +solely +solemn/PTRY +solemness/M +solemnify/DSG +solemnisation/M +solemnise/DSG +solemnity/SM +solemnness/M +solenoid/MS +solicit/GDS +solicitation/SM +solicited/U +solicitor/SM +solicitous/PY +solicitousness/M +solicitude/M +solid/PSMRYT +solidarity/M +solidi +solidification/M +solidify/DSNG +solidity/M +solidness/M +solidus/M +soliloquies +soliloquise/DSG +soliloquy/M +solipsism/M +solipsistic +solitaire/MS +solitariness/M +solitary/SMP +solitude/M +solo/MDGS +soloist/MS +solstice/MS +solubility/IM +soluble/MS +solute's +solute/AXN +solutes +solution's/AE +solvable/IU +solve/EADSG +solved/U +solvency/IM +solvent/IMS +solver/SM +somatic +somatosensory +sombre/PY +sombreness/M +sombrero/MS +some +somebody/SM +someday +somehow +someone/MS +someplace +somersault/MDGS +somerset/SM +somersetted +somersetting +something/SM +sometime/S +someway/S +somewhat/S +somewhere +somnambulism/M +somnambulist/SM +somnolence/M +somnolent +son/SM +sonar/SM +sonata/SM +sonatina/SM +song/MS +songbird/SM +songbook/SM +songfest/SM +songster/MS +songstress/MS +songwriter/SM +songwriting +sonic +sonnet/SM +sonny/SM +sonogram/SM +sonority/M +sonorous/YP +sonorousness/M +sonsofbitches +soon/RT +soot/M +sooth/MDRSZG +soothe +soother/M +soothing/Y +soothsayer/MS +soothsaying/M +sooty/RT +sop/SM +soph +sophism/M +sophist/MS +sophistic +sophistical +sophisticate/DSMGN +sophisticated/U +sophistication/M +sophistry/SM +sophomore/MS +sophomoric +soporific/MS +soporifically +sopped +sopping +soppy/RT +soprano/MS +sorbet/SM +sorcerer/MS +sorceress/MS +sorcery/M +sordid/PY +sordidness/M +sore/MYTRSP +sorehead/MS +soreness/M +sorghum/M +sorority/SM +sorrel/SM +sorrily +sorriness/M +sorrow/SMDG +sorrowful/YP +sorrowfulness/M +sorry/RTP +sort/FASGDM +sorta +sorted/U +sorter/SM +sortie/DSM +sortieing +sot/SM +sottish +sou'wester +sou/SMH +souffle/SM +sough/MDG +soughs +sought/U +souk/S +soul/MS +soulful/YP +soulfulness/M +soulless/YP +soulmate/SM +sound/JPSMDRYZTG +soundalike/S +soundbar/S +soundbite/S +soundboard/MS +soundcheck/S +sounder/M +sounding/M +soundless/Y +soundness/UM +soundproof/GDS +soundproofing/M +soundscape/S +soundtrack/SM +soup/MDGS +soupcon/MS +soupy/RT +sour/MDRYTGSP +source/ADSMG +sourdough/M +sourdoughs +sourish +sourness/M +sourpuss/MS +sousaphone/MS +souse/DSMG +south/M +southbound +southeast/ZMR +southeaster/MY +southeastern +southeastward/S +southerly/SM +southern/SZMR +southerner/M +southernmost +southpaw/SM +southward/MS +southwest/ZMR +southwester/MY +southwestern +southwestward/S +souvenir/SM +sovereign/SM +sovereignty/M +soviet/SM +sow's +sow/ASGD +sower/SM +sown/A +soy/M +soybean/MS +sozzled +spa/SM +space/DRSMZG +spacecraft/MS +spaceflight/MS +spaceman/M +spacemen +spaceport/SM +spacer/M +spaceship/SM +spacesuit/SM +spacetime +spacewalk/SGMD +spacewoman/M +spacewomen +spacey +spacial +spacier +spaciest +spaciness/M +spacing/M +spacious/YP +spaciousness/M +spade/DSMG +spadeful/MS +spadework/M +spadices +spadix/M +spaghetti/M +spake +spam/MS +spammed +spammer/SM +spamming +span/MS +spandex/M +spangle/DSMG +spangly +spaniel/SM +spank/SMDGJ +spanking/M +spanned +spanner/SM +spanning +spar/MS +spare/DRSMYTGP +spareness/M +spareribs/M +sparing/UY +spark/SMDYG +sparkle/DRSMZG +sparkler/M +sparky/RT +sparred +sparring +sparrow/SM +sparrowhawk/S +sparse/RYTP +sparseness/M +sparsity/M +spartan +spasm/SM +spasmodic +spasmodically +spastic/SM +spat/MS +spate/SM +spathe/SM +spatial/Y +spatted +spatter/SGMD +spatting +spatula/SM +spavin/MD +spawn/SMDG +spay/DGS +speak/SRZGJ +speakeasy/SM +speaker/M +speakerphone/S +spear/SMDG +spearfish/GMDS +speargun +spearhead/GMDS +spearmint/M +spec/MS +special/SMY +specialisation/MS +specialise/GDS +specialism/S +specialist/MS +speciality/SM +specie/SM +species/M +specif +specifiable +specific/MS +specifically +specification/M +specificity/M +specified/U +specify/XNZDRSG +specimen/SM +specious/YP +speciousness/M +speck/SMDG +speckle/MGDS +specs/M +spectacle/SM +spectacles/M +spectacular/MYS +spectate/DSG +spectator/SM +spectra +spectral +spectre/MS +spectrometer/MS +spectroscope/MS +spectroscopic +spectroscopy/M +spectrum/M +speculate/DSXGNV +speculation/M +speculative/Y +speculator/MS +sped +speech/MS +speechify/DSG +speechless/YP +speechlessness/M +speechwriter/S +speed/SMRZG +speedboat/SM +speeder/M +speedily +speediness/M +speeding/M +speedometer/MS +speedster/SM +speedup/MS +speedway/SM +speedwell/M +speedy/TPR +speleological +speleologist/MS +speleology/M +spell/JSMDRZG +spellbind/ZGRS +spellbinder/M +spellbound +spellcheck/MDRZGS +spellchecker/M +spelldown/SM +speller/M +spelling/M +spelt +spelunker/MS +spelunking/M +spend/BSRZG +spender/M +spending/M +spendthrift/MS +spent/U +sperm/SM +spermatozoa +spermatozoon/M +spermicidal +spermicide/MS +spew/MDRZGS +spewer/M +sphagnum/MS +sphere/SM +spherical/Y +spheroid/SM +spheroidal +sphincter/MS +sphinx/MS +spic/S +spice/DSMG +spicily +spiciness/M +spicule/MS +spicy/PRT +spider/SM +spiderweb/MS +spidery +spiel/SMDG +spiff/SDG +spiffy/TR +spigot/SM +spike/DSMG +spikiness/M +spiky/RPT +spill/SMDG +spillage/MS +spillover/SM +spillway/MS +spilt +spin/MS +spinach/M +spinal/SMY +spindle/MGDS +spindly/TR +spine/SM +spineless/YP +spinet/SM +spinless +spinnaker/SM +spinner/MS +spinneret/SM +spinney/S +spinning/M +spinster/SM +spinsterhood/M +spinsterish +spiny/RT +spiracle/SM +spiraea/MS +spiral/SMY +spiralled +spiralling +spire's +spire/IFAS +spirit's +spirit/ISGD +spirited/Y +spiritless +spiritual/MYS +spiritualism/M +spiritualist/MS +spiritualistic +spirituality/M +spirituous +spirochaete/SM +spiry +spit/MDGS +spitball/SM +spite/ASM +spiteful/PY +spitefuller +spitefullest +spitefulness/M +spitfire/SM +spitted +spitting +spittle/M +spittoon/MS +spiv/S +splanchnic +splash/GMDS +splashdown/MS +splashily +splashiness/M +splashy/RTP +splat/SM +splatted +splatter/GSMD +splatting +splay/SMDG +splayfeet +splayfoot/MD +spleen/SM +splendid/RYT +splendorous +splendour/SM +splenectomy +splenetic +splice/DRSMZG +splicer/M +spliff/S +spline/S +splint/SZGMDR +splinter/MDG +splintery +split/SM +splitting/MS +splodge/S +splosh/DSG +splotch/MDSG +splotchy/TR +splurge/DSMG +splutter/GMDS +spoil's +spoil/CSDRZG +spoilage/M +spoiled/U +spoiler/CM +spoilsport/MS +spoilt +spoke/SM +spoken/U +spokesman/M +spokesmen +spokespeople +spokesperson/MS +spokeswoman/M +spokeswomen +spoliation/CM +sponge/DRSMZG +sponger/M +sponginess/M +spongy/RPT +sponsor/MDGS +sponsorship/M +spontaneity/M +spontaneous/Y +spoof/SMDG +spook/SMDG +spookiness/M +spooky/RPT +spool/SMDG +spoon/SMDG +spoonbill/MS +spoonerism/MS +spoonful/SM +spoor/SMDG +sporadic +sporadically +spore/DSMG +sporran/S +sport/SMDGV +sportiness/M +sporting/Y +sportive/Y +sportscast/MRZGS +sportscaster/M +sportsman/M +sportsmanlike/U +sportsmanship/M +sportsmen +sportspeople +sportsperson +sportswear/M +sportswoman/M +sportswomen +sportswriter/SM +sporty/TPR +spot/CMS +spotless/PY +spotlessness/M +spotlight/GSMD +spotlit +spotted +spotter/MS +spottily +spottiness/M +spotting +spotty/TPR +spousal/MS +spouse/SM +spout/SMDG +sprain/GSMD +sprang +sprat/SM +sprawl/GSMD +spray's +spray/ASDG +sprayer/MS +spread/ZGBSMR +spreadeagled +spreader/M +spreadsheet/MS +spree/DSM +spreeing +sprig/SM +sprigged +sprightliness/M +sprightly/RTP +spring/GSM +springboard/MS +springbok/MS +springily +springiness/M +springlike +springtime/M +springy/RPT +sprinkle/DRSJMZG +sprinkler/M +sprinkling/M +sprint/ZGSMDR +sprinter/M +sprite/SM +spritz/ZGMDRS +spritzer/M +sprocket/MS +sprog/S +sprout/GSMD +spruce/DRSPMYTG +spruceness/M +sprung +spry/RYT +spryness/M +spud/MS +spume/DSMG +spumoni/M +spumy +spun +spunk/SM +spunky/TR +spur/MS +spurge/M +spurious/PY +spuriousness/M +spurn/SDG +spurred +spurring +spurt/SMDG +sputa +sputnik/MS +sputter/MDGS +sputum/M +spy/GDSM +spyglass/MS +spymaster/S +spyware/M +sq +sqq +squab/SM +squabble/MZGDRS +squabbler/M +squad/SM +squadron/MS +squalid/PTRY +squalidness/M +squall/SGMD +squally +squalor/M +squamous +squander/GDS +square/PDRSMYTG +squareness/M +squarish +squash/GMDS +squashy/TR +squat/SMP +squatness/M +squatted +squatter/MS +squattest +squatting +squaw/SM +squawk/SZGMDR +squawker/M +squeak/SZGMDR +squeaker/M +squeakily +squeakiness/M +squeaky/TRP +squeal/SZGMDR +squealer/M +squeamish/PY +squeamishness/M +squeegee/MDS +squeegeeing +squeeze/BMZGDRS +squeezebox/S +squeezer/M +squelch/GMDS +squelchy +squib/SM +squid/SM +squidgy +squiffy +squiggle/DSMG +squiggly +squint/STGMDR +squire/DSMG +squirm/SGMD +squirmy/RT +squirrel/SM +squirrelled +squirrelling +squirt/SGMD +squish/GMDS +squishy/RT +sriracha +ssh +st +stab/MYS +stabbed +stabber/MS +stabbing/MS +stabilisation/M +stabilise/CDSG +stabiliser/MS +stability/IM +stable/DRSMTG +stableman/M +stablemate/S +stablemen +stably/U +staccato/MS +stack/SMDG +stadium/MS +staff's +staff/ASDG +staffer/MS +staffing/M +stag/MDGSJ +stage/SM +stagecoach/MS +stagecraft/M +stagehand/MS +stagestruck +stagflation/M +stagger/MDGS +staggering/Y +staging/M +stagnancy/M +stagnant/Y +stagnate/DSGN +stagnation/M +stagy/RT +staid/PRYT +staidness/M +stain/SMDG +stained/U +stainless/M +stair/SM +staircase/MS +stairway/MS +stairwell/SM +stake/DSMG +stakeholder/MS +stakeout/SM +stalactite/MS +stalagmite/MS +stale/DRSTGP +stalemate/DSMG +staleness/M +stalk/SMDRJZG +stalker/M +stalking/M +stall's +stall/SDG +stallholder/S +stallion/MS +stalwart/MYS +stamen/SM +stamina/M +stammer/ZGMDRS +stammerer/M +stammering/Y +stamp/SMDRZG +stampede/MGDS +stamper/M +stance/ISM +stanch/TGDRS +stanchion/SM +stand/SMRJZG +standalone +standard/MS +standardisation/M +standardise/DSG +standby/M +standbys +standee/MS +stander/M +standing/M +standoff/MS +standoffish +standout/MS +standpipe/SM +standpoint/MS +standstill/MS +stank +stanza/SM +staph/M +staphylococcal +staphylococci +staphylococcus/M +staple/DRSMZG +stapler/M +star/MDRZGS +starboard/M +starburst/S +starch/GMDS +starchily +starchiness/M +starchy/PTR +stardom/M +stardust/M +stare/SM +starer/M +starfish/MS +starfruit +stargaze/DRSZG +stargazer/M +stark/RYPZT +starkness/M +starless +starlet/MS +starlight/M +starling/SM +starlit +starred +starring +starry/TR +starstruck +start/ASMDG +starter/MS +startle/GDS +startling/Y +startup/MS +starvation/M +starve/DSJG +starveling/MS +stash/MDSG +stasis +stat/MS +state/DRSMYGNLX +statecraft/M +stated/U +statehood/M +statehouse/MS +stateless/P +statelessness/M +stateliness/M +stately/PRT +statement/AMS +statemented +statementing +stateroom/MS +stateside +statesman/M +statesmanlike +statesmanship/M +statesmen +stateswoman/M +stateswomen +statewide +static/SM +statically +station/MDRZG +stationary +stationer/M +stationery/M +stationmaster/S +statistic/MS +statistical/Y +statistician/SM +statuary/M +statue/SM +statuesque +statuette/MS +stature/MS +status/MS +statute/MS +statutorily +statutory +staunch/PDRSYTG +staunchness/M +stave/DSMG +stay/MDRZGS +std +stdio +stead/SM +steadfast/YP +steadfastness/M +steadily/U +steadiness/UM +steady/TGPDRSM +steak/SM +steakhouse/SM +steal/SMHG +stealth/M +stealthily +stealthiness/M +stealthy/TPR +steam/SMDRZG +steamboat/MS +steamer/M +steamfitter/SM +steamfitting/M +steaminess/M +steampunk +steamroll/ZGDRS +steamroller/MDG +steamship/MS +steamy/TPR +steed/SM +steel/SMDG +steeliness/M +steelmaker/S +steelworker/SM +steelworks/M +steely/PTR +steelyard/SM +steep/SMDNRYPXTG +steepen/GD +steeple/MS +steeplechase/MS +steeplejack/SM +steepness/M +steer/SMDBG +steerage/M +steering/M +steersman/M +steersmen +stegosauri +stegosaurus/MS +stein/SM +stellar +stem/MS +stemless +stemmed +stemming +stemware/M +stench/MS +stencil/MS +stencilled +stencilling +steno/SM +stenographer/SM +stenographic +stenography/M +stenosis +stent/SM +stentorian +step/IMS +stepbrother/SM +stepchild/M +stepchildren/M +stepdad/MS +stepdaughter/SM +stepfather/SM +stepladder/MS +stepmom/MS +stepmother/SM +stepparent/SM +steppe/DRSMZG +stepper/M +steppingstone/SM +stepsister/MS +stepson/MS +stereo/SM +stereophonic +stereoscope/MS +stereoscopic +stereotype/DSMG +stereotypical +sterile +sterilisation/MS +sterilise/DRSZG +steriliser/M +sterility/M +sterling/M +stern/SMRYPT +sternness/M +sternum/MS +steroid/MS +steroidal +stertorous +stet/S +stethoscope/MS +stetson/MS +stetted +stetting +stevedore/SM +stew/MDGS +steward/GMDS +stewardess/MS +stewardship/M +stick/SMRZG +sticker/M +stickily +stickiness/M +stickleback/SM +stickler/MS +stickpin/MS +stickup/MS +sticky/PTRSM +stiff/SMDNRYPXTG +stiffen/ZGDR +stiffener/M +stiffening/M +stiffness/M +stifle/DSJG +stifling/Y +stigma/SM +stigmata +stigmatic +stigmatisation/M +stigmatise/GDS +stile/SM +stiletto/SM +still/TGPSMDR +stillbirth/M +stillbirths +stillborn +stilled/I +stilling/I +stillness/M +stilt/SMD +stilted/Y +stimulant/SM +stimulate/DSGNV +stimulation/M +stimuli +stimulus/M +sting/ZGSMR +stinger/M +stingily +stinginess/M +stingray/SM +stingy/RTP +stink/ZGSMR +stinkbug/SM +stinker/M +stinky/RT +stint/GSMD +stipend/SM +stipendiary/S +stipple/DSMG +stippling/M +stipulate/XDSGN +stipulation/M +stir/MS +stirred +stirrer/SM +stirring/SY +stirrup/SM +stitch's +stitch/ADSG +stitchery/M +stitching/M +stoat/SM +stochastic +stock's +stock/AGSD +stockade/DSMG +stockbreeder/MS +stockbroker/SM +stockbroking/M +stockholder/SM +stockily +stockiness/M +stockinette/M +stocking/SM +stockist/S +stockpile/MGDS +stockpot/SM +stockroom/MS +stocktaking/M +stocky/RTP +stockyard/MS +stodge +stodgily +stodginess/M +stodgy/RTP +stogie/MS +stoic/SM +stoical/Y +stoicism/M +stoke/DRSZG +stoker/M +stole/SM +stolen +stolid/RYTP +stolidity/M +stolidness/M +stolon/MS +stomach/MDRZG +stomachache/SM +stomacher/M +stomachs +stomp/GSMD +stone/DRSMZG +stonemason/MS +stoner/M +stonewall/GSD +stoneware/M +stonewashed +stonework/M +stonily +stoniness/M +stonkered +stonking +stony/TRP +stood +stooge/MS +stool/SM +stoop/GSMD +stop's +stop/US +stopcock/SM +stopgap/SM +stoplight/MS +stopover/MS +stoppable/U +stoppage/MS +stopped/U +stopper/GSMD +stopping/U +stopple/DSMG +stopwatch/MS +storage/M +store's +store/ADSG +storefront/MS +storehouse/MS +storekeeper/SM +storeroom/SM +storey/MS +stork/SM +storm/GSMD +stormily +storminess/M +stormy/RPT +story/DSM +storyboard/MS +storybook/SM +storyteller/MS +storytelling/M +stoup/SM +stout/TSMRYP +stouthearted +stoutness/M +stove/SM +stovepipe/SM +stow/DGS +stowage/M +stowaway/MS +straddle/DRSMZG +straddler/M +strafe/MGDS +straggle/DRSZG +straggler/M +straggly/TR +straight/SPXTMNRY +straightaway/SM +straightedge/SM +straighten/ZGDR +straightener/M +straightforward/YPS +straightforwardness/M +straightness/M +straightway +strain's +strain/FADSG +strainer/ASM +strait/MNSX +straiten/GD +straitjacket/SGMD +straitlaced +strand/MDSG +strange/PRYZT +strangeness/M +stranger/M +strangle/ZGDRS +stranglehold/SM +strangler/M +strangulate/GNDS +strangulation/M +strap's +strap/US +strapless/MS +strapped/U +strapping/M +strata +stratagem/SM +strategic/S +strategical/Y +strategics/M +strategist/SM +strategy/SM +strati +stratification/M +stratify/DSGN +stratosphere/SM +stratospheric +stratum/M +stratus/M +straw/GSMD +strawberry/SM +stray/GSMD +streak/MDRSZG +streaker/M +streaky/TR +stream/MDRSZG +streamer/M +streamline/DSG +street/MS +streetcar/MS +streetlamp/S +streetlight/SM +streetwalker/SM +streetwise +strength/M +strengthen/AGDS +strengthener/MS +strengths +strenuous/PY +strenuousness/M +strep/M +streptococcal +streptococci +streptococcus/M +streptomycin/M +stress/MDSG +stressed/U +stressful +stressors +stretch/BZGMDRS +stretcher/MDG +stretchmarks +stretchy/TR +strew/GSDH +strewn +stria/M +striae +striated +striation/MS +stricken +strict/RYPT +strictness/M +stricture/SM +stridden +stride/MGS +stridency/M +strident/Y +strife/M +strike/MZGRSJ +strikebound +strikebreaker/SM +strikebreaking +strikeout/MS +striker/M +striking/Y +string/MDRSZG +stringency/M +stringent/Y +stringer/M +stringiness/M +stringy/PTR +strip/GSMD +stripe/MS +stripey +stripling/MS +stripped +stripper/MS +stripping +striptease/MZGDRS +stripteaser/M +stripy +strive/GS +striven +strobe/MS +stroboscope/MS +stroboscopic +strode +stroke/MGDS +stroll/MDRSZG +stroller/M +strong/RYT +strongbox/MS +stronghold/MS +strongman/M +strongmen +strongroom/S +strontium/M +strop/SM +strophe/SM +strophic +stropped +stroppily +stropping +stroppy/TRP +strove +struck +structural/Y +structuralism +structuralist/S +structure's +structure/AGDS +structured/U +strudel/SM +struggle/MGDS +strum/SM +strummed +strumming +strumpet/MS +strung/UA +strut/SM +strutted +strutting +strychnine/M +stub/MS +stubbed +stubbing +stubble/M +stubbly +stubborn/RYPT +stubbornness/M +stubby/RT +stucco/MDG +stuccoes +stuck/U +stud/MYS +studbook/MS +studded +studding/M +student/SM +studentship/S +studied/U +studiedly +studio/MS +studious/PY +studiousness/M +studly/RT +study's +study/AGDS +stuff/GSMDJ +stuffily +stuffiness/M +stuffing/M +stuffy/RPT +stultification/M +stultify/DSNG +stumble/DRSMZG +stumbler/M +stump/GSMD +stumpy/TR +stun/S +stung +stunk +stunned +stunner/S +stunning/Y +stunt/GSMD +stuntman +stuntmen +stupefaction/M +stupefy/DSG +stupendous/Y +stupid/TMRYS +stupidity/SM +stupor/MS +sturdily +sturdiness/M +sturdy/TRP +sturgeon/SM +stutter/MDRSZG +stutterer/M +sty/SM +style's +style/ADSG +styli +stylise/DSG +stylish/PY +stylishness/M +stylist/SM +stylistic/S +stylistically +stylus/MS +stymie/MDS +stymieing +styptic/SM +suasion/EM +suave/RYTP +suaveness/M +suavity/M +sub/SM +subaltern/MS +subaqua +subarctic +subarea/MS +subatomic +subbasement/SM +subbed +subbing +subbranch/MS +subcategory/SM +subclass +subcommittee/SM +subcompact/SM +subconscious/PMY +subconsciousness/M +subcontinent/SM +subcontinental +subcontract/MDSG +subcontractor/MS +subculture/MS +subcutaneous/Y +subdivide/GDS +subdivision/SM +subdomain/MS +subdominant +subdue/DSG +subeditor/S +subfamily/SM +subfreezing +subgroup/MS +subhead/GJMS +subheading/M +subhuman/MS +subj +subject/GVMDS +subjection/M +subjective/Y +subjectivity/M +subjoin/GDS +subjugate/GNDS +subjugation/M +subjunctive/SM +sublease/MGDS +sublet/SM +subletting +sublieutenant/S +sublimate/GNDS +sublimation/M +sublime/YTGDRS +subliminal/Y +sublimity/M +sublingual +submarginal +submarine/MZRS +submariner/M +submerge/GDS +submergence/M +submerse/GNDS +submersible/MS +submersion/M +submicroscopic +submission/MS +submissive/PY +submissiveness/M +submit/AS +submitted/A +submitter +submitting/A +subnormal +suborbital +suborder/MS +subordinate/DSMGN +subordination/IM +suborn/SGD +subornation/M +subpar +subparagraph +subpart +subplot/MS +subpoena/GMDS +subprime +subprofessional/SM +subprogram/S +subroutine/SM +subscribe/UASDG +subscriber/MS +subscript/MS +subscription/MS +subsection/MS +subsequent/Y +subservience/M +subservient/Y +subset/SM +subside/GDS +subsidence/M +subsidiarity +subsidiary/SM +subsidisation/M +subsidise/ZGDRS +subsidiser/M +subsidy/SM +subsist/SDG +subsistence/M +subsoil/M +subsonic +subspace +subspecies/M +substance/SM +substandard +substantial/IY +substantiate/GNDSX +substantiated/U +substantiation/FM +substantive/SMY +substation/MS +substituent +substitute/XMGNDS +substitution/M +substrata +substrate/MS +substratum/M +substructure/SM +subsume/DSG +subsumption +subsurface/M +subsystem/SM +subteen/SM +subtenancy/M +subtenant/SM +subtend/SDG +subterfuge/SM +subterranean +subtext/SM +subtitle/DSMG +subtle/TR +subtlety/SM +subtly +subtopic/SM +subtotal/SM +subtotalled +subtotalling +subtract/GSD +subtraction/SM +subtrahend/SM +subtropic/S +subtropical +subtropics/M +suburb/MS +suburban/SM +suburbanite/SM +suburbia/M +subvention/SM +subversion/M +subversive/SPMY +subversiveness/M +subvert/SDG +subway/MS +subzero +succeed/GDS +success/VMS +successful/UY +succession/SM +successive/Y +successor/SM +succinct/RYTP +succinctness/M +succotash/M +succour/GMDS +succubi +succubus +succulence/M +succulency/M +succulent/SM +succumb/GDS +such +suchlike +suck/MDRZGS +sucker/GMD +suckle/DSJG +suckling/M +sucrose/M +suction/SMDG +sudden/PY +suddenness/M +suds/M +sudsy/TR +sue/DSG +suede/M +suet/M +suety +suffer/DRZGSJ +sufferance/M +sufferer/M +suffering/M +suffice/DSG +sufficiency/IM +sufficient/IY +suffix/MDSG +suffixation/M +suffocate/GNDS +suffocation/M +suffragan/MS +suffrage/M +suffragette/SM +suffragist/MS +suffuse/DSGN +suffusion/M +sugar/GSMD +sugarcane/M +sugarcoat/GDS +sugarless +sugarplum/MS +sugary/RT +suggest/GVSDR +suggestibility/M +suggestible +suggestion/SM +suggestive/YP +suggestiveness/M +suicidal +suicide/SM +suit/BMDGS +suitability/UM +suitableness/M +suitably/U +suitcase/SM +suite/SM +suited/U +suiting/M +suitor/MS +sukiyaki/M +sulfa/M +sulfonamides +sulk/MDGS +sulkily +sulkiness/M +sulky/TRSMP +sullen/RYPT +sullenness/M +sullied/U +sully/GDS +sulphate/MS +sulphide/MS +sulphur/SMDG +sulphuric +sulphurous +sultan/MS +sultana/SM +sultanate/MS +sultrily +sultriness/M +sultry/RPT +sum/SM +sumac/M +summarily +summarise/GDS +summary/SM +summat +summation/FMS +summed +summer/MDSG +summerhouse/SM +summertime/M +summery +summing +summit/MS +summitry/M +summon/DRSZG +summoner/M +summons/GMDS +sumo/M +sump/MS +sumptuous/PY +sumptuousness/M +sun/SM +sunbath/ZGMDRS +sunbathe +sunbather/M +sunbathing/M +sunbaths +sunbeam/SM +sunbed/S +sunbelt/SM +sunblock/MS +sunbonnet/SM +sunburn/SGMD +sunburst/MS +sundae/MS +sundeck/S +sunder/DSG +sundial/SM +sundown/SM +sundress/S +sundries/M +sundry/S +sunfish/MS +sunflower/MS +sung/U +sunglasses/M +sunhat/S +sunk/N +sunlamp/SM +sunless +sunlight/M +sunlit +sunned +sunniness/M +sunning +sunny/TRP +sunrise/SM +sunroof/SM +sunscreen/MS +sunset/MS +sunshade/MS +sunshine/M +sunshiny +sunspot/SM +sunstroke/M +suntan/MS +suntanned +suntanning +suntrap/S +sunup/M +sup/SZMR +super/M +superabundance/MS +superabundant +superannuate/GNDS +superannuation/M +superb/RYT +supercargo/M +supercargoes +supercharge/ZGDRS +supercharger/M +supercilious/PY +superciliousness/M +supercity/SM +supercomputer/MS +superconducting +superconductive +superconductivity/M +superconductor/SM +supercritical +superego/MS +supererogation/M +supererogatory +superficial/Y +superficiality/M +superfine +superfluity/M +superfluous/YP +superfluousness/M +superglue +supergrass/S +superhero/MS +superheroes +superhighway/SM +superhuman +superimpose/GDS +superimposition/M +superintend/DSG +superintendence/M +superintendency/M +superintendent/SM +superior/MS +superiority/M +superlative/SMY +superman/M +supermarket/SM +supermassive +supermen +supermodel/SM +supermom/MS +supernal +supernatural/SY +supernova/MS +supernovae +supernumerary/SM +superpose/GDS +superposition/M +superpower/SM +supersaturate/GNDS +supersaturation/M +superscribe/GDS +superscript/MS +superscription/M +supersede/GDS +supersize/GDS +supersonic +superspreader/SM +superstar/MS +superstardom +superstate/S +superstition/MS +superstitious/Y +superstore/MS +superstructure/MS +supertanker/MS +superuser/S +supervene/GDS +supervention/M +supervise/XGNDS +supervised/U +supervision/M +supervisor/MS +supervisory +superwoman/M +superwomen +supine/Y +supp/DRZG +supper/M +suppertime +suppl +supplant/SDG +supple/TLPR +supplement/MDGS +supplemental +supplementary +supplementation/M +suppleness/M +suppliant/SM +supplicant/MS +supplicate/GDS +supplication/M +supplier/M +supply/ZGDRSMXN +support/MDRSBZGV +supportable/UI +supported/U +supporter/M +suppose/GDS +supposed/Y +supposition/MS +suppository/SM +suppress/GVDS +suppressant/MS +suppressible +suppression/M +suppressor/SM +suppurate/DSGN +suppuration/M +supra +supranational +supremacist/MS +supremacy/M +supreme/Y +supremo/S +supt +surcease/DSMG +surcharge/DSMG +surcingle/SM +sure/PYTR +surefire +surefooted +sureness/M +surety/SM +surf/MDRZGS +surface's +surface/AGDS +surfboard/MDSG +surfeit/MDSG +surfer/M +surfing/M +surge/DSMG +surgeon/MS +surgery/SM +surgical/Y +surliness/M +surly/PTR +surmise/MGDS +surmount/DGSB +surmountable/I +surname/MS +surpass/GDS +surpassed/U +surplice/MS +surplus/MS +surplussed +surplussing +surprise/DSMGJ +surprising/UY +surreal +surrealism/M +surrealist/SM +surrealistic +surrealistically +surrender/MDSG +surreptitious/PY +surreptitiousness/M +surrey/MS +surrogacy/M +surrogate/SM +surround/GSDJ +surrounding/M +surroundings/M +surtax/MDSG +surtitle/S +surveillance/M +survey's +survey/ADGS +surveying/M +surveyor/SM +survival/SM +survivalist/SM +survive/DSGB +survivor/SM +susceptibility/SM +susceptible/I +sushi/M +suspect/SMDG +suspected/U +suspend/SDRZG +suspender/M +suspense/XMN +suspenseful +suspension/M +suspicion/SM +suspicious/Y +suss/DSG +sustain/SDBG +sustainability +sustainable/U +sustainably +sustenance/M +sutler/MS +suttee +suture/MGDS +suzerain/MS +suzerainty/M +svelte/TR +swab/MS +swabbed +swabbing +swaddle/DSG +swag/MS +swagged +swagger/SMDRG +swagging +swain/SM +swallow/GSMD +swallowtail/MS +swam +swami/SM +swamp/GSMD +swampland/M +swampy/RT +swan/MS +swank/TGSMDR +swankily +swankiness/M +swanky/RPT +swanned +swanning +swansong/S +swap/MS +swapped +swapping +sward/SM +swarm/GSMD +swarthy/TR +swash/GMDS +swashbuckler/SM +swashbuckling/M +swastika/SM +swat/MS +swatch/MS +swath/GMDS +swathe/M +swaths +swatted +swatter/SMDG +swatting +sway/MDGS +swayback/MD +swayed/U +swear/ZGSR +swearer/M +swearword/MS +sweat/ZGSMDR +sweatband/MS +sweater/M +sweatpants/M +sweats/M +sweatshirt/SM +sweatshop/MS +sweatsuit/S +sweaty/RT +swede/SM +sweep/ZGSMRJ +sweeper/M +sweeping/MY +sweepings/M +sweepstake/M +sweet/XTSMNRYP +sweetbread/SM +sweetbrier/SM +sweetcorn +sweetened/U +sweetener/MS +sweetening/M +sweetheart/SM +sweetie/SM +sweetish +sweetmeat/MS +sweetness/M +swell/TGSMDRJ +swellhead/MDS +swelling/M +swelter/SGMD +swept +sweptback +swerve/MGDS +swerving/U +swift/PTSMRY +swiftness/M +swig/MS +swigged +swigging +swill/GSMD +swim/MS +swimmer/SM +swimming/MY +swimsuit/SM +swimwear +swindle/DRSMZG +swindler/M +swine/SM +swineherd/SM +swing/ZGSMR +swingeing +swinger/M +swinish +swipe/DSMG +swirl/GSMD +swirly +swish/TGMDRS +switch/MDRSZGB +switchback/MS +switchblade/SM +switchboard/SM +switcher/M +switchover +swivel/MS +swivelled +swivelling +swiz +swizz +swizzle/DSG +swollen +swoon/SGMD +swoop/SGMD +swoosh/MDSG +sword/SM +swordfish/MS +swordplay/M +swordsman/M +swordsmanship/M +swordsmen +swore +sworn +swot/S +swotted +swotting +swum +swung +sybarite/SM +sybaritic +sycamore/MS +sycophancy/M +sycophant/SM +sycophantic +syllabic +syllabicate/GNDS +syllabication/M +syllabification/M +syllabify/DSNG +syllable/MS +syllabub/S +syllabus/MS +syllogism/MS +syllogistic +sylph/M +sylphic +sylphlike +sylphs +sylvan +symbioses +symbiosis/M +symbiotic +symbiotically +symbol/MS +symbolic +symbolical/Y +symbolisation/M +symbolise/DSG +symbolism/M +symbology +symmetric +symmetrical/Y +symmetry/SM +sympathetic/U +sympathetically/U +sympathies/M +sympathise/ZGDRS +sympathiser/M +sympathy/SM +symphonic +symphony/SM +symposium/MS +symptom/MS +symptomatic +symptomatically +syn/H +synagogal +synagogue/SM +synapse/MS +synaptic +sync/MDSG +synchronicity +synchronisation/MS +synchronise/GDS +synchronous/Y +synchrony +syncopate/DSGN +syncopation/M +syncope/M +syndicalism +syndicalist/S +syndicate/DSMGN +syndication/M +syndrome/SM +synergism/M +synergistic +synergy/SM +synfuel/MS +synod/SM +synonym/SM +synonymous +synonymy/M +synopses +synopsis/M +synoptic +synovial +syntactic +syntactical/Y +syntax/M +syntheses +synthesis/GMDS +synthesise +synthesizer/MS +synthetic/SM +synthetically +synths +syphilis/M +syphilitic/SM +syringe/DSMG +syrup/SM +syrupy +sysadmin/S +sysop/S +system/SM +systematic/U +systematical/Y +systematisation/M +systematise/GDS +systemic/MS +systemically +systole/SM +systolic +t/SDNXGBJ +ta +tab/SM +tabbed +tabbing +tabbouleh/M +tabby/SM +tabernacle/SM +tabla/MS +table/MGDS +tableau/M +tableaux +tablecloth/M +tablecloths +tableland/SM +tablespoon/SM +tablespoonful/SM +tablet/SM +tabletop/MS +tableware/M +tabloid/SM +taboo/MDSG +tabor/MS +tabular +tabulate/DSGNX +tabulation/M +tabulator/SM +tachograph +tachographs +tachometer/SM +tachycardia/M +tachyon +tacit/PY +tacitness/M +taciturn/Y +taciturnity/M +tack/ZGMDRS +tacker/M +tackiness/M +tackle/DRSMZG +tackler/M +tacky/RTP +taco/MS +tact/FM +tactful/YP +tactfulness/M +tactic/SM +tactical/Y +tactician/MS +tactile +tactility/M +tactless/PY +tactlessness/M +tad/SM +tadpole/MS +taffeta/M +taffrail/SM +taffy/SM +tag/SM +tagged +tagger/SM +tagging +tagliatelle +tagline/MS +taiga/MS +tail/ACSDMG +tailback/MS +tailboard/S +tailbone/S +tailcoat/MS +tailgate/MZGDRS +tailgater/M +tailless +taillight/MS +tailor/SGMD +tailoring/M +tailpiece/S +tailpipe/SM +tailspin/SM +tailwind/SM +taint/MDSG +tainted/U +take/AIMS +takeaway/S +taken/A +takeoff/MS +takeout/MS +takeover/SM +taker/MS +taking/SM +takings/M +talc/M +talcum/M +tale/MS +talebearer/MS +talent/SMD +talented/U +tali +talisman/MS +talk/ZGMDRS +talkative/PY +talkativeness/M +talker/M +talkie/RSMT +talky +tall/TRP +tallboy/MS +tallier/M +tallish +tallness/M +tallow/M +tallowy +tally/DRSMZG +tallyho/MDGS +talon/MS +talus/MS +tam/SM +tamale/SM +tamarack/MS +tamarind/MS +tambourine/MS +tame/BYZTGDRSP +tamed/U +tameness/M +tamer/M +tamoxifen +tamp/ZGDRS +tamper/ZGDR +tamperer/M +tampon/SM +tan/SM +tanager/MS +tanbark/M +tandem/SM +tandoori/M +tang/MS +tangelo/MS +tangent/MS +tangential/Y +tangerine/MS +tangibility/IM +tangible/IMS +tangibleness/M +tangibly/I +tangle's +tangle/UDSG +tango/MDSG +tangy/RT +tank/ZGMDRS +tankard/MS +tanker/M +tankful/MS +tanned/U +tanner/SM +tannery/SM +tannest +tannin/M +tanning/M +tansy/M +tantalisation/M +tantalise/ZGDRS +tantaliser/M +tantalising/Y +tantalum/M +tantamount +tantra/M +tantrum/SM +tap/SZGMDR +tapas +tape/MS +tapeline/MS +taper/MDG +tapestry/SM +tapeworm/MS +tapioca/M +tapir/MS +tapped/U +tapper/MS +tappet/MS +tapping +taproom/SM +taproot/SM +tar/SGMD +taramasalata +tarantella/MS +tarantula/SM +tarball/S +tardily +tardiness/M +tardy/TPR +tare/MS +target/MDGS +tariff/MS +tarmac/MS +tarmacadam +tarmacked +tarmacking +tarn/MS +tarnish/GMDS +tarnished/U +taro/MS +tarot/MS +tarp/MS +tarpaulin/MS +tarpon/MS +tarragon/SM +tarred +tarring +tarry/TGDRS +tarsal/MS +tarsi +tarsus/M +tart/PTGMDRYS +tartan/MS +tartar/MS +tartaric +tartness/M +tarty/T +taser/GMDS +task/GMDS +taskbar +taskmaster/MS +taskmistress/MS +tassel/MS +tasselled +tasselling +taste/JMZGDRS +tasted/U +tasteful/EPY +tastefulness/EM +tasteless/PY +tastelessness/M +taster/M +tastily +tastiness/M +tasting/M +tasty/TRP +tat/SZR +tatami/MS +tater/M +tatted +tatter/MDSG +tatterdemalion/MS +tattie +tatting/M +tattle/MZGDRS +tattler/M +tattletale/MS +tattoo/MDRSZG +tattooer/M +tattooist/SM +tatty/TRS +tau/SM +taught/UA +taunt/ZGMDRS +taunter/M +taunting/Y +taupe/M +taut/PXTNRY +tauten/DG +tautness/M +tautological/Y +tautologous +tautology/SM +tavern/MS +tawdrily +tawdriness/M +tawdry/RTP +tawny/TRM +tax/BZGMDRS +taxa +taxation/M +taxer/M +taxi/GMDS +taxicab/SM +taxidermist/SM +taxidermy/M +taximeter/MS +taxiway/S +taxman +taxmen +taxon +taxonomic +taxonomist/MS +taxonomy/SM +taxpayer/MS +taxpaying +tb/S +tbsp +tea/SM +teabag/S +teacake/SM +teach/ZGRSBJ +teachable/U +teacher/M +teaching/M +teacup/MS +teacupful/MS +teak/MS +teakettle/SM +teal/MS +tealight/MS +team/GMDS +teammate/MS +teamster/MS +teamwork/M +teapot/MS +tear/GMDS +tearaway/S +teardrop/SM +tearful/Y +teargas/MS +teargassed +teargassing +tearjerker/MS +tearoom/SM +teary/TR +tease/MZGDRS +teasel/MS +teaser/M +teasing/Y +teaspoon/SM +teaspoonful/SM +teat/MS +teatime/S +tech/M +techie/S +technetium/M +technical/Y +technicality/SM +technician/SM +technicolor +technique/SM +techno +technobabble +technocracy/SM +technocrat/MS +technocratic +technological/Y +technologist/MS +technology/SM +technophobe/S +techs +tectonic/S +tectonics/M +ted/S +teddy/S +tedious/PY +tediousness/M +tedium/M +tee/DSMH +teeing +teem/GDS +teen/MS +teenage/RZ +teenager/M +teeny/TR +teenybopper/MS +teeter/MDSG +teethe/GDS +teething/M +teetotal +teetotalism/M +teetotaller/MS +tektite/SM +tel +telecast/SZGMR +telecaster/M +telecommunication/MS +telecommunications/M +telecommute/ZGDRS +telecommuter/M +telecommuting/M +teleconference/MGDS +teleconferencing/M +telegenic +telegram/MS +telegraph/MDRZG +telegrapher/M +telegraphese +telegraphic +telegraphically +telegraphist/SM +telegraphs +telegraphy/M +telekinesis/M +telekinetic +telemarketer/SM +telemarketing/M +telemeter/SM +telemetry/SM +teleological +teleology +telepathic +telepathically +telepathy/M +telephone/DRSMZG +telephoner/M +telephonic +telephonist/S +telephony/M +telephoto/SM +telephotography/M +teleplay/MS +teleport +teleportation +teleprinter/MS +teleprocessing/M +teleprompter/SM +telesales +telescope/DSMG +telescopic +telescopically +teletext/MS +telethon/MS +teletype/S +teletypewriter/MS +televangelism/M +televangelist/MS +televise/XGNDS +television/M +teleworker/S +teleworking +telex/MDSG +tell/AGS +teller/SM +telling/Y +telltale/SM +tellurium/M +telly/SM +telnet +temblor/MS +temerity/M +temp/MDRZTGS +temper/MDG +tempera/LSM +temperament/MS +temperamental/Y +temperance/IM +temperate/IY +temperateness/M +temperature/SM +tempest/SM +tempestuous/YP +tempestuousness/M +template's +template/S +temple/SM +tempo/SM +temporal/Y +temporarily +temporariness/M +temporary/FSM +temporise/ZGDRS +temporiser/M +tempt/SDRZG +temptation/MS +tempter/M +tempting/Y +temptress/MS +tempura/M +ten/BMH +tenability/M +tenable/U +tenably +tenacious/YP +tenaciousness/M +tenacity/M +tenancy/SM +tenant/SMDG +tenanted/U +tenantry/M +tench +tend/IEFDGS +tended/U +tendency/SM +tendentious/YP +tendentiousness/M +tender/SMDRYTGP +tenderfoot/MS +tenderhearted/P +tenderheartedness/M +tenderise/ZGDRS +tenderiser/M +tenderloin/SM +tenderness/M +tendinitis/M +tendon/SM +tendril/SM +tenement/SM +tenet/SM +tenfold +tenner/S +tennis/M +tenon/SMDG +tenor/SM +tenpin/SM +tenpins/M +tense/DRSMYTGNXP +tenseness/M +tensile +tension/ESM +tensity/IM +tensor/S +tent/DGSM +tentacle/DSM +tentative/PY +tentativeness/M +tenterhook/MS +tenth/MY +tenths +tenuity/M +tenuous/PY +tenuousness/M +tenure/DSMG +tepee/SM +tepid/YP +tepidity/M +tepidness/M +tequila/SM +terabit/SM +terabyte/MS +terahertz/M +terajoule/S +terapixel/MS +terawatt/S +terbium/M +tercentenary/SM +tercentennial/SM +teriyaki +term/MDYGS +termagant/MS +terminable/IC +terminal/MYS +terminate/DSGNX +termination/CSM +terminator/S +termini +terminological/Y +terminology/SM +terminus/M +termite/SM +tern/IMS +ternary/SM +terr +terrace/DSMG +terracotta/M +terrain/SM +terrapin/MS +terrarium/SM +terrazzo/MS +terrestrial/SMY +terrible/P +terribleness/M +terribly +terrier/M +terrific +terrifically +terrify/GDS +terrifying/Y +terrine/S +territorial/MS +territoriality +territory/SM +terror/SM +terrorise/DSG +terrorism/M +terrorist/SM +terry/RMZ +terrycloth/M +terse/RYTP +terseness/M +tertiary +tessellate/DSXGN +tessellation/M +test's/AFK +test/AKFCDGS +testable/CF +testament/MS +testamentary +testate/S +testator/MS +testatrices +testatrix/M +tested/U +tester/KSM +testes +testicle/MS +testicular +testifier/M +testify/ZGDRS +testily +testimonial/MS +testimony/SM +testiness/M +testings +testis/M +testosterone/M +testy/PRT +tetanus/M +tetchily +tetchy/PRT +tether/SMDG +tetra/SM +tetracycline/M +tetrahedral +tetrahedron/MS +tetrameter/SM +text/FMS +textbook/SM +texted +textile/MS +texting +textual/FY +textural +texture/MGDS +thalami +thalamus/M +thalidomide/M +thallium/M +than +thane/SM +thank/SDG +thankful/YP +thankfulness/M +thankless/PY +thanklessness/M +thanksgiving/SM +that'd +that'll +that/M +thatch/MDRSZG +thatcher/M +thatching/M +thaw/MDGS +the/JG +theatre/SM +theatregoer/MS +theatrical/YS +theatricality/M +theatricals/M +theatrics/M +thee/S +theft/SM +their/S +theism/M +theist/SM +theistic +them +thematic +thematically +theme/DSM +themselves +then/M +thence +thenceforth +thenceforward +theocracy/SM +theocratic +theodolite/S +theologian/SM +theological/Y +theology/SM +theorem/MS +theoretic +theoretical/Y +theoretician/SM +theorise/DSG +theorist/SM +theory/SM +theosophic +theosophical +theosophist/SM +theosophy/M +therapeutic/S +therapeutically +therapeutics/M +therapist/SM +therapy/SM +there/M +thereabout/S +thereafter +thereat +thereby +therefor +therefore +therefrom +therein +theremin/SM +thereof +thereon +thereto +theretofore +thereunder +thereunto +thereupon +therewith +therm/SM +thermal/MYS +thermionic +thermodynamic/S +thermodynamics/M +thermometer/MS +thermometric +thermonuclear +thermoplastic/SM +thermos/MS +thermostat/MS +thermostatic +thermostatically +thesauri +thesaurus/MS +these/S +thesis/M +thespian/SM +theta/SM +thew/MS +they +they'd +they'll +they're +they've +thiamine/M +thick/PMNRYXT +thicken/DRJZG +thickener/M +thickening/M +thicket/MS +thickheaded/M +thickness/MS +thicko/S +thickset +thief/M +thieve/DSG +thievery/M +thieving/M +thievish +thigh/M +thighbone/MS +thighs +thimble/MS +thimbleful/SM +thin/YSP +thine +thing/M +thingamabob/SM +thingamajig/SM +thingumabob/S +thingummy/S +thingy/S +think/SRBZG +thinkable/U +thinker/M +thinking's +thinned +thinner/MS +thinness/M +thinnest +thinning +third/SMY +thirst/SGMD +thirstily +thirstiness/M +thirsty/TPR +thirteen/SMH +thirteenth/M +thirteenths +thirtieth/M +thirtieths +thirty/HSM +this +thistle/MS +thistledown/M +thither +tho +thole/SM +thong/SM +thoracic +thorax/MS +thorium/M +thorn/SM +thorniness/M +thorny/PRT +thorough/RYPT +thoroughbred/MS +thoroughfare/MS +thoroughgoing +thoroughness/M +those +thou/MS +though +thought/SM +thoughtful/YP +thoughtfulness/M +thoughtless/PY +thoughtlessness/M +thousand/MHS +thousandfold +thousandth/M +thousandths +thraldom/M +thrall/SMDG +thrash/JMDRSZG +thrasher/M +thrashing/M +thread/SMDRZG +threadbare +threader/M +threadlike +thready/TR +threat/SMNX +threaten/DG +threatening/Y +three/SM +threefold +threepence/M +threescore/MS +threesome/SM +threnody/SM +thresh/MDRSZG +thresher/M +threshold/SM +threw +thrice +thrift/SM +thriftily +thriftiness/M +thriftless +thrifty/PTR +thrill/SMDRZG +thriller/M +thrilling/Y +thrive/DSG +throat/SM +throatily +throatiness/M +throaty/RTP +throb/SM +throbbed +throbbing +throe/SM +thrombi +thrombolytic +thromboses +thrombosis/M +thrombotic +thrombus/M +throne's +throne/S +throng/GSMD +throttle/DRSMZG +throttler/M +through +throughout +throughput/M +throughway/MS +throw/SMRZG +throwaway/SM +throwback/SM +thrower/M +thrown +thru +thrum/SM +thrummed +thrumming +thrush/MS +thrust/GSM +thud/MS +thudded +thudding +thug/MS +thuggery/M +thuggish +thulium/M +thumb/SMDG +thumbnail/SM +thumbprint/SM +thumbscrew/SM +thumbtack/SM +thump/SMDG +thumping/M +thunder/ZGMDRS +thunderbolt/SM +thunderclap/SM +thundercloud/MS +thunderer/M +thunderhead/SM +thunderous/Y +thundershower/SM +thunderstorm/SM +thunderstruck +thundery +thunk/S +thus +thwack/ZGSMDR +thwacker/M +thwart/GSMD +thy +thyme/M +thymine/M +thymus/MS +thyroid/MS +thyroidal +thyself +ti/MRZ +tiara/SM +tibia/M +tibiae +tibial +tic/SM +tick/MDRZGS +ticker/M +ticket/GSMD +ticking/M +tickle/DRSMZG +tickler/M +ticklish/YP +ticklishness/M +ticktacktoe/M +ticktock/MS +tidal/Y +tiddler/S +tiddly +tiddlywink/S +tiddlywinks/M +tide/MGJDS +tideland/SM +tidemark/S +tidewater/MS +tideway/MS +tidily/U +tidiness/UM +tidings/M +tidy/DRSMTGP +tie's +tie/AUSD +tieback/MS +tiebreak/RSZ +tiebreaker/M +tiepin/S +tier/MD +tiff/MDGS +tiger/SM +tigerish +tight/SNRYPXT +tighten/ZGDR +tightener/M +tightfisted +tightness/M +tightrope/MS +tights/M +tightwad/MS +tigress/MS +til +tilapia +tilde/SM +tile/MZGDRS +tiler/M +tiling/M +till/MDRZGSB +tillage/M +tilled/E +tiller/ESM +tilling/E +tilt/MDGS +timber/SMDG +timberland/M +timberline/MS +timbre/SM +timbrel/SM +time/MYZGJDRS +timekeeper/MS +timekeeping/M +timeless/PY +timelessness/M +timeline/MS +timeliness/UM +timely/UPRT +timeout/SM +timepiece/MS +timer/M +timescale/S +timeserver/SM +timeserving/M +timeshare/S +timestamp/SMD +timetable/DSMG +timeworn +timezone +timid/RYTP +timidity/M +timidness/M +timing/M +timorous/PY +timorousness/M +timothy/M +timpani/M +timpanist/SM +tin/SM +tincture/MGDS +tinder/M +tinderbox/MS +tine/MS +tinfoil/M +ting/MDYG +tinge/SM +tingeing +tingle/DSMGJ +tingling/M +tininess/M +tinker/ZGSMDR +tinkerer/M +tinkle/DSMG +tinned +tinniness/M +tinning +tinnitus/M +tinny/PRT +tinplate/M +tinpot +tinsel/SM +tinselled +tinselling +tinsmith/M +tinsmiths +tint/MDGS +tintinnabulation/MS +tintype/MS +tinware/M +tiny/RTP +tip/SM +tipped +tipper/SM +tippet/SM +tippex/GDS +tipping +tipple/DRSMZG +tippler/M +tipsily +tipsiness/M +tipster/MS +tipsy/RPT +tiptoe/DSM +tiptoeing +tiptop/SM +tirade/SM +tiramisu/MS +tire's +tire/AGDS +tired/PRYT +tiredness/M +tireless/YP +tirelessness/M +tiresome/PY +tiresomeness/M +tissue/SM +tit/SM +titan/SM +titanic +titanium/M +titbit/SM +titch/S +titchy +tithe/DRSMZG +tither/M +titian/M +titillate/DSGN +titillating/Y +titillation/M +titivate/DSGN +titivation/M +title/DSMG +titled/U +titleholder/MS +titlist/MS +titmice +titmouse/M +titter/SGMD +tittle/SM +titty/S +titular +tizz +tizzy/SM +tn +tnpk +to/IU +toad/MS +toadstool/MS +toady/DSMG +toadyism/M +toast/SMDRZG +toaster/M +toastmaster/SM +toastmistress/MS +toasty/TRS +tobacco/MS +tobacconist/SM +toboggan/ZGSMDR +tobogganer/M +tobogganing/M +toccata/S +tocopherol +tocsin/SM +today/M +toddle/DRSMZG +toddler/M +toddy/SM +toe/DSM +toecap/SM +toehold/MS +toeing +toenail/MS +toerag/S +toff/S +toffee/SM +tofu/M +tog/SM +toga/MDS +together/P +togetherness/M +togged +togging +toggle/DSMG +togs/M +toil/MDRZGS +toiler/M +toilet/MDGS +toiletry/SM +toilette/M +toilsome +toke/MGDS +token/SM +tokenism/M +told/AU +tole/M +tolerable/I +tolerably/I +tolerance/IM +tolerances +tolerant/IY +tolerate/GNDS +toleration/M +toll/MDGS +tollbooth/M +tollbooths +tollgate/SM +tollway/SM +toluene/M +tom/SM +tomahawk/SGMD +tomato/M +tomatoes +tomb/MDGS +tombola/S +tomboy/MS +tomboyish +tombstone/MS +tomcat/MS +tome/MS +tomfoolery/SM +tomographic +tomography/M +tomorrow/MS +tomtit/MS +ton/SM +tonal/Y +tonality/SM +tone's +tone/IZGDRS +tonearm/SM +toneless/Y +toner/IM +tong/MDGS +tongue/MGDS +tongueless +tonic/SM +tonight/M +tonnage/SM +tonne/SM +tonsil/MS +tonsillectomy/SM +tonsillitis/M +tonsorial +tonsure/DSMG +tony/RT +too +took/A +tool's +tool/ADGS +toolbar/SM +toolbox/MS +toolkit +toolmaker/MS +toot/MDRZGS +tooter/M +tooth/MD +toothache/MS +toothbrush/MS +toothily +toothless +toothpaste/SM +toothpick/SM +toothsome +toothy/RT +tootle/GDS +tootsie/S +top/SM +topaz/MS +topcoat/SM +topdressing/SM +topee/S +topflight +topi +topiary/M +topic/SM +topical/Y +topicality/M +topknot/SM +topless +topmast/SM +topmost +topnotch +topographer/SM +topographic +topographical/Y +topography/SM +topological/Y +topology +topped +topper/MS +topping/SM +topple/GDS +topsail/SM +topside/SM +topsoil/M +topspin/M +toque/SM +tor/SM +torch/GMDS +torchbearer/MS +torchlight/M +tore +toreador/MS +torment/SMDG +tormenting/Y +tormentor/MS +torn +tornado/M +tornadoes +torpedo/GMD +torpedoes +torpid/Y +torpidity/M +torpor/M +torque/MGDS +torrent/SM +torrential +torrid/YP +torridity/M +torridness/M +torsion/M +torsional +torso/SM +tort's +tort/FEAS +torte/SM +tortellini/M +tortilla/MS +tortoise/MS +tortoiseshell/SM +tortoni/M +tortuous/PY +tortuousness/M +torture/DRSMZG +torturer/M +torturous +torus +tosh +toss/MDRSZG +tossup/MS +tot/SGMD +total/SMY +totalisator/MS +totalitarian/SM +totalitarianism/M +totality/SM +totalled +totalling +tote/MS +totem/SM +totemic +totted +totter/ZGMDRS +totterer/M +totting +toucan/MS +touch/AGMDS +touchdown/SM +touche/BJ +touched/U +touchily +touchiness/M +touching/Y +touchline/S +touchpaper/S +touchscreen/MS +touchstone/MS +touchy/RPT +tough/XTGMDNRYP +toughen/ZGDR +toughener/M +toughie/SM +toughness/M +toughs +toupee/MS +tour/CFSGDM +tourism/M +tourist/MS +touristic +touristy +tourmaline/M +tournament/SM +tourney/MS +tourniquet/MS +tousle/GDS +tout/MDGS +tow/SZGMDR +toward/S +towboat/MS +towel/SM +towelette/SM +towelled +towelling/SM +tower/GMD +towhead/MDS +towhee/MS +towline/MS +town/MS +townee/S +townhouse/MS +townie/MS +townsfolk/M +township/MS +townsman/M +townsmen +townspeople/M +townswoman/M +townswomen +towpath/M +towpaths +towrope/SM +toxaemia/M +toxic +toxicity/SM +toxicological +toxicologist/SM +toxicology/M +toxin/SM +toy/SGMD +toyboy/S +tr +trabecula +trabeculae +trabecular +trace/JDRSMZG +traceability +traceable/U +tracer/M +tracery/SM +trachea/M +tracheae +tracheal +tracheotomy/SM +tracing/M +track/ZGSMDR +trackball/SM +tracker/M +trackless +tracksuit/S +tract's +tract/CEKFAS +tractability/IM +tractable/I +tractably/I +traction/EFACKM +tractor/FCKMS +trad +trade/JDRSMZG +trademark/SGMD +trader/M +tradesman/M +tradesmen +tradespeople/M +tradeswoman/M +tradeswomen +trading/M +tradition/MS +traditional/Y +traditionalism/M +traditionalist/SM +traduce/DRSZG +traducer/M +traffic/SM +trafficked +trafficker/SM +trafficking/M +tragedian/SM +tragedienne/MS +tragedy/SM +tragic +tragically +tragicomedy/SM +tragicomic +trail/ZGSMDR +trailblazer/MS +trailblazing/M +trailer/M +train/ZGSMDRB +trained/U +trainee/SM +trainer/M +training/M +trainload/MS +trainman/M +trainmen +trainspotter/S +trainspotting +traipse/DSMG +trait/SM +traitor/SM +traitorous/Y +trajectory/SM +tram/MS +tramcar/S +tramlines +trammed +trammel/SM +trammelled/U +trammelling +tramming +tramp/ZGSMDR +tramper/M +trample/DRSMZG +trampler/M +trampoline/MGDS +tramway/S +trance/MS +tranche/S +tranquil/RYT +tranquillise/DRSZG +tranquilliser/M +tranquillity/M +trans/I +transact/DGS +transaction/SM +transactional +transactor/MS +transatlantic +transceiver/SM +transcend/GSD +transcendence/M +transcendent +transcendental/Y +transcendentalism/M +transcendentalist/SM +transcontinental +transcribe/ZGDRS +transcriber/M +transcript/MS +transcription/SM +transducer/MS +transduction +transect/DSG +transept/MS +transfer/MBS +transferal/MS +transference/M +transferred +transferring +transfiguration/M +transfigure/GDS +transfinite +transfix/DSG +transform/BSZGMDR +transformation/SM +transformational +transformer/M +transfuse/DSXGN +transfusion/M +transgender/S +transgenic +transgress/GDS +transgression/SM +transgressor/SM +transience/M +transiency/M +transient/SMY +transistor/SM +transistorise/DSG +transit/SGMD +transition/GSMD +transitional/Y +transitive/ISMY +transitiveness/M +transitivity/M +transitory +transl +translatable/U +translate/DSGNBX +translated/U +translation/M +translator/SM +transliterate/DSGNX +transliteration/M +translocation +translucence/M +translucency/M +translucent/Y +transmigrate/GNDS +transmigration/M +transmissible +transmission/MS +transmit/S +transmittable +transmittal/M +transmittance/M +transmitted +transmitter/SM +transmitting +transmogrification/M +transmogrify/DSNG +transmutation/SM +transmute/BDSG +transnational/MS +transoceanic +transom/SM +transpacific +transparency/SM +transparent/Y +transphobia/M +transphobic +transpiration/M +transpire/DSG +transplant/MDGS +transplantation/M +transpolar +transponder/SM +transport/BSZGMDR +transportation/M +transporter/M +transpose/DSG +transposition/MS +transsexual/SM +transsexualism/M +transship/SL +transshipment/M +transshipped +transshipping +transubstantiation/M +transversal +transverse/MYS +transvestism/M +transvestite/MS +trap/MS +trapdoor/MS +trapeze/SM +trapezium/SM +trapezoid/SM +trapezoidal +trappable +trapped +trapper/SM +trapping/S +trappings/M +trapshooting/M +trash/GMDS +trashcan/MS +trashiness/M +trashy/RPT +trauma/MS +traumatic +traumatically +traumatise/GDS +travail/SGMD +travel/MS +travelled +traveller/SM +travelling/MS +travelogue/MS +traversal/SM +traverse/DSMG +travesty/GDSM +trawl/ZGSMDR +trawler/M +tray/MS +treacherous/PY +treacherousness/M +treachery/SM +treacle/M +treacly +tread/AGSM +treadle/DSMG +treadmill/MS +treas +treason/BM +treasonous +treasure/DRSMZG +treasurer/M +treasury/SM +treat/AGSMD +treatable +treated/U +treatise/SM +treatment/MS +treaty/SM +treble/MGDS +tree/MDS +treeing +treeless +treelike +treeline +treetop/SM +trefoil/SM +trek/MS +trekked +trekker/SM +trekking +trellis/GMDS +trematode/MS +tremble/DSMG +tremendous/Y +tremolo/SM +tremor/MS +tremulous/PY +tremulousness/M +trench's +trench/ADSG +trenchancy/M +trenchant/Y +trencher/MS +trencherman/M +trenchermen +trend/GSMD +trendily +trendiness/M +trendsetter/S +trendsetting +trendy/RSMPT +trepidation/M +trespass/MDRSZG +trespasser/M +tress/EMS +trestle/MS +trews +trey/MS +triad/SM +triage/MD +trial/ASM +trialled +trialling +triangle/SM +triangular/Y +triangulate/GNDS +triangulation/M +triathlete/S +triathlon/SM +tribal +tribalism/M +tribe/SM +tribesman/M +tribesmen +tribeswoman/M +tribeswomen +tribulation/SM +tribunal/SM +tribune/MS +tributary/SM +tribute's +tribute/FS +trice/M +tricentennial/MS +triceps/MS +triceratops/M +trichina/M +trichinae +trichinosis/M +trick/GSMD +trickery/M +trickily +trickiness/M +trickle/MGDS +trickster/SM +tricky/TRP +tricolour/MS +tricycle/SM +trident/MS +tried/U +triennial/MYS +trier/SM +trifecta/SM +trifle/MZGDRS +trifler/M +trifocals/M +trig/M +trigger/MDSG +triglyceride/MS +trigonometric +trigonometrical +trigonometry/M +trike/SM +trilateral/S +trilby/SM +trill/GSMD +trillion/SMH +trillionth/M +trillionths +trillium/M +trilobite/SM +trilogy/SM +trim/PMYS +trimaran/MS +trimester/SM +trimmed/U +trimmer/SM +trimmest +trimming/SM +trimmings/M +trimness/M +trimonthly +trinitrotoluene/M +trinity/SM +trinket/SM +trio/MS +trip/MYS +tripartite +tripe/M +triple/MGDS +triplet/SM +triplex/MS +triplicate/MGDS +tripod/MS +tripodal +tripos +tripped +tripper/SM +tripping +triptych/M +triptychs +tripwire/S +trireme/SM +trisect/SDG +trisection/M +trite/FPYT +triteness/FM +triter +tritium/M +triumph/GMD +triumphal +triumphalism +triumphalist +triumphant/Y +triumphs +triumvir/MS +triumvirate/SM +trivalent +trivet/MS +trivia/M +trivial/Y +trivialisation/M +trivialise/GDS +triviality/SM +trivium/M +trochaic +trochee/SM +trod/AU +trodden/A +troglodyte/SM +troika/MS +troll/SGMD +trolley/SM +trolleybus/MS +trollop/SM +trombone/MS +trombonist/MS +tromp/SGD +tron/S +troop/SZGMDR +trooper/M +troopship/MS +trope/SM +trophy/SM +tropic/MS +tropical/Y +tropics/M +tropism/SM +troposphere/SM +trot/MS +troth/M +trotted +trotter/SM +trotting +troubadour/MS +trouble/DSMG +troubled/U +troublemaker/MS +troubleshoot/DRZGS +troubleshooter/M +troubleshooting/M +troubleshot +troublesome/Y +trough/M +troughs +trounce/DRSZG +trouncer/M +troupe/MZGDRS +trouper/M +trouser/SM +trousers/M +trousseau/M +trousseaux +trout/SM +trove/SM +trow/DSG +trowel/MS +trowelled +trowelling +troy/S +truancy/M +truant/GMDS +truce/SM +truck/SZGMDR +trucker/M +trucking/M +truckle/MGDS +truckload/SM +truculence/M +truculent/Y +trudge/MGDS +true/MTGDRS +truelove/SM +truffle/MS +trug/S +truism/MS +truly/U +trump/SGMD +trumpery/M +trumpet/ZGMDRS +trumpeter/M +truncate/GNDS +truncation/M +truncheon/SM +trundle/MZGDRS +trundler/M +trunk/SGM +truss/GMDS +trust/ESGMD +trustee/MS +trusteeship/SM +trustful/EY +trustfulness/M +trusting/Y +trustworthiness/M +trustworthy/TPR +trusty/TRSM +truth/ZMR +truther/M +truthful/UYP +truthfulness/UM +truthiness +truths/U +try's +try/AGDS +trying/Y +tryout/SM +tryptophan +tryst/SMDG +tsar/MS +tsarists +tsetse/MS +tsp +tsunami/SM +ttys +tub/SZGMDR +tuba/MS +tubal +tubby/TR +tube/MS +tubeless/M +tuber/M +tubercle/SM +tubercular +tuberculin/M +tuberculosis/M +tuberculous +tuberose/M +tuberous +tubful/MS +tubing/M +tubular +tubule/MS +tuck/MDRSZG +tucker/MDG +tuft/MDRSZG +tufter/M +tug/SM +tugboat/MS +tugged +tugging +tuition/IM +tularaemia +tularemia's +tulip/SM +tulle/M +tum/S +tumble/DRSMZG +tumbledown +tumbler/M +tumbleweed/SM +tumbling/M +tumbril/SM +tumescence/M +tumescent +tumid +tumidity/M +tummy/SM +tumorous +tumour/SM +tumult/SM +tumultuous/Y +tun/SZGMDR +tuna/MS +tundra/SM +tune/MS +tuneful/YP +tunefulness/M +tuneless/Y +tuner/M +tuneup/SM +tungsten/M +tunic/SM +tunnel/SM +tunnelled +tunneller/SM +tunnelling/S +tunny/SM +tuple/S +tuppence +tuppenny +tuque/SM +turban/SMD +turbid +turbidity/M +turbine/SM +turbo/SM +turbocharge/ZGDRS +turbocharger/M +turbofan/SM +turbojet/SM +turboprop/SM +turbot/SM +turbulence/M +turbulent/Y +turd/MS +turducken/SM +tureen/SM +turf/MDSG +turfy +turgid/Y +turgidity/M +turkey/SM +turmeric/SM +turmoil/MS +turn/AMDRSZG +turnabout/SM +turnaround/SM +turnbuckle/SM +turncoat/SM +turner/AM +turning/MS +turnip/SM +turnkey/MS +turnoff/MS +turnout/MS +turnover/MS +turnpike/MS +turnstile/SM +turntable/SM +turpentine/M +turpitude/M +turps +turquoise/SM +turret/SMD +turtle/SM +turtledove/SM +turtleneck/SMD +tush/MS +tusk/MDS +tussle/DSMG +tussock/MS +tussocky +tut/SM +tutelage/M +tutelary +tutor/SMDG +tutored/U +tutorial/SM +tutorship/M +tutted +tutti/SM +tutting +tutu/MS +tux/MS +tuxedo/SM +twaddle/MZGDRS +twaddler/M +twain/M +twang/SMDG +twangy/RT +twas +twat/S +tweak/SMDG +twee +tweed/SM +tweeds/M +tweedy/RT +tween +tweet's +tweet/ASDG +tweeter/SM +tweezers/M +twelfth/M +twelfths +twelve/SM +twelvemonth/M +twelvemonths +twentieth/M +twentieths +twenty/SMH +twerk/SDG +twerp/SM +twice +twiddle/MGDS +twiddly +twig/MS +twigged +twigging +twiggy/TR +twilight/M +twilit +twill/MD +twin/MDRSZG +twine/SM +twiner/M +twinge/DSMG +twink/SY +twinkle/MGJDS +twinkling/M +twinned +twinning +twinset/S +twirl/SMDRZG +twirler/M +twirly +twist's +twist/USDG +twister/MS +twisty/TR +twit/MS +twitch/GMDS +twitchy/RT +twitted +twitter/MDSG +twittery +twitting +twixt +two/SM +twofer/SM +twofold +twopence/SM +twopenny +twosome/SM +twp +tycoon/SM +tying/AU +tyke/MS +tympani/M +tympanic +tympanist/MS +tympanum/SM +type's +type/AGDS +typecast/GS +typeface/MS +typescript/MS +typeset/S +typesetter/MS +typesetting/M +typewrite/RSZG +typewriter/M +typewriting/M +typewritten +typewrote +typhoid/M +typhoon/MS +typhus/M +typical/UY +typicality/M +typification/M +typify/NGDS +typing/M +typist/SM +typo/MS +typographer/SM +typographic +typographical/Y +typography/M +typology/SM +tyrannic +tyrannical/Y +tyrannicidal +tyrannicide/S +tyrannise/GDS +tyrannosaur/MS +tyrannosaurus/MS +tyrannous +tyranny/SM +tyrant/SM +tyre/MS +tyro/MS +tzatziki +u/S +ubiquitous/Y +ubiquity/M +udder/SM +ufologist/SM +ufology/M +ugh +ugliness/M +ugly/RTP +uh +uhf +ukase/SM +ukulele/SM +ulcer/SM +ulcerate/XDSGN +ulceration/M +ulcerous +ulna/M +ulnae +ulnar +ulster/MS +ult +ulterior +ultimate/MY +ultimatum/MS +ultimo +ultra/SM +ultraconservative/SM +ultrahigh +ultralight/SM +ultramarine/M +ultramodern +ultrasensitive +ultrashort +ultrasonic +ultrasonically +ultrasound/MS +ultraviolet/M +ululate/DSGNX +ululation/M +um +umbel/SM +umber/M +umbilical +umbilici +umbilicus/M +umbra/SM +umbrage/M +umbrella/SM +umiak/SM +umlaut/MS +ump/SGMD +umpire/MGDS +umpteen/H +unabridged/MS +unacceptability +unacceptable +unaccommodating +unaccountably +unadventurous +unaesthetic +unalterably +unambitious +unanimity/M +unanimous/Y +unapparent +unappetising +unappreciative +unary +unassertive +unassimilable +unassuming/Y +unavailing/Y +unaware/S +unbeknown +unbend/SG +unbent +unbid +unblinking/Y +unblushing/Y +unbosom/DG +unbound/D +unbox/GDS +unbreakable +unbroken +uncanny/T +uncap/S +uncaring +unceasing/Y +unchangeable +uncharacteristic +uncharitable +unchaste/RT +uncial/M +uncle/SM +unclean/DRPT +uncleanly/T +unclear/DRT +uncomfortable +uncommon/T +uncompelling +uncomplaining/Y +uncomplicated +uncomprehending/Y +uncompromising/Y +unconditional/Y +uncongenial +unconscionable +unconscionably +unconscious/M +unconstitutional/Y +uncontrollably +uncontroversial +uncool +uncooperative +uncouth/Y +uncrushable +unction/SM +unctuous/YP +unctuousness/M +uncut +undaunted/Y +undecided/SM +undemonstrative/Y +undeniably +under +underachieve/LZGDRS +underachiever/M +underact/SDG +underage +underappreciated +underarm/SM +underbelly/SM +underbid/S +underbidding +underbrush/M +undercarriage/MS +undercharge/MGDS +underclass/MS +underclassman/M +underclassmen +underclothes/M +underclothing/M +undercoat/GJSMD +undercoating/M +undercover +undercurrent/SM +undercut/SM +undercutting +underdeveloped +underdevelopment/M +underdog/SM +underdone +underemployed +underemployment/M +underestimate/DSMGNX +underestimation/M +underexpose/GDS +underexposure/MS +underfed +underfeed/GS +underfloor +underflow +underfoot +underfunded +underfur/M +undergarment/SM +undergo/G +undergoes +undergone +undergrad/S +undergraduate/SM +underground/MS +undergrowth/M +underhand +underhanded/PY +underhandedness/M +underinflated +underlain +underlay/SM +underlie/S +underline/MGDS +underling/MS +underlip/SM +underlying +undermanned +undermentioned +undermine/GDS +undermost +underneath/M +underneaths +undernourished +undernourishment/M +underpaid +underpants/M +underpart/MS +underpass/MS +underpay/GSL +underpayment/SM +underpin/S +underpinned +underpinning/MS +underplay/DGS +underpopulated +underprivileged +underproduction/M +underrate/GDS +underrepresented +underscore/DSMG +undersea/S +undersecretary/SM +undersell/GS +undersexed +undershirt/SM +undershoot/SG +undershorts/M +undershot +underside/MS +undersign/DGS +undersigned/M +undersized +underskirt/SM +undersold +understaffed +understand/SGBJ +understandably +understanding/MY +understate/DSLG +understatement/SM +understood +understudy/GDSM +undertake/ZGJRS +undertaken +undertaker/M +undertaking/M +underthings/M +undertone/MS +undertook +undertow/SM +underused +underutilised +undervaluation/M +undervalue/DSG +underwater +underway +underwear/M +underweight/M +underwent +underwhelm/DGS +underwire/DS +underworld/MS +underwrite/ZGRS +underwriter/M +underwritten +underwrote +undesirable/MS +undies/M +undo +undoubted/Y +undramatic +undue +undulant +undulate/DSXGN +undulation/M +undying +unearthliness/M +unease/M +uneasy/T +uneatable +uneconomic +unemployed/M +unending +unenterprising +unequal/Y +unerring/Y +unessential +uneven/Y +unexceptionably +unexcited +unexciting +unexpected/YP +unexpectedness/M +unfailing/Y +unfair/PTRY +unfaltering +unfamiliar +unfathomably +unfed +unfeeling/Y +unfeminine +unfit/S +unfitting +unfix/GDS +unflagging/Y +unflappability/M +unflappable +unflappably +unflattering +unflinching/Y +unforgettably +unforgivably +unfortunate/MS +unfriendly/T +unfrock/DG +unfruitful +unfunny +ungainliness/M +ungainly/RPT +ungenerous +ungentle +ungodly/T +ungraceful/Y +ungrudging +unguarded +unguent/SM +ungulate/MS +unhandy/T +unhappy/T +unhealthful +unhealthy/T +unhistorical +unholy/T +unhurt +unicameral +unicellular +unicorn/SM +unicycle/SM +unidirectional +unification/AM +uniform/SMDYG +uniformity/M +unify/AGDSN +unilateral/Y +unilateralism +unimportant +unimpressive +uninformative +uninhibited/Y +uninsured +unintelligent +unintended +uninteresting +uninterrupted/Y +uninterruptible +uninviting +union/ASM +unionism/M +unionist/MS +unique/YTRP +uniqueness/M +unisex/M +unison/M +unitary +unite/AEGSD +unitedly +unities +unitise/DSG +unity/EM +univalent +univalve/SM +universal/MYS +universalise/DSG +universalism +universalist +universality/M +universe/SM +university/SM +univocal +unjust/Y +unkempt +unkind/T +unkindly/T +unknowable/M +unknown/SM +unleaded/M +unless +unlike/PB +unlikely/T +unlivable +unlock/DSG +unlovable +unlovely/TR +unloving +unlucky/T +unmanly/T +unmarried +unmeaning +unmentionable/MS +unmentionables/M +unmet +unmindful +unmissable +unmistakably +unmoral +unmovable +unmusical +unnecessary +unnerving/Y +unobservant +unoffensive +unofficial/Y +unoriginal +unpeople +unperceptive +unpersuasive +unpick/GDS +unpin/S +unpleasing +unpolitical +unpopular +unpractical +unprecedented/Y +unprofessional/Y +unpromising +unpropitious +unquestioning/Y +unquiet/TR +unravelling +unread/B +unready +unreal +unreasoning +unregenerate +unrelated +unrelenting/Y +unrelieved/Y +unremarkable +unremitting/Y +unrepentant +unreported +unrepresentative +unrest/M +unrevealing +unripe/TR +unroll/GDS +unromantic +unruliness/M +unruly/RTP +unsafe/YTR +unsalable +unsavoury +unscathed +unseeing/Y +unseemly/T +unseen/M +unsentimental +unset +unshakably +unshakeable +unshapely +unshockable +unshorn +unsightliness/M +unsightly/PT +unskillful/Y +unsmiling +unsociable +unsocial +unsold +unsound/PRYT +unspeakable +unspeakably +unspecific +unspectacular +unsporting +unstable +unsteady/TRP +unstinting/Y +unstrapping +unsubstantial +unsubtle +unsuitable +unsure +unsuspecting/Y +unsymmetrical +untactful +unthinkably +unthinking/Y +untidy/PTR +until +untimely/T +untiring/Y +untouchable/MS +untoward +untraveled +untrue/RT +untrustworthy +untruth/M +unutterable +unutterably +unwarrantable +unwary/T +unwavering +unwed +unwelcome/G +unwell +unwieldiness/M +unwieldy/TRP +unwise/RYT +unworried +unworthy/T +unwound +unwrapping +unyielding +up/S +upbeat/MS +upbraid/SGD +upbringing/MS +upchuck/SGD +upcoming +upcountry/M +update/MGDRS +updraught/SM +upend/SGD +upfront +upgrade/MGDS +upheaval/MS +upheld +uphill/MS +uphold/ZGRS +upholder/M +upholster/ASGD +upholsterer/MS +upholstery/M +upkeep/M +upland/MS +uplift/JSMDG +upload/SDG +upmarket +upmost +upon +upped +upper/SM +uppercase/M +upperclassman/M +upperclassmen +upperclasswoman +upperclasswomen +uppercut/MS +uppercutting +uppermost +upping +uppish +uppity +upraise/DSG +uprear/GSD +upright/MYPS +uprightness/M +uprising/SM +upriver +uproar/SM +uproarious/Y +uproot/GSD +upscale +upset/SM +upsetting +upshot/SM +upside/SM +upsilon/MS +upstage/GDS +upstairs +upstanding +upstart/MDSG +upstate/M +upstream +upstroke/SM +upsurge/MGDS +upswing/MS +uptake/SM +uptempo +upthrust/GSM +uptick/SM +uptight +uptown/M +uptrend +upturn/GSMD +upward/SY +upwind +uracil/M +uraemia/M +uraemic +uranium/M +urban +urbane/RYT +urbanisation/M +urbanise/DSG +urbanity/M +urbanologist/MS +urbanology/M +urchin/SM +urea/M +ureter/SM +urethane/M +urethra/M +urethrae +urethral +urge/MGDS +urgency/M +urgent/Y +uric +urinal/SM +urinalyses +urinalysis/M +urinary +urinate/GNDS +urination/M +urine/M +urn/SM +urogenital +urological +urologist/MS +urology/M +ursine +urticaria/M +usability/M +usable/UA +usage/SM +use/AEDSMG +used/U +useful/PY +usefulness/M +useless/YP +uselessness/M +user/MS +username/MS +usher/SMDG +usherette/SM +usu +usual's +usual/UY +usurer/SM +usurious +usurp/SDRZG +usurpation/M +usurper/M +usury/M +utensil/SM +uteri +uterine +uterus/M +utilisation/M +utilise/GBDS +utilitarian/MS +utilitarianism/M +utility/SM +utmost/M +utopia/SM +utter/SDYG +utterance/SM +uttermost/M +uveitis +uvula/SM +uvular/MS +uxorious +v/AS +vac/S +vacancy/SM +vacant/Y +vacate/DSG +vacation/ZGMDRS +vacationer/M +vacationist/SM +vaccinate/GNDSX +vaccination/M +vaccine/SM +vacillate/XGNDS +vacillation/M +vacuity/M +vacuole/MS +vacuous/YP +vacuousness/M +vacuum/GSMD +vagabond/SMDG +vagabondage/M +vagarious +vagary/SM +vagina/SM +vaginae +vaginal/Y +vaginitis +vagrancy/M +vagrant/MS +vague/RYTP +vagueness/M +vagus +vain/RYT +vainglorious/Y +vainglory/M +val +valance/MS +vale/MS +valediction/MS +valedictorian/SM +valedictory/SM +valence/MS +valency/SM +valentine/SM +valet/SMDG +valetudinarian/MS +valetudinarianism/M +valiance/M +valiant/Y +valid/Y +validate/IGNDS +validation/IM +validations +validity/IM +validness/M +valise/SM +valley/SM +valorous/Y +valour/M +valuable/MS +valuate/DSG +valuation/CAMS +value's +value/CAGSD +valueless +valuer/SM +valve/DSMG +valveless +valvular +vamoose/DSG +vamp/AMDGS +vampire/SM +van/SM +vanadium/M +vandal/SM +vandalise/DSG +vandalism/M +vane/MS +vanguard/MS +vanilla/SM +vanish/JDSG +vanity/SM +vanned +vanning +vanquish/ZGDRS +vanquisher/M +vantage/SM +vape/GDS +vapid/YP +vapidity/M +vapidness/M +vaporisation/M +vaporise/DRSZG +vaporiser/M +vaporous +vaporware +vapour/SM +vapoury +vaquero/MS +var/S +variability/IM +variable/ISM +variably/I +variance/SM +variant/MS +variate/NX +variation/M +varicoloured +varicose +varied/U +variegate/DSGN +variegation/M +varietal/SM +variety/SM +various/Y +varlet/SM +varmint/MS +varnish/GMDS +varnished/U +varsity/SM +vary/DSG +varying/U +vascular +vase/MS +vasectomy/SM +vasoconstriction +vasomotor +vassal/SM +vassalage/M +vast/MRYTSP +vastness/M +vat/SM +vatted +vatting +vaudeville/M +vaudevillian/MS +vault/SMDRZG +vaulter/M +vaulting/M +vaunt/SMDG +vb +veal/M +vector/SGMD +veejay/SM +veep/MS +veer/MDGS +veg/M +vegan/SM +veganism +vegeburger/S +veges +vegetable/SM +vegetarian/SM +vegetarianism/M +vegetate/GNVDS +vegetation/M +vegged +vegges +veggie/SM +veggieburger/S +vegging +vehemence/M +vehemency/M +vehement/Y +vehicle/MS +vehicular +veil's +veil/UDGS +vein/MDGS +vela +velar/SM +veld/MS +vellum/M +velocipede/MS +velocity/SM +velodrome/S +velour/MS +velum/M +velvet/M +velveteen/M +velvety +venal/Y +venality/M +venation/M +vend/DGS +vendetta/SM +vendible +vendor/MS +veneer/MDGS +venerability/M +venerable +venerate/DSGN +veneration/M +venereal +vengeance/M +vengeful/AY +venial +venireman/M +veniremen +venison/M +venom/M +venomous/Y +venous +vent's +vent/DGS +ventilate/GNDS +ventilation/M +ventilator/SM +ventilatory +ventral +ventricle/SM +ventricular +ventriloquism/M +ventriloquist/SM +ventriloquy/M +venture/DSMG +venturesome/PY +venturesomeness/M +venturous/PY +venturousness/M +venue/ASM +veracious/Y +veracity/M +veranda/SM +verapamil +verb/KMS +verbal/MYS +verbalisation/M +verbalise/GDS +verbatim +verbena/SM +verbiage/MS +verbose/Y +verbosity/M +verboten +verdant/Y +verdict/SM +verdigris/GMDS +verdure/M +verge's +verge/FDSG +verger/MS +verifiable/U +verification/M +verified/U +verify/DSNG +verily +verisimilitude/M +veritable +veritably +verity/SM +vermicelli/M +vermiculite/M +vermiform +vermilion/M +vermin/M +verminous +vermouth/M +vernacular/MS +vernal +vernier/SM +veronica/M +verruca/SM +verrucae +versa +versatile +versatility/M +verse/AFNGMSDX +versed/U +versification/M +versifier/M +versify/ZGNDRS +version/AFIMS +versioned +versioning +verso/SM +versus +vert/A +vertebra/M +vertebrae +vertebral +vertebrate/IMS +vertex/MS +vertical/MYS +vertices +vertiginous +vertigo/M +verve/M +very/RT +vesicle/SM +vesicular +vesiculate +vesper/MS +vessel/MS +vest's +vest/ILDGS +vestal/MS +vestibule/MS +vestige/SM +vestigial/Y +vesting/M +vestment/IMS +vestry/SM +vestryman/M +vestrymen +vet/SM +vetch/MS +veteran/SM +veterinarian/MS +veterinary/SM +veto/MDG +vetoes +vetted +vetting +vex/GDS +vexation/SM +vexatious/Y +vhf +vi +via +viability/M +viable +viably +viaduct/SM +vial/MS +viand/SM +vibe/MS +vibes/M +vibraharp/SM +vibrancy/M +vibrant/Y +vibraphone/MS +vibraphonist/MS +vibrate/GNDSX +vibration/M +vibrato/MS +vibrator/SM +vibratory +viburnum/SM +vicar/SM +vicarage/SM +vicarious/YP +vicariousness/M +vice/CMS +viced +vicegerent/SM +vicennial +viceregal +viceroy/MS +vichyssoise/M +vicing +vicinity/M +vicious/YP +viciousness/M +vicissitude/SM +victim/MS +victimisation/M +victimise/GDS +victimless +victor/MS +victorious/Y +victory/SM +victual/SM +victualled +victualling +vicuna/MS +videlicet +video/GSMD +videocassette/SM +videoconferencing +videodisc/MS +videophone/MS +videotape/DSMG +videotex +vie/DS +view/AMDRSZG +viewable +viewer/AM +viewership/M +viewfinder/SM +viewing/SM +viewpoint/MS +vigesimal +vigil/SM +vigilance/M +vigilant/Y +vigilante/SM +vigilantism/M +vigilantist/M +vignette/DSMG +vignettist/MS +vigorous/Y +vigour/M +vii +viii +viking/MS +vile/YTPR +vileness/M +vilification/M +vilify/DSNG +villa/SM +village/RSMZ +villager/M +villain/SM +villainous +villainy/SM +villein/SM +villeinage/M +villi +villus/M +vim/M +vinaigrette/M +vincible/I +vindicate/XDSGN +vindication/M +vindicator/MS +vindictive/PY +vindictiveness/M +vine/MS +vinegar/M +vinegary +vineyard/MS +vino/M +vinous +vintage/MS +vintner/MS +vinyl/SM +viol/MBS +viola/SM +violable/I +violate/GNDSX +violation/M +violator/SM +violence/M +violent/Y +violet/MS +violin/MS +violincello/S +violinist/SM +violist/MS +violoncellist/SM +violoncello/MS +viper/SM +viperous +virago/M +viragoes +viral +vireo/SM +virgin/MS +virginal/SM +virginity/M +virgule/MS +virile +virility/M +virologist/SM +virology/M +virtual/Y +virtualisation +virtue/SM +virtuosity/M +virtuoso/M +virtuous/YP +virtuousness/M +virulence/M +virulent/Y +virus/MS +visa/MDSG +visage/MS +viscera +visceral/Y +viscid +viscose/M +viscosity/M +viscount/SM +viscountcy/SM +viscountess/MS +viscous +viscus/M +vise/ACMGDS +visibility/IM +visible/I +visibly/I +vision/KGDSM +visionary/SM +visit's +visit/ASGD +visitant/MS +visitation/MS +visitor/MS +visor/SM +vista/SM +visual/SMY +visualisation/SM +visualise/DRSZG +visualiser/M +vita/M +vitae +vital/SY +vitalisation/AM +vitalise/CAGSD +vitality/M +vitals/M +vitamin/MS +vitiate/GNDS +vitiation/M +viticulture/M +viticulturist/MS +vitreous +vitrifaction/M +vitrification/M +vitrify/GNDS +vitrine/SM +vitriol/M +vitriolic +vitriolically +vittles/M +vituperate/GNVDS +vituperation/M +viva/MS +vivace +vivacious/PY +vivaciousness/M +vivacity/M +vivaria +vivarium/SM +vivid/RYTP +vividness/M +vivify/ADSG +viviparous +vivisect/DGS +vivisection/M +vivisectional +vivisectionist/SM +vixen/SM +vixenish/Y +viz +vizier/SM +vlf +vocab +vocable/MS +vocabulary/SM +vocal/SMY +vocalic +vocalisation/SM +vocalise/DSG +vocalist/SM +vocation/FIKASM +vocational/Y +vocative/MS +vociferate/DSGN +vociferation/M +vociferous/YP +vociferousness/M +vodka/SM +vogue/SM +voguish +voice/IDSMG +voiced/U +voiceless/PY +voicelessness/M +voicemail/SM +void/MDSGB +voila +voile/M +vol/S +volatile +volatilise/DSG +volatility/M +volcanic +volcanism +volcano/M +volcanoes +vole/MS +volition/M +volitional +volley/GSMD +volleyball/MS +volt/AMS +voltage/MS +voltaic +voltmeter/SM +volubility/M +voluble +volubly +volume/SM +volumetric +voluminous/YP +voluminousness/M +voluntarily/I +voluntarism/M +voluntary/SM +volunteer/SGMD +volunteerism/M +voluptuary/SM +voluptuous/PY +voluptuousness/M +volute/SM +vomit/SMDG +voodoo/GSMD +voodooism/M +voracious/PY +voraciousness/M +voracity/M +vortex/MS +votary/SM +vote's +vote/CGVDS +voter/SM +vouch/DRSZG +voucher/M +vouchsafe/DSG +vow/SGMD +vowel/SM +voyage/MZGDRS +voyager/M +voyageur/SM +voyeur/MS +voyeurism/M +voyeuristic +vulcanisation/M +vulcanise/GDS +vulgar/RYT +vulgarian/MS +vulgarisation/M +vulgarise/ZGDRS +vulgariser/M +vulgarism/MS +vulgarity/SM +vulnerabilities +vulnerability/IM +vulnerable/I +vulnerably/I +vulpine +vulture/SM +vulturous +vulva/M +vulvae +vuvuzela/MS +vying +w/DNXTGVJ +wabbit/S +wack/MRTS +wackiness/M +wacko/SM +wacky/RPT +wad/SZGMDR +wadded +wadding/M +waddle/DSMG +wade/MS +wader/M +waders/M +wadge/S +wadi/MS +wafer/SM +waffle/MZGDRS +waffler/M +waft/MDGS +wag/SZGMDR +wage/MS +waged/U +wager/ZGMDR +wagerer/M +wagged +waggery/SM +wagging +waggish/YP +waggishness/M +waggle/MGDS +wagon/ZSMR +wagoner/M +wagtail/SM +waif/MS +wail/MDRZGS +wailer/M +wailing/M +wain/MS +wainscot/SJMDG +wainscoting/M +wainwright/MS +waist/SM +waistband/MS +waistcoat/MS +waistline/MS +wait/MDRZGS +waiter/M +waiting/M +waitperson/MS +waitress/MS +waitstaff/M +waive/DRSZG +waiver/M +wake/MGJDS +wakeful/PY +wakefulness/M +waken/GSD +waldo/S +waldoes +wale/MGDS +walk/MDRZGS +walkabout/S +walkaway/MS +walker/M +walkies +walking/M +walkout/SM +walkover/MS +walkway/SM +wall/MDGS +wallaby/SM +wallah +wallahs +wallboard/M +wallet/MS +walleye/DSM +wallflower/MS +wallop/MDSJG +walloping/M +wallow/MDSG +wallpaper/SMDG +wally/S +walnut/MS +walrus/MS +waltz/ZGMDRS +waltzer/M +wampum/M +wan/GPDY +wand/MS +wander/DRSJZG +wanderer/M +wanderings/M +wanderlust/SM +wane/MS +wangle/MZGDRS +wangler/M +wank/DRZGS +wanna +wannabe/SM +wannabee/S +wanner +wanness/M +wannest +want/MDGS +wanted/U +wanton/MDYSPG +wantonness/M +wapiti/MS +war/SM +warble/MZGDRS +warbler/M +warbonnet/SM +ward/AMDGS +warden/MS +warder/MS +wardress/S +wardrobe/SM +wardroom/SM +ware/MS +warehouse/DSMG +warez +warfare/M +warfarin +warhead/MS +warhorse/SM +warily/U +wariness/UM +warlike +warlock/MS +warlord/MS +warm/PDRYHZTGS +warmblooded +warmer/M +warmhearted/P +warmheartedness/M +warmish +warmness/M +warmonger/SMG +warmongering/M +warmth/M +warn/JDGS +warning/M +warp/MDGS +warpaint +warpath/M +warpaths +warplane/MS +warrant/GMDS +warranted/U +warranty/DSMG +warred +warren/MS +warring +warrior/SM +warship/SM +wart/MS +warthog/SM +wartime/M +warty/TR +wary/UPRT +was +wasabi +wash/BJMDRSZG +washable/SM +washbasin/SM +washboard/SM +washbowl/SM +washcloth/M +washcloths +washed/U +washer/M +washerwoman/M +washerwomen +washing/M +washout/MS +washrag/MS +washroom/MS +washstand/SM +washtub/MS +washy/TR +wasn't +wasp/MS +waspish/YP +waspishness/M +wassail/SMDG +wast +wastage/M +waste/DRSMZG +wastebasket/MS +wasteful/PY +wastefulness/M +wasteland/SM +wastepaper/M +waster/M +wastewater +wastrel/SM +watch/BZGMDRS +watchable/U +watchband/MS +watchdog/SM +watcher/M +watchful/YP +watchfulness/M +watchmaker/MS +watchmaking/M +watchman/M +watchmen +watchstrap/S +watchtower/SM +watchword/MS +water/GSMD +waterbed/MS +waterbird/SM +waterboard/MDJSG +waterboarding/M +waterborne +watercolour/MS +watercourse/SM +watercraft/M +watercress/M +waterfall/SM +waterfowl/SM +waterfront/MS +waterhole/SM +wateriness/M +waterlily/SM +waterline/MS +waterlogged +watermark/MDGS +watermelon/SM +watermill/MS +waterproof/SMDG +waterproofing/M +waters/M +watershed/MS +waterside/MS +waterspout/SM +watertight +waterway/MS +waterwheel/SM +waterworks/M +watery/PTR +watt/MS +wattage/M +wattle/MGDS +wave/MZGDRS +waveband/S +waveform +wavefront +wavelength/M +wavelengths +wavelet/SM +wavelike +waver/ZGMDR +waverer/M +wavering/Y +waviness/M +wavy/PRT +wax/GMDNS +waxiness/M +waxwing/SM +waxwork/SM +waxy/RPT +way/SM +waybill/SM +wayfarer/MS +wayfaring/SM +waylaid +waylay/RSZG +waylayer/M +wayside/SM +wayward/PY +waywardness/M +wazoo/S +we +we'd +we'll +we're +we've +weak/PNRYXT +weaken/DRZG +weakener/M +weakfish/MS +weakish +weakling/SM +weakness/MS +weal/MHS +wealth/M +wealthiness/M +wealthy/TRP +wean/DGS +weapon/MS +weaponize/GDS +weaponless +weaponry/M +wear/MRBJSZG +wearable/U +wearer/M +wearied/U +wearily +weariness/M +wearisome/Y +weary/TGDRSP +weasel/MYS +weaselled +weaselling +weather/SMDG +weatherboard/SG +weathercock/MS +weathering/M +weatherise/DSG +weatherization/M +weatherman/M +weathermen +weatherperson/MS +weatherproof/GSD +weatherstrip/S +weatherstripped +weatherstripping/M +weave/DRSMZG +weaver/M +weaving/M +web/SM +webbed +webbing/M +webcam/MS +webcast/SMG +webfeet +webfoot/M +webinar/SM +webisode/MS +weblog/MS +webmaster/SM +webmistress/MS +website/SM +wed/AS +wedded/A +wedder +wedding/SM +wedge/DSMG +wedgie/MS +wedlock/M +wee/RSMT +weed/MDRSZG +weeder/M +weedkiller/S +weedless +weedy/TR +weeing +week/MYS +weekday/SM +weekend/SZGMDR +weekly/SM +weeknight/SM +ween/DSG +weenie/MTRS +weensy/RT +weeny +weep/MRJSZG +weeper/M +weepie +weepy/TRSM +weevil/MS +weft/MS +weigh's +weigh/AGD +weighbridge/S +weighs/A +weight/MDSJG +weighted/U +weightily +weightiness/M +weightless/YP +weightlessness/M +weightlifter/MS +weightlifting/M +weighty/PTR +weir/MS +weird/PTRY +weirdie/MS +weirdness/M +weirdo/MS +welcome/MGDS +weld/MDRBSZG +welder/M +welfare/M +welkin/M +well/MDPSG +wellhead/SM +wellie +wellington/MS +wellness/M +wellspring/MS +welly/S +welsh/ZGDRS +welsher/M +welt/MDRSZG +welter/GMD +welterweight/SM +wen/M +wench/MS +wend/DSG +went +wept +were +weren't +werewolf/M +werewolves +west/M +westbound +westerly/SM +western/SZMR +westerner/M +westernisation/M +westernise/GDS +westernmost +westward/S +wet/SMYP +wetback/SM +wetland/SM +wetness/M +wetter/SM +wettest +wetting +wetware/S +whack/SJZGMDR +whacker/M +whale/DRSMZG +whaleboat/MS +whalebone/M +whaler/M +whaling/M +wham/MS +whammed +whamming +whammy/SM +wharf/M +wharves +what/MS +whatchamacallit/MS +whatever +whatnot/M +whatshername +whatshisname +whatsit/S +whatsoever +wheal/SM +wheat/MN +wheatgerm +wheatmeal +whee +wheedle/DRSZG +wheedler/M +wheel/SMDRG +wheelbarrow/SM +wheelbase/SM +wheelchair/SM +wheelhouse/MS +wheelie/SM +wheelwright/MS +wheeze/DSMG +wheezily +wheeziness/M +wheezy/PRT +whelk/SMD +whelm/SDG +whelp/SMDG +when/MS +whence +whenever +whensoever +where/SM +whereabouts/M +whereas +whereat +whereby +wherefore/MS +wherein +whereof +whereon +wheresoever +whereto +whereupon +wherever +wherewith +wherewithal/M +wherry/SM +whet/S +whether +whetstone/SM +whetted +whetting +whew +whey/M +which +whichever +whiff/SMDG +whiffletree/MS +while/DSMG +whilom +whilst +whim/MS +whimper/MDGS +whimsical/Y +whimsicality/M +whimsy/SM +whine/DRSMZG +whiner/M +whinge/DRSZG +whingeing +whinny/GDSM +whiny/RT +whip/MS +whipcord/M +whiplash/MS +whipped +whipper/MS +whippersnapper/MS +whippet/MS +whipping/SM +whippletree/SM +whippoorwill/MS +whipsaw/MDGS +whirl/SMDG +whirligig/MS +whirlpool/MS +whirlwind/MS +whirlybird/SM +whirr/SMDG +whisk/SMDRZG +whisker/MD +whiskery +whisky/SM +whiskys +whisper/MDRSZG +whisperer/M +whist/M +whistle/MZGDRS +whistler/M +whit/MDNRSXTGJ +white/SPM +whitebait +whiteboard/S +whitecap/SM +whitefish/MS +whitehead/MS +whitelist/GDS +whiten/ZGDRJ +whitener/M +whiteness/M +whitening/M +whiteout/SM +whitetail/MS +whitewall/SM +whitewash/MDSG +whitewater/M +whitey/SM +whither +whiting/M +whitish +whittle/ZGDRS +whittler/M +whizkid/M +whizz/MDSG +whizzbang/MS +who'd +who'll +who're +who've +who/M +whoa +whodunit/MS +whoever +whole/SMP +wholefood/S +wholegrain +wholehearted/YP +wholeheartedness/M +wholemeal +wholeness/M +wholesale/MZGDRS +wholesaler/M +wholesome/UP +wholesomely +wholesomeness/UM +wholewheat +wholly +whom +whomever +whomsoever +whoop/SMDRZG +whoopee/S +whooper/M +whoosh/MDSG +whop/S +whopped +whopper/SM +whopping +whore/SMG +whorehouse/MS +whoreish +whorish +whorl/SMD +whose +whoso +whosoever +whup/S +whupped +whupping +why'd +why/M +whys +wick/MDRSZ +wicked/TPRY +wickedness/M +wicker/M +wickerwork/M +wicket/SM +wide/YTRP +widemouthed +widen/SDRZG +widener/M +wideness/M +widescreen/MS +widespread +widget/S +widow/SMDRZG +widower/M +widowhood/M +width/M +widths +wield/SDRZG +wielder/M +wiener/SM +wienie/SM +wife/MY +wifeless +wig/SM +wigeon/M +wigged +wigging +wiggle/DRSMZG +wiggler/M +wiggly/TR +wight/SM +wiglet/SM +wigwag/SM +wigwagged +wigwagging +wigwam/SM +wiki/MS +wild/MRYSTP +wildcard/MS +wildcat/MS +wildcatted +wildcatter/MS +wildcatting +wildebeest/MS +wilderness/MS +wildfire/MS +wildflower/SM +wildfowl/M +wildlife/M +wildness/M +wilds/M +wile/MGDS +wilful/PY +wilfulness/M +wiliness/M +will/MDS +willies/M +willing/UPY +willingness/UM +williwaw/MS +willow/SM +willowy +willpower/M +willy/S +wilt/MDSG +wily/RTP +wimp/MDSG +wimpish +wimple/DSMG +wimpy/RT +win/SGMD +wince/DSMG +winch/MDSG +wind's +wind/UASG +windbag/SM +windblown +windbreak/SZMR +windbreaker/M +windburn/MD +windcheater/S +windchill/M +winded +winder/SM +windfall/MS +windflower/MS +windily +windiness/M +winding's +windjammer/SM +windlass/MS +windless +windmill/MDGS +window/SMDG +windowless +windowpane/SM +windowsill/SM +windpipe/MS +windproof +windrow/SM +windscreen/SM +windshield/SM +windsock/MS +windstorm/MS +windsurf/ZGDRS +windsurfer/M +windsurfing/M +windswept +windup/SM +windward/M +windy/RTP +wine/MS +wineglass/MS +winegrower/MS +winemaker/MS +winery/SM +wing/MDRZG +wingding/MS +wingless +winglike +wingnut/SM +wingspan/MS +wingspread/SM +wingtip/SM +wink/MDRSZG +winker/M +winkle/DSMG +winnable/U +winner/SM +winning/MYS +winnow/ZGSDR +winnower/M +wino/MS +winsome/YTRP +winsomeness/M +winter/GSMD +wintergreen/M +winterise/GDS +wintertime/M +wintry/TR +winy/RT +wipe/MZGDRS +wiper/M +wire's +wire/AGDS +wired/S +wirehair/MS +wireless/MS +wiretap/MS +wiretapped +wiretapper/SM +wiretapping/M +wiriness/M +wiring/M +wiry/RTP +wisdom/M +wise/MYTGDRS +wiseacre/SM +wisecrack/MDSG +wiseguy/S +wish/MDRSZG +wishbone/SM +wisher/M +wishful/Y +wishlist's +wisp/MS +wispy/RT +wist +wisteria/SM +wistful/YP +wistfulness/M +wit/SM +witch/MDSG +witchcraft/M +witchery/M +with +withal +withdraw/SG +withdrawal/MS +withdrawn +withdrew +withe/DRSMZG +wither/JGD +withering/Y +withers/M +withheld +withhold/SG +withholding/M +within/M +without +withstand/GS +withstood +witless/PY +witlessness/M +witness/MDSG +wits/M +witted +witter/SGD +witticism/SM +wittily +wittiness/M +witting/UY +witty/RPT +wive/GDS +wiz +wizard/SMY +wizardry/M +wizened +wk/Y +woad/M +wobble/MGDS +wobbliness/M +wobbly/RTP +wodge/S +woe/SM +woebegone +woeful/YP +woefuller +woefullest +woefulness/M +wog/S +wok/SMN +woke +wold/MS +wolf/MDSG +wolfhound/SM +wolfish +wolfram/M +wolverine/SM +wolves +woman/M +womanhood/M +womanise/DRSZG +womaniser/M +womanish +womankind/M +womanlike/M +womanliness/M +womanly/RPT +womb/MS +wombat/MS +womble/S +women/M +womenfolk/SM +womenfolks/M +won't +won/M +wonder/MDGLS +wonderful/YP +wonderfulness/M +wondering/Y +wonderland/MS +wonderment/M +wondrous/Y +wonk/MS +wonky/TR +wont/MD +wonted/U +woo/SZGDR +wood/MDNSG +woodbine/M +woodblock/MS +woodcarver/MS +woodcarving/SM +woodchuck/MS +woodcock/SM +woodcraft/M +woodcut/SM +woodcutter/SM +woodcutting/M +wooden/RYTP +woodenness/M +woodiness/M +woodland/SM +woodlice +woodlot/SM +woodlouse +woodman/M +woodmen +woodpecker/MS +woodpile/SM +woods/M +woodshed/SM +woodsiness/M +woodsman/M +woodsmen +woodsy/RTP +woodwind/MS +woodwork/MRZG +woodworker/M +woodworking/M +woodworm/S +woody/TPRSM +wooer/M +woof/MDRSZG +woofer/M +wool/M +woolgathering/M +wooliness +woollen/SM +woolliness/M +woolly/RSMPT +woozily +wooziness/M +woozy/TRP +wop/S! +word's +word/ADSG +wordage/M +wordbook/SM +wordily +wordiness/M +wording/SM +wordless/Y +wordplay/M +wordsmith +wordsmiths +wordy/TPR +wore +work's +work/ADJSG +workable/U +workaday +workaholic/SM +workaround/S +workbasket/S +workbench/MS +workbook/MS +workday/SM +worker/MS +workfare/M +workflow/MS +workforce/M +workhorse/SM +workhouse/SM +working's +workingman/M +workingmen +workings/M +workingwoman/M +workingwomen +workload/MS +workman/M +workmanlike +workmanship/M +workmate/S +workmen +workout/SM +workplace/MS +workroom/MS +works/M +worksheet/MS +workshop/MS +workshy +worksite/S +workspace +workstation/MS +worktable/MS +worktop/S +workup/MS +workweek/SM +world/SM +worldlier +worldliness/UM +worldly/UTP +worldview/SM +worldwide +worm/MDSG +wormhole/MS +wormwood/M +wormy/TR +worn/U +worried/Y +worrier/M +worriment/M +worrisome +worry/ZGDRSMJ +worrying/Y +worrywart/SM +worse/M +worsen/DSG +worship/SM +worshipful +worshipped +worshipper/MS +worshipping +worst/SGMD +worsted/M +wort/M +worth/M +worthies +worthily/U +worthiness/UM +worthless/PY +worthlessness/M +worthwhile +worthy's +worthy/UPRT +wot +wotcha +would've +would/S +wouldn't +wouldst +wound/SGMDR +wove/A +woven/AU +wow/SGMD +wpm +wrack/GSMD +wraith/M +wraiths +wrangle/DRSMZGJ +wrangler/M +wrap's +wrap/US +wraparound/SM +wrapped/U +wrapper/SM +wrapping/MS +wrasse/MS +wrath/M +wrathful/Y +wreak/SGD +wreath/MDSG +wreathe +wreaths +wreck/SZGMDR +wreckage/M +wrecker/M +wren/MS +wrench/MDSG +wrest/SGMD +wrestle/MZGDRS +wrestler/M +wrestling/M +wretch/MS +wretched/TPRY +wretchedness/M +wriggle/MZGDRS +wriggler/M +wriggly +wright/MS +wring/SZGMR +wringer/M +wrinkle/MGDS +wrinkled/U +wrinkly/TRSM +wrist/SM +wristband/MS +wristwatch/MS +writ/MRBJSZG +write/S +writer/M +writhe/MGDS +writing/M +written/AU +wrong/STGMPDRY +wrongdoer/SM +wrongdoing/SM +wrongful/PY +wrongfulness/M +wrongheaded/YP +wrongheadedness/M +wrongness/M +wrote/A +wroth +wrought +wrung +wry/Y +wryer +wryest +wryness/M +wt +wunderkind/S +wurst/SM +wuss/MS +wussy/RSMT +x +xci +xcii +xciv +xcix +xcvi +xcvii +xenon/M +xenophobe/MS +xenophobia/M +xenophobic +xerographic +xerography/M +xerox/MDSG +xi/SM +xii +xiii +xiv +xix +xor +xref/S +xterm/M +xv +xvi +xvii +xviii +xx +xxi +xxii +xxiii +xxiv +xxix +xxv +xxvi +xxvii +xxviii +xxx +xxxi +xxxii +xxxiii +xxxiv +xxxix +xxxv +xxxvi +xxxvii +xxxviii +xylem/M +xylene +xylophone/SM +xylophonist/MS +y'all +y/F +ya +yacht/SMDG +yachting/M +yachtsman/M +yachtsmen +yachtswoman/M +yachtswomen +yahoo/SM +yak/SM +yakked +yakking +yam/SM +yammer/SZGMDR +yammerer/M +yang/M +yank/MDSG +yap/SM +yapped +yapping +yard/MS +yardage/MS +yardarm/MS +yardman/M +yardmaster/MS +yardmen +yardstick/MS +yarmulke/SM +yarn/MS +yarrow/M +yashmak/S +yaw/SGMD +yawl/MS +yawn/MDRSZG +yawner/M +yaws/M +yd +ye/RST +yea/SM +yeah/M +yeahs +year/MYS +yearbook/MS +yearling/MS +yearlong +yearly/SM +yearn/GSJD +yearning/M +yeast/SM +yeasty/RT +yegg/MS +yell/MDSG +yellow/MDRTGPS +yellowhammer/S +yellowish +yellowness/M +yellowy +yelp/MDSG +yen/SM +yeoman/M +yeomanry/M +yeomen +yep/SM +yes/MS +yeshiva/SM +yessed +yessing +yesterday/MS +yesteryear/M +yet +yeti/MS +yew/SM +yid/S +yield/JSGMD +yikes +yin/M +yip/SM +yipe +yipped +yippee +yipping +yo +yob/S +yobbo/S +yodel/SM +yodelled +yodeller/MS +yodelling +yoga/M +yogi/MS +yogic +yogurt/SM +yoke's +yoke/UGDS +yokel/SM +yolk/MDS +yon +yonder +yonks +yore/M +you'd +you'll +you're +you've +you/SMH +young/TMR +youngish +youngster/MS +your/S +yourself +yourselves +youth/M +youthful/YP +youthfulness/M +youths +yow +yowl/MDSG +yr/S +ytterbium/M +yttrium/M +yuan/M +yucca/SM +yuck +yucky/TR +yuk/SM +yukked +yukking +yukky +yule/M +yuletide/M +yum +yummy/TR +yup/SM +yuppie/MS +yuppify/GDS +yurt/MS +z/DNXTGJ +zaniness/M +zany/RSMPT +zap/SM +zapped +zapper/MS +zapping +zappy +zeal/M +zealot/MS +zealotry/M +zealous/YP +zealousness/M +zebra/SM +zebu/MS +zed/SM +zeitgeist/SM +zenith/M +zeniths +zenned +zeolite/S +zephyr/MS +zeppelin/MS +zero/MDHSG +zeroes +zest/MS +zestful/YP +zestfulness/M +zesty/RT +zeta/MS +zigzag/SM +zigzagged +zigzagging +zilch/M +zillion/MS +zinc/MS +zincked +zincking +zine/S +zinfandel/M +zing/MDRZG +zinger/M +zingy/RT +zinnia/MS +zip's +zip/US +zipped/U +zipper/MDGS +zipping/U +zippy/TR +zircon/MS +zirconium/M +zit/SM +zither/MS +zloty/SM +zlotys +zodiac/MS +zodiacal +zombie/MS +zonal/Y +zone's +zone/AGDS +zoning/M +zonked +zoo/SM +zookeeper/SM +zoological/Y +zoologist/SM +zoology/M +zoom/MDSG +zoophyte/SM +zoophytic +zooplankton +zorch +zoster +zounds +zucchini/MS +zwieback/M +zydeco/M +zygote/SM +zygotic +zymurgy/M diff --git a/dictionary-en-gb/index.js b/dictionary-en-gb/index.js new file mode 100644 index 000000000..5fac8e90f --- /dev/null +++ b/dictionary-en-gb/index.js @@ -0,0 +1,27 @@ +const fs = require('fs') +const path = require('path') + +module.exports = load + +function load(callback) { + let result = {} + let pos = -1 + let exception + + one('aff') + one('dic') + + function one(name) { + fs.readFile(path.join(__dirname, 'index.' + name), (error, doc) => { + pos++ + exception = exception || error + result[name] = doc + + if (pos) { + callback(exception, exception ? undefined : result) + exception = undefined + result = undefined + } + }) + } +} diff --git a/dictionary-en-gb/license.txt b/dictionary-en-gb/license.txt new file mode 100644 index 000000000..663781aee --- /dev/null +++ b/dictionary-en-gb/license.txt @@ -0,0 +1,347 @@ +en_GB-ise Hunspell Dictionary +Version 2020.12.07 +Mon Dec 7 20:14:35 2020 -0500 [5ef55f9] +http://wordlist.sourceforge.net + +README file for English Hunspell dictionaries derived from SCOWL. + +These dictionaries are created using the speller/make-hunspell-dict +script in SCOWL. + +The following dictionaries are available: + + en_US (American) + en_CA (Canadian) + en_GB-ise (British with "ise" spelling) + en_GB-ize (British with "ize" spelling) + en_AU (Australian) + + en_US-large + en_CA-large + en_GB-large (with both "ise" and "ize" spelling) + en_AU-large + +The normal (non-large) dictionaries correspond to SCOWL size 60 and, +to encourage consistent spelling, generally only include one spelling +variant for a word. The large dictionaries correspond to SCOWL size +70 and may include multiple spelling for a word when both variants are +considered almost equal. The larger dictionaries however (1) have not +been as carefully checked for errors as the normal dictionaries and +thus may contain misspelled or invalid words; and (2) contain +uncommon, yet valid, words that might cause problems as they are +likely to be misspellings of more common words (for example, "ort" and +"calender"). + +To get an idea of the difference in size, here are 25 random words +only found in the large dictionary for American English: + + Bermejo Freyr's Guenevere Hatshepsut Nottinghamshire arrestment + crassitudes crural dogwatches errorless fetial flaxseeds godroon + incretion jalapeño's kelpie kishkes neuroglias pietisms pullulation + stemwinder stenoses syce thalassic zees + +The en_US, en_CA and en_AU are the official dictionaries for Hunspell. +The en_GB and large dictionaries are made available on an experimental +basis. If you find them useful please send me a quick email at +kevina@gnu.org. + +If none of these dictionaries suite you (for example, maybe you want +the normal dictionary that also includes common variants) additional +dictionaries can be generated at http://app.aspell.net/create or by +modifying speller/make-hunspell-dict in SCOWL. Please do let me know +if you end up publishing a customized dictionary. + +If a word is not found in the dictionary or a word is there you think +shouldn't be, you can lookup the word up at http://app.aspell.net/lookup +to help determine why that is. + +General comments on these list can be sent directly to me at +kevina@gnu.org or to the wordlist-devel mailing lists +(https://lists.sourceforge.net/lists/listinfo/wordlist-devel). If you +have specific issues with any of these dictionaries please file a bug +report at https://github.com/kevina/wordlist/issues. + +IMPORTANT CHANGES INTRODUCED In 2016.11.20: + +New Australian dictionaries thanks to the work of Benjamin Titze +(btitze@protonmail.ch). + +IMPORTANT CHANGES INTRODUCED IN 2016.04.24: + +The dictionaries are now in UTF-8 format instead of ISO-8859-1. This +was required to handle smart quotes correctly. + +IMPORTANT CHANGES INTRODUCED IN 2016.01.19: + +"SET UTF8" was changes to "SET UTF-8" in the affix file as some +versions of Hunspell do not recognize "UTF8". + +ADDITIONAL NOTES: + +The NOSUGGEST flag was added to certain taboo words. While I made an +honest attempt to flag the strongest taboo words with the NOSUGGEST +flag, I MAKE NO GUARANTEE THAT I FLAGGED EVERY POSSIBLE TABOO WORD. +The list was originally derived from Németh László, however I removed +some words which, while being considered taboo by some dictionaries, +are not really considered swear words in today's society. + +COPYRIGHT, SOURCES, and CREDITS: + +The English dictionaries come directly from SCOWL +and is thus under the same copyright of SCOWL. The affix file is +a heavily modified version of the original english.aff file which was +released as part of Geoff Kuenning's Ispell and as such is covered by +his BSD license. Part of SCOWL is also based on Ispell thus the +Ispell copyright is included with the SCOWL copyright. + +The collective work is Copyright 2000-2018 by Kevin Atkinson as well +as any of the copyrights mentioned below: + + Copyright 2000-2018 by Kevin Atkinson + + Permission to use, copy, modify, distribute and sell these word + lists, the associated scripts, the output created from the scripts, + and its documentation for any purpose is hereby granted without fee, + provided that the above copyright notice appears in all copies and + that both that copyright notice and this permission notice appear in + supporting documentation. Kevin Atkinson makes no representations + about the suitability of this array for any purpose. It is provided + "as is" without express or implied warranty. + +Alan Beale also deserves special credit as he has, +in addition to providing the 12Dicts package and being a major +contributor to the ENABLE word list, given me an incredible amount of +feedback and created a number of special lists (those found in the +Supplement) in order to help improve the overall quality of SCOWL. + +The 10 level includes the 1000 most common English words (according to +the Moby (TM) Words II [MWords] package), a subset of the 1000 most +common words on the Internet (again, according to Moby Words II), and +frequently class 16 from Brian Kelk's "UK English Wordlist +with Frequency Classification". + +The MWords package was explicitly placed in the public domain: + + The Moby lexicon project is complete and has + been place into the public domain. Use, sell, + rework, excerpt and use in any way on any platform. + + Placing this material on internal or public servers is + also encouraged. The compiler is not aware of any + export restrictions so freely distribute world-wide. + + You can verify the public domain status by contacting + + Grady Ward + 3449 Martha Ct. + Arcata, CA 95521-4884 + + grady@netcom.com + grady@northcoast.com + +The "UK English Wordlist With Frequency Classification" is also in the +Public Domain: + + Date: Sat, 08 Jul 2000 20:27:21 +0100 + From: Brian Kelk + + > I was wondering what the copyright status of your "UK English + > Wordlist With Frequency Classification" word list as it seems to + > be lacking any copyright notice. + + There were many many sources in total, but any text marked + "copyright" was avoided. Locally-written documentation was one + source. An earlier version of the list resided in a filespace called + PUBLIC on the University mainframe, because it was considered public + domain. + + Date: Tue, 11 Jul 2000 19:31:34 +0100 + + > So are you saying your word list is also in the public domain? + + That is the intention. + +The 20 level includes frequency classes 7-15 from Brian's word list. + +The 35 level includes frequency classes 2-6 and words appearing in at +least 11 of 12 dictionaries as indicated in the 12Dicts package. All +words from the 12Dicts package have had likely inflections added via +my inflection database. + +The 12Dicts package and Supplement is in the Public Domain. + +The WordNet database, which was used in the creation of the +Inflections database, is under the following copyright: + + This software and database is being provided to you, the LICENSEE, + by Princeton University under the following license. By obtaining, + using and/or copying this software and database, you agree that you + have read, understood, and will comply with these terms and + conditions.: + + Permission to use, copy, modify and distribute this software and + database and its documentation for any purpose and without fee or + royalty is hereby granted, provided that you agree to comply with + the following copyright notice and statements, including the + disclaimer, and that the same appear on ALL copies of the software, + database and documentation, including modifications that you make + for internal use or for distribution. + + WordNet 1.6 Copyright 1997 by Princeton University. All rights + reserved. + + THIS SOFTWARE AND DATABASE IS PROVIDED "AS IS" AND PRINCETON + UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR + IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PRINCETON + UNIVERSITY MAKES NO REPRESENTATIONS OR WARRANTIES OF MERCHANT- + ABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE + LICENSED SOFTWARE, DATABASE OR DOCUMENTATION WILL NOT INFRINGE ANY + THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. + + The name of Princeton University or Princeton may not be used in + advertising or publicity pertaining to distribution of the software + and/or database. Title to copyright in this software, database and + any associated documentation shall at all times remain with + Princeton University and LICENSEE agrees to preserve same. + +The 40 level includes words from Alan's 3esl list found in version 4.0 +of his 12dicts package. Like his other stuff the 3esl list is also in the +public domain. + +The 50 level includes Brian's frequency class 1, words appearing +in at least 5 of 12 of the dictionaries as indicated in the 12Dicts +package, and uppercase words in at least 4 of the previous 12 +dictionaries. A decent number of proper names is also included: The +top 1000 male, female, and Last names from the 1990 Census report; a +list of names sent to me by Alan Beale; and a few names that I added +myself. Finally a small list of abbreviations not commonly found in +other word lists is included. + +The name files form the Census report is a government document which I +don't think can be copyrighted. + +The file special-jargon.50 uses common.lst and word.lst from the +"Unofficial Jargon File Word Lists" which is derived from "The Jargon +File". All of which is in the Public Domain. This file also contain +a few extra UNIX terms which are found in the file "unix-terms" in the +special/ directory. + +The 55 level includes words from Alan's 2of4brif list found in version +4.0 of his 12dicts package. Like his other stuff the 2of4brif is also +in the public domain. + +The 60 level includes all words appearing in at least 2 of the 12 +dictionaries as indicated by the 12Dicts package. + +The 70 level includes Brian's frequency class 0 and the 74,550 common +dictionary words from the MWords package. The common dictionary words, +like those from the 12Dicts package, have had all likely inflections +added. The 70 level also included the 5desk list from version 4.0 of +the 12Dics package which is in the public domain. + +The 80 level includes the ENABLE word list, all the lists in the +ENABLE supplement package (except for ABLE), the "UK Advanced Cryptics +Dictionary" (UKACD), the list of signature words from the YAWL package, +and the 10,196 places list from the MWords package. + +The ENABLE package, mainted by M\Cooper , +is in the Public Domain: + + The ENABLE master word list, WORD.LST, is herewith formally released + into the Public Domain. Anyone is free to use it or distribute it in + any manner they see fit. No fee or registration is required for its + use nor are "contributions" solicited (if you feel you absolutely + must contribute something for your own peace of mind, the authors of + the ENABLE list ask that you make a donation on their behalf to your + favorite charity). This word list is our gift to the Scrabble + community, as an alternate to "official" word lists. Game designers + may feel free to incorporate the WORD.LST into their games. Please + mention the source and credit us as originators of the list. Note + that if you, as a game designer, use the WORD.LST in your product, + you may still copyright and protect your product, but you may *not* + legally copyright or in any way restrict redistribution of the + WORD.LST portion of your product. This *may* under law restrict your + rights to restrict your users' rights, but that is only fair. + +UKACD, by J Ross Beresford , is under the +following copyright: + + Copyright (c) J Ross Beresford 1993-1999. All Rights Reserved. + + The following restriction is placed on the use of this publication: + if The UK Advanced Cryptics Dictionary is used in a software package + or redistributed in any form, the copyright notice must be + prominently displayed and the text of this document must be included + verbatim. + + There are no other restrictions: I would like to see the list + distributed as widely as possible. + +The 95 level includes the 354,984 single words, 256,772 compound +words, 4,946 female names and the 3,897 male names, and 21,986 names +from the MWords package, ABLE.LST from the ENABLE Supplement, and some +additional words found in my part-of-speech database that were not +found anywhere else. + +Accent information was taken from UKACD. + +The VarCon package was used to create the American, British, Canadian, +and Australian word list. It is under the following copyright: + + Copyright 2000-2016 by Kevin Atkinson + + Permission to use, copy, modify, distribute and sell this array, the + associated software, and its documentation for any purpose is hereby + granted without fee, provided that the above copyright notice appears + in all copies and that both that copyright notice and this permission + notice appear in supporting documentation. Kevin Atkinson makes no + representations about the suitability of this array for any + purpose. It is provided "as is" without express or implied warranty. + + Copyright 2016 by Benjamin Titze + + Permission to use, copy, modify, distribute and sell this array, the + associated software, and its documentation for any purpose is hereby + granted without fee, provided that the above copyright notice appears + in all copies and that both that copyright notice and this permission + notice appear in supporting documentation. Benjamin Titze makes no + representations about the suitability of this array for any + purpose. It is provided "as is" without express or implied warranty. + + Since the original words lists come from the Ispell distribution: + + Copyright 1993, Geoff Kuenning, Granada Hills, CA + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. All modifications to the source code must be clearly marked as + such. Binary redistributions based on modified source code + must be clearly marked as modified versions in the documentation + and/or other materials provided with the distribution. + (clause 4 removed with permission from Geoff Kuenning) + 5. The name of Geoff Kuenning may not be used to endorse or promote + products derived from this software without specific prior + written permission. + + THIS SOFTWARE IS PROVIDED BY GEOFF KUENNING AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL GEOFF KUENNING OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + +Build Date: Mon Dec 7 20:19:30 EST 2020 +Wordlist Command: mk-list --accents=strip en_GB-ise 60 diff --git a/dictionary-en-gb/package.json b/dictionary-en-gb/package.json new file mode 100644 index 000000000..48a61105e --- /dev/null +++ b/dictionary-en-gb/package.json @@ -0,0 +1,34 @@ +{ + "name": "dictionary-en-gb", + "version": "2.4.0", + "description": "English (United Kingdom) spelling dictionary", + "license": "(MIT AND BSD)", + "keywords": [ + "spelling", + "myspell", + "hunspell", + "dictionary", + "en", + "gb", + "english", + "united", + "kingdom" + ], + "repository": "https://github.com/wooorm/dictionaries/tree/main/dictionaries/en-GB", + "bugs": "https://github.com/wooorm/dictionaries/issues", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + }, + "author": "Titus Wormer (https://wooorm.com)", + "contributors": [ + "Titus Wormer (https://wooorm.com)", + "Thomas Beverley " + ], + "files": [ + "index.js", + "index.aff", + "index.dic", + "index.d.ts" + ] +} diff --git a/dictionary-en-gb/readme.md b/dictionary-en-gb/readme.md new file mode 100644 index 000000000..e0d785ab5 --- /dev/null +++ b/dictionary-en-gb/readme.md @@ -0,0 +1,87 @@ +# dictionary-en-gb + +English (United Kingdom) spelling dictionary. + +## What is this? + +This is a English (United Kingdom) dictionary, +generated by [`wooorm/dictionaries`][dictionaries] from +[`wordlist.aspell.net`][source], +normalized and packaged so that it can be installed and used like other +dictionaries. + +## When should I use this? + +You can use this package when integrating with tools that perform spell checking +(such as [`nodehun`][nodehun], [`nspell`][nspell]) or when making such tools. + +## Install + +In Node.js (version 12.20+, 14.14+, or 16.0+), install with [npm][]: + +```sh +npm install dictionary-en-gb +``` + +## Use + +```js +import dictionaryEnGb from 'dictionary-en-gb' + +dictionaryEnGb(function (error, enGb) { + if (error) throw error + console.log(enGb) + // To do: use `enGb` somehow +}) +``` + +Yields: + +```js +{dic: , aff: } +``` + +Where `dic` and `aff` are [`Buffer`][buffer]s for `index.dic` and `index.aff` +respectively. + +## Examples + +See the [monorepo readme][dictionaries] for examples. + +## Types + +This package is typed with [TypeScript][]. + +## Contribute + +See the [monorepo readme][dictionaries] for how to contribute. + +> 👉 **Note**: dictionaries are not maintained here. +> Report spelling problems upstream ([`wordlist.aspell.net`][source]). + +## License + +Dictionary and affix file: [(MIT AND BSD)](https://github.com/wooorm/dictionaries/blob/main/dictionaries/en-GB/license). +Rest: [MIT][] © [Titus Wormer][home]. + +[hunspell]: https://hunspell.github.io + +[nodehun]: https://github.com/nathanjsweet/nodehun + +[nspell]: https://github.com/wooorm/nspell + +[macos]: https://github.com/wooorm/dictionaries#example-use-with-macos + +[source]: http://wordlist.aspell.net/dicts/ + +[npm]: https://docs.npmjs.com/cli/install + +[dictionaries]: https://github.com/wooorm/dictionaries + +[mit]: https://github.com/wooorm/dictionaries/blob/main/license + +[buffer]: https://nodejs.org/api/buffer.html#buffer_buffer + +[home]: https://wooorm.com + +[typescript]: https://www.typescriptlang.org