aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS/ShiftOSTabs.vb
diff options
context:
space:
mode:
authorTheUltimateHacker <[email protected]>2015-04-07 15:52:15 -0400
committerTheUltimateHacker <[email protected]>2015-04-07 15:52:15 -0400
commitbe191bca8100150c14743d088925427f92e6d095 (patch)
tree5d95c5ba374775c2176287fee03a7fb6d946cfc0 /ShiftOS/ShiftOSTabs.vb
parent153a01334ce06054589bc3254ad0f8c5a292dbaa (diff)
parentc1cbedbfd08448b8382889f60079a3d8cdf79f09 (diff)
downloadshiftos-be191bca8100150c14743d088925427f92e6d095.tar.gz
shiftos-be191bca8100150c14743d088925427f92e6d095.tar.bz2
shiftos-be191bca8100150c14743d088925427f92e6d095.zip
Merge pull request #22 from pcnerd97/master
Dock and WebBrowser Improvements!
Diffstat (limited to 'ShiftOS/ShiftOSTabs.vb')
-rw-r--r--ShiftOS/ShiftOSTabs.vb40
1 files changed, 40 insertions, 0 deletions
diff --git a/ShiftOS/ShiftOSTabs.vb b/ShiftOS/ShiftOSTabs.vb
new file mode 100644
index 0000000..52df581
--- /dev/null
+++ b/ShiftOS/ShiftOSTabs.vb
@@ -0,0 +1,40 @@
+Public Class ShiftOSTabs
+
+ Inherits TabControl
+ Sub New()
+ SetStyle(ControlStyles.AllPaintingInWmPaint Or ControlStyles.OptimizedDoubleBuffer Or ControlStyles.ResizeRedraw Or ControlStyles.UserPaint, True)
+ DoubleBuffered = True
+ SizeMode = TabSizeMode.Fixed
+ ItemSize = New Size(120, 30)
+ End Sub
+
+ Protected Overrides Sub CreateHandle()
+ MyBase.CreateHandle()
+ End Sub
+
+ Protected Overrides Sub OnPaint(e As PaintEventArgs)
+ Dim B As New Bitmap(Width, Height)
+ Dim G As Graphics = Graphics.FromImage(B)
+
+ G.Clear(Color.Gainsboro)
+
+ For i = 0 To TabCount - 1
+ Dim TabRectangle As Rectangle = GetTabRect(i)
+
+ If i = SelectedIndex Then
+ G.FillRectangle(Brushes.DarkGray, TabRectangle)
+ Else
+ G.FillRectangle(Brushes.LightGray, TabRectangle)
+ End If
+
+ G.DrawString(TabPages(i).Text, Font, Brushes.White, TabRectangle, New StringFormat With {.Alignment = StringAlignment.Center, .LineAlignment = StringAlignment.Center})
+ Next
+
+ e.Graphics.DrawImage(B.Clone, 0, 0)
+ G.Dispose() : B.Dispose()
+ MyBase.OnPaint(e)
+ End Sub
+
+End Class
+
+