Giter Club home page Giter Club logo

factorio-todo-list's People

Contributors

brunotdantas avatar dilise avatar flamion avatar foxite avatar hoylemd avatar jelmergu avatar jille avatar jonasjurczok avatar masterlogick avatar tarrke avatar veger avatar virtual0txt avatar x2605 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

factorio-todo-list's Issues

Allow tasks to depend on each other

Problem
Sometimes you create a task like "Build green Circuit outpost".
But to complete this you need a copper plate outpost.
The copper plate outpost in itself is a task with subtasks (walls, defences, train stations, ...).
This connection is not visible in the tasks

Describe the solution you'd like
It would be nice if you could add a "depends on" connection to other tasks.
The main list could be sorted by dependencies (you cannot sort a dependent task before the task it depends on).
Additionally you could show dependencies with some form of colour coding?

Additional context
Sorting can become complex.
Needs to analyse possible circles in the dependency graph.
What if we depend on multiple tasks or multiple tasks depend on us?

Could be visualised as extra task list in the detail screen. Above the subtasks, below the description.

What about exporting and importing?

Create documentation

The Readme should contain a usable documentation that teaches the basic steps.

Also it should be written in a way that it can be copied into the Factorio.com mod description.

When you click on the 'ToDo List' button list doesn't show initially

Describe the bug
In the latest release (16.7.0) if you add some tasks, minimize the list, then click the UI button to open it again, the newly added tasks will appear to have disappeared.

They will re-appear if you click the 'show completed tasks' button.

This bug does not happen if you use the keystroke instead of the UI button to make the list appear.

I'm not filling out the rest of the report, since I think my description is detailed enough to reproduce the bug.

0.16.22 compatibility issue

When clicking the Todo List button at top left:

Key "column_count" not found in property tree at ROOT
stack traceback:
	__Todo-List__/UI.lua:52: in function 'create_task_table'
	__Todo-List__/UI.lua:22: in function 'create_maximized_frame'
	__Todo-List__/todo.lua:45: in function 'maximize'
	__Todo-List__/todo.lua:187: in function 'on_gui_click'
	__Todo-List__/control.lua:18: in function <__Todo-List__/control.lua:17>```

Details field on tasks

Right now, tasks support multi-line, and this might be helpful for particularly complicated things. Unfortunately, they take of a lot of space in the UI.

If we had separate 'title' and an optional 'details' field, we could force the title to be one line (maybe even a length limit), and allow users to elaborate all they want in the multi-line details field.

This would make the UI a lot easier to develop, since every task in the list will take up the same amount of space.

Add Russian translation

Hello, please add Russian translation

`[todo]
todo_list=Задачи
title_done=Готово
title_task=Задача
title_assignee=Куратор
title_edit=Редактировать

minimize=Выход
add=Добавить
add_title=Добавить новую задачу
add_task=Задача
add_assignee=Куратор
persist=Сохранить
cancel=Отменить
update=Обновить

unassigned=Неназначенный
assign_self=Взять
show_done=Показывать завершенные задачи
hide_done=Скрыть завершенные задачи

todo_maximize_button_caption=1: 2
nothing_todo=Нет задач.

[controls]
todolist-toggle-ui=Закрыть/Открыть Задачи

[mod-setting-name]
todolist-show-button=Показать"Задачи" кнопку.
todolist-show-log=Показать сообщения журнала отладки в окне чата.
todolist-window-height=Окно списока задач высота
todolist-auto-assign=Автоматическое назначение задач

[mod-setting-description]
todolist-show-button=Если включен всегда появится кнопка "Задачи" в левом верхнем углу.\nЕсли отключить "Задачи" можно добраться только горячими клавишами (Shift-T по умолчанию).
todolist-show-log=Если включена, то мод будет выводить отладочные сообщения в окно чата.\nВнимание: есть много из них :)
todolist-window-height=Высота окна списока задач. По умолчанию-600.
todolist-auto-assign=Если есть только один игрок в игре, автоматически назначать задачи для игрока.`

small 'current task' UI

This is a bigger idea for down the road.

Allow users to turn on a 'current task' UI that shows them their top open assigned task at all times, separately from the list UI. Since it'll only show a single task, it can be small. All it needs is to display the task's text and possibly have a 'complete' button.

I'm not sure how useful this really is, since you can get the same result from opening the full list, but I think I'd like it, so suggestion :)

Add new/Edit -> Add new/Edit crash

Reproduce error:
Create new task.
Hit edit/add new
Hit edit/add new again

What is needed is to make sure the 'todo_add_frame' is open only once per player
I may try to fix it myself, but don't know the factorio api.

Error while running event Todo-List::on_gui_click (ID 1)
Gui element with name todo_add_frame already present in the parent element.
stack traceback:
	__Todo-List__/UI.lua:86: in function 'create_add_edit_frame'
	__Todo-List__/todo.lua:84: in function 'edit_task'
	__Todo-List__/todo.lua:186: in function 'on_gui_click'
	__Todo-List__/control.lua:16: in function <__Todo-List__/control.lua:15>
Error while running event Todo-List::on_gui_click (ID 1)
Gui element with name todo_add_frame already present in the parent element.
stack traceback:
	__Todo-List__/UI.lua:86: in function 'create_add_edit_frame'
	__Todo-List__/todo.lua:175: in function 'on_gui_click'
	__Todo-List__/control.lua:16: in function <__Todo-List__/control.lua:15>

Something in the means like this

function todo.create_add_edit_frame(player)
    local gui = player.gui.center
	**if 'gui contains element with name 'todo_add_frame' return**
    local frame = gui.add({
        type = "frame",
        name = "todo_add_frame",
        caption = {"todo.add_title"},
        direction = "vertical"
    })

Add setting for log messages

It should be possible to enable debug logging on a per player basis.
This way all the debug statements could be kept in the code.

Single player auto assign tasks

I think this would be something interesting. I'm a solo player and each time I have to select myself in the dropdown or use the take button to assign the task to me (and I like to see that the task is assigned to me).

I think that if there is only one player we could have an option so the tasks are directly assigned to this single player.

you can review an implementation of this in my feature/auto-assign branch.

Abort adding task

If you are adding a task and actually realize you don't want to you should be able to abort adding it.

Export/import tasks (as with blueprint strings)

I think we should be able to import a preset list of tasks.

If I'm beggining a new game I always start the same, and I still forgot to correctly size the first furnace for iron or oversize the copper smelting area. So I'd like to have a nice preset list of what to do and what size I want them to be.

limit task interaction to admins

As server admin
I would like to limit task interaction to certain users
So that not every troll can flood the system with BS tasks.

Acceptance Criteria:

  • It is possible to limit task interaction
  • Only people with the correct permissions can create/assign/edit/delete tasks

Original request here

Subtasks

It should be possible to create subtasks.

Button shows full task text

Currently the minimzed button shows the full task text and not just the first line.
This makes it impractical with tasks that span multiple lines.

Adding new item should work

It should be possible to add new items to the list.

Enter a text.
A new entry in the list appears and is unassigned.

Tasks templates

It should be possible to configure task templates.
Thus you could create a task "from template X". This would speed up creating more complex tasks (like setting up new bases).

Add details view to task list

By now there are a lot of infos attached to tasks. It would be cool to have a clickable Icon besides the task that opens an extra dialog with all the infos of that task (map location, subtasks?).

Optional quest mode

It should be possible to switch the mod to a quest log and calling tasks quests.

Edit finished task -> crash

Add task, "complete" it, show completed task, try to edit completed task, crash.

Error while running event Todo-List::on_gui_click (ID 1)
__Todo-List__/todo.lua:90: attempt to index local 'task' (a nil value)

Verify showing first line works for empty first lines

The button shows the first line of an assigned task.
Currently it is unclear how the button behaves if the task starts with an empty line.

Add a test to cover this edge case.

Expected behaviour: The first non empty line should be shown

When minimized the UI should display the first task

Using the todo list today I had to save and quit then load my game quite a lot of times. Sitting back at the computer I can't remember what to do then add to open the UI to check the first task. Maybe add a way to get a view on the first task assigned to me.

What do you think?

Finish ui

The UI still needs some work.

Minimize button
Add new entry button

Option for auto deleting?

Auto delete tasks
Currently completed tasks build up in a huge list.
Usually you never look at them again.

Describe the solution you'd like
We could add an option to automatically delete tasks instead of marking them as complete.
Then the completed list would not be that long.

Additional context
Or a modifier? shift + complete click deletes?

Scrolling

If there are too many tasks you cannot see them all -> enable scrolling

Remove "Nothing todo"

It's just empty text that takes up space. It can be removed (or hidden behind an option),

'Send to top' / 'Send to bottom' function

I'm often finding that I'm adding tasks to my to-do list that are very low or very high priority, so it'd be nice to be able to send tasks to the top or bottom of the list at will.

A checkbox on the creation dialog would also work, just for creating the item at the top instead of the bottom.

(Also, Is there any way to resize the text? It's a little too big, so the list takes up a lot of my screen.)

Open edit dialog when clicking task name

This was an idea I had while playing the other day - it'd be nice to be able to just click on the task's text to open the edit dialog. It could mean eliminating the need for the edit button entirely, but that would need some styling to make it look clickable (if that's even possible), or made into a button.

Duplicate tasks

It should be possible to duplicate tasks.

For main tasks it should just create a copy with all subtasks.
For subtasks it should duplicate them in the same main task.

Todo List Mailbox

Crazy idea:
If you are somewhere outside and think about your factory there is no way to put that into your todo list.

How about a mail address (personalized) where you can send random mails to. When you log into the game next time they are fetched from the mailbox and added to your todo list.

I have no idea if this is techically possible.. and if someone would actually use it :D

Alternative: have a small mobile app that creates todo list export strings. Then you can create the task on the fly, mail it to yourself and then import it manually.

Add timer to tasks

I'd like to have a spare field to set a target something. My main idea is to set target timers for tasks, such as : get my steel research done by 30 minutes or something like that.

Initialize mod on existing save

When loading an existing save the mod does not get initialized. Neither the data not the player hi.

It seems as (at least in single player) the onplayercreated is not fired when loading an existing save for the first time with the mod.

Add location to tasks

It would be cool to have a location for tasks.

In the edit dialog you should be able to add a map location.
Selecting a location should ask for a name and then create a marker on the global map.
If an existing marker is selected it should be connected to the task.

If the marker is updated the old version should be deleted.

The map location should be shown in the edit dialog.

Minimize main button panel?

Too many buttons in the main frame
By now there are six columns of buttons in the main frame. Not all of them are relevant at all times.

Describe the solution you'd like
It would be cool to be able to minimize the button columns.

Maybe just sorting, maybe all?

Pro sorting only:

  • Edit and show details still easily accessible
  • Only two button columns left

Contra sorting only:

  • Still two button columns left

Pro all collapsable:

  • No buttons left
  • Edit/Show details can be done with mouse clicks

Contra all collapsable:

  • Edit/show details has to be done with mouse clicks or one additional click

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.