Skip to content

Commit

Permalink
#1 initial setup (#5)
Browse files Browse the repository at this point in the history
#1 initial setup
  • Loading branch information
JonasJurczok authored Nov 26, 2018
1 parent dc71a41 commit fc4ad00
Show file tree
Hide file tree
Showing 11 changed files with 254 additions and 39 deletions.
42 changes: 4 additions & 38 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,41 +1,7 @@
# Compiled Lua sources
luac.out
.idea*
*.iml

# luarocks build files
*.src.rock
*.zip
*.tar.gz

# Object files
*.o
*.os
*.ko
*.obj
*.elf

# Precompiled Headers
*.gch
*.pch

# Libraries
*.lib
*.a
*.la
*.lo
*.def
*.exp

# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib

# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex
target/

/.faketorio
26 changes: 26 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
before_install:
- sudo apt-get update
- sudo apt-get install build-essential curl wget unzip git openssl lua5.2 lua5.2-dev libev-dev libjs-jquery -y
- wget -O /tmp/luarocks.zip https://github.com/keplerproject/luarocks/archive/v3.0.1.zip
- unzip /tmp/luarocks.zip -d /tmp
- (cd /tmp/luarocks-3.0.1 && ./configure --prefix=/usr --lua-version=5.2)
- make -C /tmp/luarocks-3.0.1 build
- sudo make -C /tmp/luarocks-3.0.1 install
- sudo luarocks install serpent
- sudo luarocks install busted
- sudo luarocks install luacheck
- sudo luarocks install faketorio

script:
# TODO: correct paths
- luacheck ./src/*.lua --globals todo mod_gui script game defines data serpent settings global
- luacheck ./src/todo/*.lua --globals todo mod_gui script game defines data serpent settings global
- faketorio package -c .travis/.faketorio -v

deploy:
provider: releases
api_key: "${TOKEN}"
file: "target/PowerMon_${TRAVIS_TAG}.zip"
skip_cleanup: true
on:
tags: true
1 change: 1 addition & 0 deletions .travis/.faketorio
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#empty faketorio config to make packaging possible
8 changes: 8 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
## How to contribute?

If you want to contribute feel free to create a [pull request](https://github.com/JonasJurczok/factorio-todo-list/pulls) (with new translations for example).

Otherwise you can [create an issue](https://github.com/JonasJurczok/factorio-todo-list/issue) if you find a bug or have
an idea for a feature.

If you don't have a github account feel free to contact us via mail at `jonasjurczok+factorio@gmail.com`.
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2018 Jonas
Copyright (c) 2018 Jonas Jurczok

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
11 changes: 11 additions & 0 deletions info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"name": "PowerMon",
"version": "16.1.0",
"title": "Power Monitor",
"author": "Jason Miles, Tessiema",
"contact": "jonasjurczok+factorio@gmail.com",
"homepage": "https://github.com/JonasJurczok/factorio-power-monitor",
"factorio_version": "0.16",
"dependencies": ["base >= 0.15"],
"description": "This mod adds an UI to monitor power in entities."
}
62 changes: 62 additions & 0 deletions locale/de/locale.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
[todo]
todo_list=Todo List
title_done=Status
title_task=Aufgabe
title_assignee=Zugewiesen an
title_edit=Bearbeiten
title_details=Details

minimize=Minimieren
add=Neue Aufgabe
add_assignee=Bearbeiter
add_task=Aufgabe
add_title=Neue Aufgabe anlegen
add_task_title=Titel
add_top=Oben hinzufügen

edit_title=Aufgabe ändern

persist=Speichern
cancel=Abbrechen
update=Speichern
delete=Löschen
confirm_deletion=Wirklich löschen

import=Importieren
export=Exportieren

unassigned=Nicht zugewiesen
assign_self=Mir zuweisen
show_done=Zeige abgeschlossene Aufgaben
hide_done=Verberge abgeschlossene Aufgaben

tasks_available= __1__ Aufgaben verfügbar

created_by=Erstellt von
updated_by=Geändert von
noone=Niemand

add_subtask=Unteraufgabe erstellen
edit_subtask=Unteraufgabe bearbeiten
delete_subtask=Unteraufgabe löschen

[controls]
todolist-toggle-ui=Todo Liste minimieren/maximieren

[mod-setting-name]
todolist-show-button=Zeige "Todo List" Schalter.
todolist-show-log=Zeige debug Nachrichten im Chatfenster an.
todolist-window-height=Fensterhöhe
todolist-auto-assign=Auto-assign tasks
todolist-click-edit-task=Edit task on middle click

[mod-setting-description]
todolist-show-button=Wenn aktiviert wird immer ein "Todo List" Schalter in der oberen linken Ecke angezeigt.\nWenn deaktiviert kann die Todo Liste nur über den Hotkey (standard shift+t) aufgerufen werden.
todolist-show-log=Wenn aktiviert werden debug Nachrichten des mods im Chatfenster angezeigt.\nAchtung: Es sind sehr viele Nachrichten.
todolist-window-height=Die Höhe des TodoList Fensters. Standard ist 600.
todolist-auto-assign=If there is only one player in the game, auto-assign the task to this player.
todolist-click-edit-task=If enabled the middle click will open the edit popup. Default on right click.

[string-mod-setting]
todolist-click-edit-task-right-button=Right button
todolist-click-edit-task-middle-button=Middle button
62 changes: 62 additions & 0 deletions locale/en/locale.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
[todo]
todo_list=Todo List
title_done=Done
title_task=Task
title_assignee=Assignee
title_edit=Edit
title_details=Details

minimize=Minimize
add=Add new
add_assignee=Assignee
add_task=Task
add_title=Add new task
add_task_title=Title
add_top=Add to Top

edit_title=Edit task

persist=Save
cancel=Cancel
update=Update
delete=Delete
confirm_deletion=Confirm deletion

import=import
export=export

unassigned=Unassigned
assign_self=Take
show_done=Show completed Tasks
hide_done=Hide completed Tasks

tasks_available=__1__ Tasks available

created_by=Created by
updated_by=Modified by
noone=No One

add_subtask=Create subtask
edit_subtask=Edit subtask
delete_subtask=Delete subtask

[controls]
todolist-toggle-ui=Min/maximize todo list

[mod-setting-name]
todolist-show-button=Show "Todo List" button.
todolist-show-log=Show debug log messages in the chat window.
todolist-window-height=Todo list window height
todolist-auto-assign=Auto-assign tasks
todolist-click-edit-task=Edit task on middle click

[mod-setting-description]
todolist-show-button=If enabled will always show a "Todo List" button in the top left.\nIf disabled the todo list can only be accessed by its hotkey (default shift-t).
todolist-show-log=If enabled the mod will print debug messages to the chat window.\nAttention: there are a lot of them :)
todolist-window-height=The height of the todo list window. Default is 600.
todolist-auto-assign=If there is only one player in the game, auto-assign the task to this player.
todolist-click-edit-task=If enabled the middle click will open the edit popup. Default on right click.

[string-mod-setting]
todolist-click-edit-task-right-button=Right button
todolist-click-edit-task-middle-button=Middle button
32 changes: 32 additions & 0 deletions src/control.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@

require "mod-gui"
require "todo/todo"

-- when creating a new game, initialize data structure
script.on_init(todo.mod_init)

-- When a player is joining, create the UI for them
script.on_event(defines.events.on_player_created, function(event)
local player = game.players[event.player_index]
todo.create_maximize_button(player)
end)

-- if the version of the mod or any other version changed
script.on_configuration_changed(function(_)
todo.mod_init()
end)

script.on_event(defines.events.on_gui_click, function(event)
todo.on_gui_click(event)
end)

script.on_event("todolist-toggle-ui", function(event)
local player = game.players[event.player_index]
todo.toggle_main_frame(player)
end)

script.on_event(defines.events.on_runtime_mod_setting_changed, function(event)
local player = game.players[event.player_index]
local key = event.setting
todo.on_runtime_mod_setting_changed(player, key)
end)
9 changes: 9 additions & 0 deletions src/data.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
require('todo.style')

local hotkey = {
type = "custom-input",
name = "todolist-toggle-ui",
key_sequence = "SHIFT + T",
consuming = "none",
}
data:extend({hotkey})
38 changes: 38 additions & 0 deletions src/settings.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
data:extend({
{
name = "todolist-show-button",
setting_type = "runtime-per-user",
type = "bool-setting",
default_value = true,
per_user = true,
},
{
name = "todolist-show-log",
setting_type = "runtime-per-user",
type = "bool-setting",
default_value = false,
per_user = true,
},
{
name = "todolist-window-height",
setting_type = "runtime-per-user",
type = "int-setting",
default_value = 600,
per_user = true,
},
{
name = "todolist-auto-assign",
setting_type = "runtime-per-user",
type = "bool-setting",
default_value = false,
per_user = true,
},
{
name = "todolist-click-edit-task",
setting_type = "runtime-per-user",
type = "string-setting",
allowed_values = {"right-button", "middle-button"},
default_value = "right-button",
per_user = true,
}
})

0 comments on commit fc4ad00

Please sign in to comment.