From 9effe1630d97039b3e01cd9b58ed07e75be1d63c Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Mon, 25 Feb 2013 08:40:30 -0500
Subject: [PATCH] Merge pull request #75 from thefake/master

---
 src/com/gitblit/client/HeaderPanel.java |   50 +++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 43 insertions(+), 7 deletions(-)

diff --git a/src/com/gitblit/client/HeaderPanel.java b/src/com/gitblit/client/HeaderPanel.java
index b3953b3..3cd89a7 100644
--- a/src/com/gitblit/client/HeaderPanel.java
+++ b/src/com/gitblit/client/HeaderPanel.java
@@ -15,33 +15,65 @@
  */
 package com.gitblit.client;
 
+import java.awt.BasicStroke;
 import java.awt.Color;
-import java.awt.FlowLayout;
 import java.awt.GradientPaint;
 import java.awt.Graphics;
 import java.awt.Graphics2D;
+import java.awt.GridLayout;
+import java.awt.Insets;
 import java.awt.Paint;
 import java.awt.geom.Point2D;
 import java.awt.geom.Rectangle2D;
+import java.text.SimpleDateFormat;
+import java.util.Date;
 
+import javax.swing.ImageIcon;
 import javax.swing.JLabel;
 import javax.swing.JPanel;
+
+import com.gitblit.utils.StringUtils;
 
 public class HeaderPanel extends JPanel {
 
 	private static final long serialVersionUID = 1L;
 
+	private final Insets insets = new Insets(5, 5, 5, 5);
+
 	private Color lightColor = new Color(0, 0, 0x60);
 
-	public HeaderPanel(String text) {
-		super(new FlowLayout(FlowLayout.LEFT), true);
+	private JLabel headerLabel;
+
+	private JLabel refreshLabel;
+
+	public HeaderPanel(String text, String icon) {
+		// super(new FlowLayout(FlowLayout.LEFT), true);
+		super(new GridLayout(1, 2, 5, 5), true);
 		setOpaque(true);
 		setBackground(new Color(0, 0, 0x20));
 
-		JLabel label = new JLabel(text);
-		label.setForeground(Color.white);
-		label.setFont(label.getFont().deriveFont(14f));
-		add(label);
+		headerLabel = new JLabel(text);
+		if (!StringUtils.isEmpty(icon)) {
+			headerLabel.setIcon(new ImageIcon(getClass().getResource("/" + icon)));
+		}
+		headerLabel.setForeground(Color.white);
+		headerLabel.setFont(headerLabel.getFont().deriveFont(14f));
+		add(headerLabel);
+
+		refreshLabel = new JLabel("", JLabel.RIGHT);
+		refreshLabel.setForeground(Color.white);
+		add(refreshLabel);
+	}
+
+	public void setText(String text) {
+		headerLabel.setText(text);
+		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+		refreshLabel.setText("refreshed " + df.format(new Date()));
+	}
+
+	@Override
+	public Insets getInsets() {
+		return insets;
 	}
 
 	@Override
@@ -53,5 +85,9 @@
 				false);
 		g.setPaint(gradientPaint);
 		g.fill(new Rectangle2D.Double(0, 0, getWidth(), getHeight()));
+		g.setColor(new Color(0xff, 0x99, 0x00));
+		int stroke = 2;
+		g.setStroke(new BasicStroke(stroke));
+		g.drawLine(0, getHeight() - 1, getWidth(), getHeight() - 1);
 	}
 }

--
Gitblit v1.9.1