From 364eea978731f7dabce7bc7794c105f4f714d606 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Mon, 12 Nov 2012 12:03:14 +0100 Subject: [PATCH] IDEA-94758 white line under windows menu bar --- .../ui/laf/darcula/darcula_linux.properties | 4 +- .../ui/laf/darcula/darcula_windows.properties | 4 +- .../laf/darcula/ui/DarculaMenuBarBorder.java | 49 +++++++++++++++++++ 3 files changed, 55 insertions(+), 2 deletions(-) create mode 100644 platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaMenuBarBorder.java diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula_linux.properties b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula_linux.properties index 1892292402fb..f37783dc3362 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula_linux.properties +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula_linux.properties @@ -8,4 +8,6 @@ darcula.selectionForeground=bbbbbb #Tree.collapsedIcon=AllIcons.Darcula.TreeNodeCollapsed #Tree.expandedIcon=AllIcons.Darcula.TreeNodeExpanded -PopupMenu.border=com.intellij.ide.ui.laf.darcula.ui.DarculaPopupMenuBorder \ No newline at end of file +PopupMenu.border=com.intellij.ide.ui.laf.darcula.ui.DarculaPopupMenuBorder + +MenuBar.border=com.intellij.ide.ui.laf.darcula.ui.DarculaMenuBarBorder diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula_windows.properties b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula_windows.properties index 53c4465c1742..3ab977eb14d5 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula_windows.properties +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/darcula_windows.properties @@ -8,4 +8,6 @@ Tree.hash=909090 Tree.collapsedIcon=AllIcons.Darcula.TreeNodeCollapsed Tree.expandedIcon=AllIcons.Darcula.TreeNodeExpanded -PopupMenu.border=com.intellij.ide.ui.laf.darcula.ui.DarculaPopupMenuBorder \ No newline at end of file +PopupMenu.border=com.intellij.ide.ui.laf.darcula.ui.DarculaPopupMenuBorder + +MenuBar.border=com.intellij.ide.ui.laf.darcula.ui.DarculaMenuBarBorder \ No newline at end of file diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaMenuBarBorder.java b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaMenuBarBorder.java new file mode 100644 index 000000000000..6b647e179897 --- /dev/null +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/darcula/ui/DarculaMenuBarBorder.java @@ -0,0 +1,49 @@ +/* + * Copyright 2000-2012 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.intellij.ide.ui.laf.darcula.ui; + +import com.intellij.ui.Gray; + +import javax.swing.border.Border; +import javax.swing.plaf.UIResource; +import java.awt.*; + +/** + * @author Konstantin Bulenkov + */ +public class DarculaMenuBarBorder implements Border, UIResource { + @Override + public void paintBorder(Component c, Graphics g, int x, int y, int w, int h) { + g.translate(x, y); + w--;h--; + g.setColor(Gray._85); + g.drawLine(0, h, w, h); + h--; + g.setColor(Gray._40); + g.drawLine(0, h, w, h); + g.translate(-x, -y); + } + + @Override + public Insets getBorderInsets(Component c) { + return new Insets(0, 0, 2, 0); + } + + @Override + public boolean isBorderOpaque() { + return true; + } +}