/trunk
else |
self:LoadList(nil) |
end |
self:ListLoadedCheck(); |
if not self:IsEditTaskDialogOpen() then |
widgets.removeTaskButton:Disable(); |
end |
-- open the task editor |
self:ShowTaskEditor(taskID); |
self.openTask = taskID; |
widgets.editTaskEB:SetText(Torta.db.profile.lists[Torta.db.profile.cfg.loadedList].text[taskID]); |
widgets.editTaskEB:SetText(self:GetLoadedList().text[taskID]); |
end |
gui:UpdateCLScrollBar(); |
end |
function Checklist3:ModifyOpenTask(newText) |
assert(type(self.openTask) == "number"); |
local profile = Torta.db.profile; |
profile.lists[profile.cfg.loadedList].text[self.openTask] = newText; |
self:GetLoadedList().text[self.openTask] = newText; |
end |
tEditor:Hide(); |
self.openTask = nil; |
widgets.removeTaskButton:Disable(); |
gui:UpdateCLScrollBar(); |
end |
dispWnd:SetPoint("BOTTOMRIGHT", tEditor, "TOPRIGHT"); |
getglobal(tEditor:GetName() .. "HeaderText"):SetText("Task Editor: " .. (taskID or "|cffff0000No task ID|r")) |
widgets.removeTaskButton:Enable(); |
gui:UpdateCLScrollBar(); |
gui:MakeTaskVisible(taskID); |
gui:UpdateCLScrollBar(); |
end |
function Checklist3:OnCheckClicked(id) |
local list = self:GetLoadedList() |
local list = self:GetLoadedList(); |
if list then |
list.stat[id] = not list.stat[id]; |
end |
gui:UpdateCLScrollBar(); |
end |
function Checklist3:AddTask() |
local list = self:GetLoadedList(); |
if not list then return end |
local index = (self.openTask or #list.text) + 1; |
tinsert(list.text, index, ""); |
tinsert(list.stat, index, false); |
gui:UpdateCLScrollBar(); |
end |
function Checklist3:RemoveTask() |
local list = self:GetLoadedList(); |
if not list then return end |
tremove(list.text, self.openTask); |
tremove(list.stat, self.openTask); |
gui:UpdateCLScrollBar(); |
self:HideTaskEditor(); |
end |
Torta.gui.clRecycleBin = {}; |
Torta.gui.clListButtons = { TortaParentFrameMainPageDisplaySubWindowTaskButton1 }; |
Torta.gui.data = {}; |
for i = 1, 100 do |
Torta.gui.data[i] = "Item " .. i; |
end |
---------------------------------------------------------------------------------------- |
Torta.gui.elements = {}; |
local e = Torta.gui.elements; |
lineplusoffset = line + FauxScrollFrame_GetOffset(clScrollBar); |
button = self.clListButtons[line]; |
if lineplusoffset <= #self.data.text then |
-- button.text:SetText("|cffffd000" .. lineplusoffset .. ".)|r " .. self.data.text[lineplusoffset]); |
button.text:SetFormattedText("|cffffd000%i.)|r %s", lineplusoffset, self.data.text[lineplusoffset]); |
button.check:SetChecked(self.data.stat[lineplusoffset]); |
button:SetID(lineplusoffset); |
clDisplayWindow:Show(); |
end |
function Torta.gui:MakeTaskVisible(taskID) |
--[[ |
local offset = FauxScrollFrame_GetOffset(clScrollBar); |
local iMax = FauxScrollFrame_GetOffset(clScrollBar) + #self.clListButtons; |
if (iMax - 3) < taskID then |
FauxScrollFrame_SetOffset(clScrollBar, offset + 3); |
-- getglobal(clScrollBar:GetName() .. "ScrollBar"):SetValue(offset + 3); |
self:UpdateCLScrollBar(); |
end |
print(FauxScrollFrame_GetOffset(clScrollBar), iMax); |
]] |
end |
FauxScrollFrame_SetOffset(explorerScrollBar, 0); |
FauxScrollFrame_SetOffset(clScrollBar, 0); |
<Anchors> |
<Anchor point="LEFT" relativeTo="$parentCheckAllButton" relativePoint="RIGHT"/> |
</Anchors> |
<Scripts> |
<OnClick> |
Torta.cl3:AddTask(); |
</OnClick> |
</Scripts> |
</Button> |
<Button name="$parentRemoveTaskButton" inherits="UIPanelButtonTemplate" text="Remove Task"> |
<Size x="100" y="22"/> |
<Anchors> |
<Anchor point="LEFT" relativeTo="$parentAddTaskButton" relativePoint="RIGHT"/> |
</Anchors> |
<Scripts> |
<OnClick> |
Torta.cl3:RemoveTask(); |
</OnClick> |
</Scripts> |
</Button> |
<Button name="$parentCloseButton" inherits="UIPanelButtonTemplate" text="Close"> |
<Size x="100" y="22"/> |
</OnClick> |
</Scripts> |
</Button> |
<Button name="$parentEnterButton" inherits="UIPanelButtonTemplate" text="Save Task Text"> |
<Button name="$parentEnterButton" inherits="UIPanelButtonTemplate" text="Save And Close"> |
<Size x="125" y="23"/> |
<Anchors> |
<Anchor point="RIGHT" relativeTo="$parentCloseButton" relativePoint="LEFT"/> |
Torta.cl3:ModifyOpenTask(Torta.gui.elements.editTaskEB:GetText()); |
Torta.gui.elements.editTaskEB:ClearFocus(); |
Torta.gui:UpdateCLScrollBar(); |
Torta.cl3:HideTaskEditor(); |
</OnClick> |
</Scripts> |
</Button> |
if IsShiftKeyDown() then |
Torta.cl3:ModifyOpenTask( getglobal( self:GetParent():GetName() .. "EditBox" ):GetText() ); |
Torta.gui:UpdateCLScrollBar(); |
Torta.cl3:HideTaskEditor(); |
end |
</OnEscapePressed> |
<OnEnterPressed> |
-- Override the one in CharacterFrameTabButtonTemplate |
</OnShow> |
<OnLoad> |
PanelTemplates_TabResize(self, 3); |
PanelTemplates_TabResize(self, 0); |
</OnLoad> |
</Scripts> |
</Button> |
<OnClick> |
Torta.cl3:EditTask(self:GetID()); |
</OnClick> |
<OnDragStart> |
</OnDragStart> |
<OnDragStop> |
</OnDragStop> |
</Scripts> |
<Frames> |
<CheckButton name="$parentCheckButton" inherits="UICheckButtonTemplate"> |