Code Monkey home page Code Monkey logo

qtodotxt2's Introduction

QTodoTxt

Build Status GPLv3+Translation Scrutinizer Code Quality

QTodoTxt is a cross-platform UI client for todo.txt files (see todo.txt).

Main view

more screenshots..

Latest alpha/beta relase and QTodotTxt2:

Download code from git or use pip: pip install qtodotxt --upgrade --pre

We have also started work on QTodoTxt2 https://github.com/QTodoTxt/QTodoTxt2/ Much much much cleaner code and a new interface based on qml that offer a lot of new possibilities. Try it and give us feedback

Now also available using pip: pip install qtodotxt2 --upgrade --pre

And please report bugs to github!

###Latest stable release:

V1.9.0 is released but not all binary packages have been created yet and the following links may point to older versions (pip should alway point to latest release). If you want a missing binary release, generate it then contact the authors to upload the file and update the link in this README

Running from sources

To run the application without installing just:

Be sure to have all prerequisites installed !

Documentation

qtodotxt2's People

Contributors

alvcap avatar amescornish avatar asaika7 avatar calumjeadie avatar chaghi avatar davide125 avatar dkaparis avatar dreuter avatar ethingelstad avatar f8ttyc8t avatar feinte75 avatar funkyfuture avatar hogehiga avatar jturner314 avatar kmicc avatar mgushee avatar mnantern avatar monotasker avatar oroulet avatar paper42 avatar pkev avatar raabf avatar riko01 avatar sdenel avatar simonwiles avatar tjaehnel avatar tobi23github avatar weblate 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  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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qtodotxt2's Issues

fix coredump at exit

I sometimes get a message about a pixmap create before qapplication causing the crash...
QPixmap: Must construct a QGuiApplication before a QPixmap
not sure it is related.
gdb does not give much information..
0 malloc_consolidate (av=av@entry=0x7ffff7bb3b00 <main_arena>) at malloc.c:4204
#1 0x00007ffff7875d1f in _int_malloc (av=av@entry=0x7ffff7bb3b00 <main_arena>, bytes=bytes@entry=4096)
at malloc.c:3485
#2 0x00007ffff7877d84 in __GI___libc_malloc (bytes=4096) at malloc.c:2925
#3 0x00007ffff5b97ecc in QArrayData::allocate(unsigned long, unsigned long, unsigned long, QFlagsQArrayData::AllocationOption) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007fffecfa049e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#5 0x00007fffecfa05e4 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#6 0x00007fffed09b4c5 in QV4::WeakValue::free() () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#7 0x00007fffed134d77 in QQmlData::destroyed(QObject*) () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#8 0x00007ffff5d99dce in QObject::~QObject() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9 0x00007fffd43456d6 in ?? ()

Menu anomaly

when you select a menu item (File, Edit, View, etc) the pulldown menu stays transparent like the attached image. the menu items only show up when you move the mouse cursor down to where the menu items should be. not really a problem but I just wanted to let you know.
clipboard01

Is most development focussed on QTodoTxt2 at this point? Seems like yes?

Just looking at activity, it seems you guys are focused more on 2 now, so I went ahead and installed 2.

As I posted in some other threads, I am really liking the project. It looks like exactly what I have been looking for. I can see it's young though, I see few little annoying things here and there, as you guys readily admit to and are working on. I am not complaining, in fact far from it, I love what you guys are doing here and would like to help. Maybe I could flesh out the Wiki page for 2 or something (I see there is nothing there yet). Maybe I can help with instructions, packaging, bug reporting / tracking down, or whatever. I dunno yet. I would like to think that I write pretty decently, hence my suggestion I could perhaps help out in that area. Right now just trying to read up on all the issues to familiarize myself with the project, before I spout off at the mouth in ignorance.

I haven't written anything in python (yet) but I suppose that will be one of the next steps in the progression for me. I can say that I am already learning some insights into python and your architecture and decision making process by reading the issues and other stuff here. FWIW, I am pretty new to all of this but believe strongly in the philosophy of free software. I just finally made the leap from Windoze and I've never been happier. FeelsGoodMan.jpg :) Now I suppose that I feel very strongly to try and contribute to a project, especially if it is one that I am interested in and use, and is at the stage where my contribution might be helpful, given my currently relatively limited skill set. And so this project fits that bill perfectly. Anyway... I just had some questions I would like to understand before going further.

What was the reason for making 2? Just as you said to play around with / learn Qml? Or is there some additional functionality there in Qml that will be better off longer term for the project? I am asking both because I want to decide whether I want to personally use 1 or 2 and which will suit my needs better and which I will use and perhaps contribute to going forward. And which is going to continue to be actively developed, of course. So I just wanted to understand some of the reasoning behind it so that I could plan accordingly. And then perhaps be informed enough to update the wiki, or contribute elsewhere somehow.

I'm looking forward to chatting with you guys. Do you ever hang out in IRC? I tried out #qtodotxt on freenode just on a lark, since the project seems under fairly active development now, but no one was in there at the time. Maybe I'll start hanging out in there when I am on my computer. In fact, I just went ahead and opened that up on another monitor...

FilterView Layout

Should all cols be resizeable? -> If yes, store col sizes.
Should the cols be moveable? -> If yes, store col positions.
Should the user be able to hide/show the cols for counting?

In QTodoTxt1 the width of filterview changes with the width of the mainwindow. Do you/we want this here also?

OT: Are there other things which you want me to implement/repair now?

Show Future Tasks

Show/Hide future tasks doesn't seem to do anything. the button changes focus correctly, just no actions. future tasks stay displayed.

completion popup broken

the popup appear on the complete left side of app and I get following error message:
file:///home/olivier/dev/qml-qtodotxt/qtodotxt2/qml/CompletionPopup.qml:88: TypeError: Property 'callLater' of object [object Object] is not a function

Looks like this is because I have 5.7.... Is this methods necessary? upgrading qt is a pain in the ass...

wishlist item - cancel if blank

a few times i've hit the add task button then changed my mind. a blank line is then added to my task list. any chance on a cancel if blank type of logic?

huge BUG with data lose!

@fuchsmich in current master if I add a new task, then it looks like the text of the new task replaces the text of the next task! as far as I understand there is something in the new tableview index but I could not find out where

Row Spacing

in the task list, the row spacing seems to be a bit larger than QTodoTxt v1.x. Is this by design or can this be adjusted (maybe add a preference)?

thanks

fix singleton

@PKEv singleton stuff does not work. Do you have any idea to fix it? I removed the quick add option so it whould be even more simple that with QTodotxt1...

[solved] ImportError: No module named 'PyQt5.QtQml'

Traceback (most recent call last): File "./qtodotxt", line 11, in <module> from qtodotxt2 import app File "/home/TRSx80/Programs/QTodoTxt2-qml/bin/../qtodotxt2/app.py", line 12, in <module> from PyQt5.QtQml import QQmlApplicationEngine ImportError: No module named 'PyQt5.QtQml'

???

I think I have all dependencies installed (well, there are no instructions that I could find for QTodoTxt2 only QTodoTxt) so not sure if I am missing something? Some QML something? I see a bunch of Qt/QML packages in Debian, not sure if I need another one of them? Also, I think my PYTHONPATH is correct. So.... ?

Instructions for install on macOS?

Hi, I've been using todo.txt for a couple of months and just discovered QTodoTxt. I'm using the earlier version and I'm liking it a lot, and want to try out QTodoTxt2. However I'm afraid I have no idea how to install stuff on a Mac without a DMG. Could someone post some step-by-step idiot-proof instructions in the readme file for installation for Mac users? I'm running macOS 10.12.6.

restore selection after operations on tasklist

Opened this issue mainly because I'm working on this and to have a place to talk about it.

  1. IMO operations like edit or delete should only be possible, when an item is visibly selected. Having a valid currentRow (=currentIndex) is not enough.
  2. there should always be one item selected (?)

window position

not a bug, just 1 for the wishlist maybe?
need to have the window remember it's last position (I have dual monitors). Seems to remember the window size just fine but every time i open (bin\qtodotxt.pyw) it pops up in the center of my #1 monitor. not sure if it makes any difference, but i'm running WinPython 3.5.3.

Development environment | module "QtQuick" version 2.7 is not installed

Hey everyone,

I was able to develop QTodoTxt in eclipse with Pydev plugin and installing some packages to fulfill dependencies.
Using this approach I cannot get QTodoTxt2 to run on my ubuntu 16.04. I had to install some qml and qtquick packages and fixed some error by doing so. When I run the app I get the following error that I cannot fix:

QQmlApplicationEngine failed to load component
file:///[...]/git/QTodoTxt2/qtodotxt2/qml/QTodoTxt.qml:142 Type TaskListView unavailable
file:///[...]/git/QTodoTxt2/qtodotxt2/qml/TaskListView.qml:1 module "QtQuick" version 2.7 is not installed

How do you develop the app? Which tools do you use and which packages / installations do you set up?

Best regards
topas

Python crash - Complete (w/recurrance)

i think the recurrance function got messed up in latest code. when i select 'Complete Task' icon on a regular task everything works fine. when i do this on an item that has 'rec:+1w' I get a 'python has stopped working'...

use pull request

We have now a working tool. I propose that we start using pull request again to avoid things like 'forgotten file'. I will restrict pushing directly to main branch in a few days

several columns in tasklistview

Did we completely give up that idea? I think this would have a value for the priority, the current solution (with space) get complaints QTodoTxt/QTodoTxt#428.
So we could have two columns, one for priority and one for the rest. the prority column could disapear or simply get reset while editing...just an idea, now that you have more experience with qml

Recurring Tasks

Recurring tasks not working for me right now. Is this a bug or is this not implemented (yet)?

theme submodule

@fuchsmich everython under qtodotxt directory will be installed so it is not a good idea to have the theme repository there. Can't you just copy what we need for qml theme in qtodotxt repository and remove everything else? I really think we should have as little as possible and lt system handle things like dark themes

Windows: Crash on opening file

10:52:28.601 [qtodotxt.lib.file] DEBUG: Setting up FileObserver instance.
qml: OPENING file:///C:/Users/mfuchs/qtprojects/QTodoTxt2/examples/todo.txt
10:52:43.415 [qtodotxt.controllers.main_controller] DEBUG: MainController.open c
alled with filename="//C:/Users/mfuchs/qtprojects/QTodoTxt2/examples/todo.txt"
--- Logging error ---
Traceback (most recent call last):
  File "C:\Users\mfuchs\qtprojects\QTodoTxt2\bin\..\qtodotxt\controllers\main_co
ntroller.py", line 249, in open
    self._file.load(filename)
  File "C:\Users\mfuchs\qtprojects\QTodoTxt2\bin\..\qtodotxt\lib\file.py", line
30, in load
    with open(filename, 'rt', encoding='utf-8') as fd:
OSError: [Errno 22] Invalid argument: '//C:/Users/mfuchs/qtprojects/QTodoTxt2/ex
amples/todo.txt'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\mfuchs\AppData\Local\Programs\Python\Python36-32\lib\logging\__
init__.py", line 992, in emit
    msg = self.format(record)
  File "C:\Users\mfuchs\AppData\Local\Programs\Python\Python36-32\lib\logging\__
init__.py", line 838, in format
    return fmt.format(record)
  File "C:\Users\mfuchs\AppData\Local\Programs\Python\Python36-32\lib\logging\__
init__.py", line 575, in format
    record.message = record.getMessage()
  File "C:\Users\mfuchs\AppData\Local\Programs\Python\Python36-32\lib\logging\__
init__.py", line 338, in getMessage
    msg = msg % self.args
TypeError: not all arguments converted during string formatting
Call stack:
  File "C:\Users\mfuchs\qtprojects\QTodoTxt2\bin\qtodotxt.pyw", line 30, in <mod
ule>
    app.run()
  File "C:\Users\mfuchs\qtprojects\QTodoTxt2\bin\..\qtodotxt\app.py", line 113,
in run
    app.exec_()
  File "C:\Users\mfuchs\qtprojects\QTodoTxt2\bin\..\qtodotxt\controllers\main_co
ntroller.py", line 251, in open
    self.showError(self.tr("Error opening file: {}.\n Exception:{}").format(file
name, ex))
  File "C:\Users\mfuchs\qtprojects\QTodoTxt2\bin\..\qtodotxt\controllers\main_co
ntroller.py", line 47, in showError
    logger.debug("ERROR", msg)
Message: 'ERROR'
Arguments: ("Error opening file: //C:/Users/mfuchs/qtprojects/QTodoTxt2/examples
/todo.txt.\n Exception:[Errno 22] Invalid argument: '//C:/Users/mfuchs/qtproject
s/QTodoTxt2/examples/todo.txt'",)
qml: And of course you could only agree.

custom sorting of tasks

@fuchsmich actions to sort is a good idea, but I think that for now we can have these actions in a menu ("Sorting" for example) and do not clutter the interface with buttons
And let the html property of a task return the entire task as html, inclusive priority

Error on start

windows7 64x
try to start but get this:


Traceback (most recent call last):
  File "D:\QtProgects\QTodoTxt2\bin\qtodotxt.pyw", line 28, in <module>
    from qtodotxt2 import app
  File "D:\QtProgects\QTodoTxt2\bin\..\qtodotxt2\app.py", line 16, in <module>
    from qtodotxt2.main_controller import MainController
  File "D:\QtProgects\QTodoTxt2\bin\..\qtodotxt2\main_controller.py", line 14, in <module>
    class MainController(QtCore.QObject):
  File "D:\QtProgects\QTodoTxt2\bin\..\qtodotxt2\main_controller.py", line 60, in MainController
    @QtCore.pyqtSlot('QModelIndexList')
TypeError: C++ type 'QModelIndexList' is not supported as a pyqtSlot type argument type

Show Completed Tasks

hotkey question:
win+~ (windows button and ~ button) enables/disables the Show Completed Tasks icon. Can this be changed?

For users of elementaryOS 0.4.1 (Loki) this is how to get QTT2 running (so far)

H all,

i know this isn't an issue per se but I wanted to try and help anyone in my situation. In case you face the same number of QML error messages I did.

For those who don't know - elementaryOS is based off Ubuntu LTS releases , in this case 16.04.
First off install the following packages:
sudo apt-get install python3-pyqt5
sudo apt-get install qtdeclarative5-models-plugin
sudo apt-get install python3-pyqt5.qtquick
sudo apt install qml-module-qt-labs-settings

Second, Download the QTT2 off github and unpack it from its archive and go to the following directory:
/your/path/QTodoTxt2-master/qtodotxt2/qml/

  • Using your favorite text editor , edit each of the following:
    TaskLine.qml, TaskListTableView.qml, MainMenu.qml, Preferences.qml, AboutBox.qml
    in each file's case you'll be changing the first line from
    import QtQuick 2.7 to import QtQuick 2.5

Try running it now. This is what I got:
screenshot from 2017-08-24 14-22-22

If it works , great , if not let me know - it's possible I've something installed prior that is missing in these steps. Keep in mind I dont think this is recommended - especially if the author decides to use features found specifically in ver 2.7 of QtQuick. But for now if like me you want to test and help this project - this should work.

Also its possible this may help those running Other *buntu 16.04 based distros - however you'll have to try and see how you fare. Thanks for reading!

edit: Added preferences.qml and aboutbox.qml - these options weren't working till I edited the qml files.

How do i run this?

How do i download and try out qtodotxt 2 in windows , without doing some extensive compile or something?

Please create an AppImage for QTodoTxt

http://appimage.org/

" Distribute your desktop Linux application in the AppImage format and win users running all common Linux distributions. Package once and run everywhere. Reach users on all major desktop distributions."

AppImages can now be created via the Open Build Service from openSUSE so the effort involved in maintaining an AppImage is even lower now.

recent files

Added a new property "recentFiles on mainController". @fuchsmich any idea how to use it to display in a menu?

find solution for theming

Currently we have a quite harcoded solution. Ideally it should be qml only but things like icons are part of models in qt so I am not sure how to solve that

priority

when creating a new task, typing the ( brings up the priority dialog (like due: and t: does). except the priority one does not respond to mouse input. to select the priorities, have to use the arrow keys on the keyboard. plus it would be nice if it could add a single space after the closing ).

Theming

  • proper default line height for tasklist and filterlist
  • styling for calendar popup

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.