Go to most recent revision |
Compare with Previous |
Blame |
View Log
import "Turbine.UI";
import "Turbine.UI.Lotro";
import "KragenPlugs.Utils";
import "KragenPlugs.Utils.Extensions";
import "KragenPlugs.KragenBars";
KBButton = class ( Turbine.UI.Window );
function KBButton:Constructor ( x, y )
Turbine.UI.Window.Constructor( self );
self.drag = false;
self.moved = false;
self.dragStartX = 0;
self.dragStartY = 0;
local displayWidth = Turbine.UI.Display:GetWidth();
local displayHeight = Turbine.UI.Display:GetHeight();
self:SetSize( 40, 40 );
self:SetPosition(x, y);
self:SetOpacity( .7 );
self:SetVisible(true);
self:SetMouseVisible(true);
self:SetBackground( "KragenPlugs/Kragenbars/Resources/"..settings.class..".tga" );
self:SetBackColorBlendMode( Turbine.UI.BlendMode.Overlay );
self.MouseClick = function( sender, args )
if (not self.moved) then
if( args.Button == Turbine.UI.MouseButton.Left ) then
if(KragenBars.setup:IsVisible()) then
KragenBars:SetupClosing();
KragenBars.setup:SetVisible(false);
else
KragenBars:ShowSetup();
end
elseif( args.Button == Turbine.UI.MouseButton.Right ) then
local contextMenu = Turbine.UI.ContextMenu()
local contextMenuItems = contextMenu:GetItems();
local menuItem = Turbine.UI.MenuItem( "Lock Quickslots" );
menuItem:SetChecked( settings.lockslots );
menuItem.Click = function(sender, args)
settings.lockslots = not settings.lockslots;
end
contextMenuItems:Add( menuItem );
local menuItem = Turbine.UI.MenuItem( "Windows Snap to Grid" );
menuItem:SetChecked( settings.snaptogrid );
menuItem.Click = function(sender, args)
settings.snaptogrid = not settings.snaptogrid;
end
contextMenuItems:Add( menuItem );
local menuItem = Turbine.UI.MenuItem( "Refresh Level" );
menuItem.Click = function(sender, args)
KragenBars:Refresh();
end
contextMenuItems:Add( menuItem );
local menuItem = Turbine.UI.MenuItem( "Default Bar Positions" );
menuItem.Click = function(sender, args)
KragenBars:DefaultPosition();
end
contextMenuItems:Add( menuItem );
contextMenu:ShowMenu();
end
end
end
self.MouseDown = function( sender, args)
self.drag = true;
self.moved = false;
self.dragStartX = args.X;
self.dragStartY = args.Y;
end
self.MouseMove = function( sender, args)
if (self.drag) then
local left, top = self:GetPosition();
self:SetPosition( math.min( math.max( left + ( args.X - self.dragStartX ), 0 ), Turbine.UI.Display:GetWidth() - self:GetWidth() )
, math.min( math.max( top + ( args.Y - self.dragStartY ), 0 ), Turbine.UI.Display:GetHeight() - self:GetHeight()) );
local newx, newy = self:GetPosition();
if (self.dragStartX ~= newx or self.dragStartY ~= newy) then
self.moved = true;
end
end
end
self.MouseUp = function( sender, args )
self.drag = false;
settings.kbbutton = { };
settings.kbbutton.x, settings.kbbutton.y = self:GetPosition();
end
end
Go to most recent revision |
Compare with Previous |
Blame
All times are GMT -5. The time now is 07:48 PM.