/
dlabelurl.lua
88 lines (59 loc) · 2.18 KB
/
dlabelurl.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
--[[ _
( )
_| | __ _ __ ___ ___ _ _
/'_` | /'__`\( '__)/' _ ` _ `\ /'_` )
( (_| |( ___/| | | ( ) ( ) |( (_| |
`\__,_)`\____)(_) (_) (_) (_)`\__,_)
DLabelURL
--]]
local PANEL = {}
AccessorFunc( PANEL, "m_colText", "TextColor" )
AccessorFunc( PANEL, "m_colTextStyle", "TextStyleColor" )
AccessorFunc( PANEL, "m_bAutoStretchVertical", "AutoStretchVertical" )
--[[---------------------------------------------------------
Init
-----------------------------------------------------------]]
function PANEL:Init()
self:SetTextColor( Color( 0, 0, 255 ) )
-- Nicer default height
self:SetTall( 20 )
-- This turns off the engine drawing
self:SetPaintBackgroundEnabled( false )
self:SetPaintBorderEnabled( false )
end
--[[---------------------------------------------------------
SetTextColor
-----------------------------------------------------------]]
function PANEL:ApplySchemeSettings( col )
self:UpdateColours( self:GetSkin() );
local col = self.m_colTextStyle
if ( self.m_colText ) then col = self.m_colText end
self:SetFGColor( col.r, col.g, col.b, col.a )
end
PANEL.SetColor = PANEL.SetTextColor
--[[---------------------------------------------------------
SetColor
-----------------------------------------------------------]]
function PANEL:GetColor()
return self.m_colText
end
--[[---------------------------------------------------------
Exited
-----------------------------------------------------------]]
function PANEL:OnCursorEntered()
self:InvalidateLayout()
self:SetTextColor( Color( 0, 50, 255 ) )
end
--[[---------------------------------------------------------
Entered
-----------------------------------------------------------]]
function PANEL:OnCursorExited()
self:InvalidateLayout()
self:SetTextColor( Color( 0, 50, 255 ) )
end
--[[---------------------------------------------------------
UpdateColours
-----------------------------------------------------------]]
function PANEL:UpdateColours( skin )
end
derma.DefineControl( "DLabelURL", "A Label", PANEL, "URLLabel" )