--[[ © 2011 CloudSixteen.com do not share, re-distribute or modify without permission of its author (kurozael@gmail.com). --]] local PANEL = {}; -- Called when the panel is initialized. function PANEL:Init() self:SetBackgroundBlur(true); self:SetDeleteOnClose(false); self:SetTitle("Paper"); -- Called when the button is clicked. function self.btnClose.DoClick(button) self:Close(); self:Remove(); gui.EnableScreenClicker(false); end; self.panelList = vgui.Create("DPanelList", self); self.panelList:SetPadding(2); self.panelList:SetSpacing(3); self.panelList:SizeToContents(); self.panelList:EnableVerticalScrollbar(); end; -- Called each frame. function PANEL:Think() local scrW = ScrW(); local scrH = ScrH(); self:SetSize(512, 256); self:SetPos( (scrW / 2) - (self:GetWide() / 2), (scrH / 2) - (self:GetTall() / 2) ); if (!IsValid(self.entity) or self.entity:GetPos():Distance( openAura.Client:GetPos() ) > 192) then self:Close(); self:Remove(); gui.EnableScreenClicker(false); end; end; -- A function to set the panel's entity. function PANEL:SetEntity(entity) self.entity = entity; end; -- A function to populate the panel. function PANEL:Populate(text) local colorWhite = openAura.option:GetColor("white"); self.panelList:Clear(); self.label = vgui.Create("DLabel"); self.label:SetAutoStretchVertical(true); self.label:SetTextColorHovered(nil); self.label:SetTextColor(colorWhite); self.label:SetWrap(true) self.label:SetText(text); self.panelList:AddItem(self.label); end; -- Called when the layout should be performed. function PANEL:PerformLayout() self.panelList:StretchToParent(4, 28, 4, 4); DFrame.PerformLayout(self); end; vgui.Register("aura_ViewPaper", PANEL, "DFrame");