mirror of
https://github.com/lifestorm/wnsrc.git
synced 2025-12-16 13:23:46 +03:00
88 lines
1.6 KiB
Lua
88 lines
1.6 KiB
Lua
--[[
|
|
| This file was obtained through the combined efforts
|
|
| of Madbluntz & Plymouth Antiquarian Society.
|
|
|
|
|
| Credits: lifestorm, Gregory Wayne Rossel JR.,
|
|
| Maloy, DrPepper10 @ RIP, Atle!
|
|
|
|
|
| Visit for more: https://plymouth.thetwilightzone.ru/
|
|
--]]
|
|
|
|
|
|
local PANEL = {}
|
|
|
|
AccessorFunc( PANEL, "m_Color", "Color" )
|
|
|
|
function PANEL:Init()
|
|
|
|
self:SetSize( 256, 256 )
|
|
self:BuildControls()
|
|
self:SetColor( color_white )
|
|
|
|
end
|
|
|
|
function PANEL:BuildControls()
|
|
|
|
--
|
|
-- Mixer
|
|
--
|
|
local mixer = self:Add( "DColorMixer" )
|
|
mixer:Dock( FILL )
|
|
mixer:DockMargin( 8, 0, 8, 8 )
|
|
mixer:SetPalette( false )
|
|
mixer:SetAlphaBar( false )
|
|
mixer:SetWangs( false )
|
|
mixer.ValueChanged = function( slf, color )
|
|
self.m_bEditing = true
|
|
self:OnValueChanged( color )
|
|
self.m_Color = color
|
|
self.m_bEditing = false
|
|
end
|
|
|
|
self.Mixer = mixer
|
|
self:AddSheet( "", mixer, "icon16/color_wheel.png" )
|
|
|
|
--
|
|
-- Palettes
|
|
--
|
|
local ctrl = self:Add( "DColorPalette" )
|
|
ctrl:Dock( FILL )
|
|
ctrl:DockMargin( 8, 0, 8, 8 )
|
|
ctrl:SetButtonSize( 16 )
|
|
ctrl:SetNumRows( 35 )
|
|
ctrl:Reset()
|
|
ctrl.OnValueChanged = function( slf, color )
|
|
self.m_bEditing = true
|
|
self.Mixer:SetColor( color )
|
|
self:OnValueChanged( color )
|
|
self.m_Color = color
|
|
self.m_bEditing = false
|
|
end
|
|
|
|
self.Palette = ctrl
|
|
self:AddSheet( "", ctrl, "icon16/palette.png" )
|
|
|
|
end
|
|
|
|
function PANEL:IsEditing()
|
|
|
|
return self.m_bEditing
|
|
|
|
end
|
|
|
|
function PANEL:OnValueChanged( newcol )
|
|
|
|
-- For override
|
|
|
|
end
|
|
|
|
function PANEL:SetColor( newcol )
|
|
|
|
self.m_Color = newcol
|
|
self.Mixer:SetColor( newcol )
|
|
self.Palette:SetColor( newcol )
|
|
|
|
end
|
|
|
|
derma.DefineControl( "DColorCombo", "", PANEL, "DPropertySheet" )
|