зеркало из https://github.com/mozilla/pjs.git
Wire up edit, delete, and new-todo from the todo list. Try to make the todo
labels aligned correctly, still somewhat failing.
This commit is contained in:
Родитель
751851a148
Коммит
4a173cbe16
|
@ -6,6 +6,7 @@ calendar-todo-item {
|
|||
-moz-binding: url("calendar-todo-list.xml#calendar-todo-item");
|
||||
}
|
||||
|
||||
.calendar-todo-item-label {
|
||||
-moz-box-align: inherit;
|
||||
.calendar-todo-item-label, .calendar-todo-item-checkbox {
|
||||
-moz-box-align: center;
|
||||
margin: 0px;
|
||||
}
|
||||
|
|
|
@ -154,7 +154,7 @@
|
|||
|
||||
<binding id="calendar-todo-item" extends="chrome://global/content/bindings/richlistbox.xml#richlistitem">
|
||||
<content>
|
||||
<xul:hbox flex="1">
|
||||
<xul:hbox align="center" flex="1">
|
||||
<xul:checkbox class="calendar-todo-item-checkbox" anonid="todo-check" xbl:inherits="checked=completed" oncommand="document.getBindingParent(this).updateTodoFromDisplay();"/>
|
||||
<xul:label class="calendar-todo-item-label" anonid="todo-label" crop="end" xbl:inherits="item-calendar,value=label"/>
|
||||
</xul:hbox>
|
||||
|
|
|
@ -7,20 +7,32 @@ function eventToTodo(event)
|
|||
}
|
||||
}
|
||||
|
||||
function handleTodoListEvent(event)
|
||||
function editTodoItem(event)
|
||||
{
|
||||
var todo = eventToTodo(event);
|
||||
var name = todo ? ('"' + todo.title + '"') : "<none>";
|
||||
dump("Todo list event: " + event.type + " (" + name + ")\n");
|
||||
if (todo)
|
||||
modifyEventWithDialog(todo);
|
||||
}
|
||||
|
||||
function newTodoItem(event)
|
||||
{
|
||||
createTodoWithDialog();
|
||||
}
|
||||
|
||||
function deleteTodoItem(event)
|
||||
{
|
||||
var todo = eventToTodo(event);
|
||||
if (todo)
|
||||
todo.calendar.deleteItem(todo, null);
|
||||
}
|
||||
|
||||
function initializeTodoList()
|
||||
{
|
||||
var todoList = document.getElementById("calendar-todo-list");
|
||||
todoList.calendar = getCompositeCalendar();
|
||||
todoList.addEventListener("todo-item-open", handleTodoListEvent, false);
|
||||
todoList.addEventListener("todo-item-delete", handleTodoListEvent, false);
|
||||
todoList.addEventListener("todo-empty-dblclick", handleTodoListEvent, false);
|
||||
todoList.addEventListener("todo-item-open", editTodoItem, false);
|
||||
todoList.addEventListener("todo-item-delete", deleteTodoItem, false);
|
||||
todoList.addEventListener("todo-empty-dblclick", newTodoItem, false);
|
||||
}
|
||||
|
||||
window.addEventListener("load", initializeTodoList, false);
|
||||
|
|
Загрузка…
Ссылка в новой задаче