qtodotxt / qtodotxt2 Goto Github PK
View Code? Open in Web Editor NEWRewrite of GUI code of QTodoTxt using qml.
Home Page: http://qtodotxt.org
Rewrite of GUI code of QTodoTxt using qml.
Home Page: http://qtodotxt.org
no expandAll method... and something is broken currently
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
hotkey question:
win+~ (windows button and ~ button) enables/disables the Show Completed Tasks icon. Can this be changed?
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.
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?
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 ?? ()
This is an issue in qml
Recurring tasks not working for me right now. Is this a bug or is this not implemented (yet)?
Opened this issue mainly because I'm working on this and to have a place to talk about it.
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'...
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
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
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
@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
task templates was a great feature in v1. plans for it in v2?
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.
@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...
Currently the recurtion is just ignored.... not really intuitive
This is important to facilitate installation and release a beta
selecting via menu/mouse or ctrl-F1 doesn't pull up anything.
Show/Hide future tasks doesn't seem to do anything. the button changes focus correctly, just no actions. future tasks stay displayed.
Saved filters would be absolutely awesome.
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.... ?
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/
TaskLine.qml, TaskListTableView.qml, MainMenu.qml, Preferences.qml, AboutBox.qml
import QtQuick 2.7
to import QtQuick 2.5
Try running it now. This is what I got:
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.
Added a new property "recentFiles on mainController". @fuchsmich any idea how to use it to display in a menu?
@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
Code Python side should be OK now. just need to set searchText property from QML
" 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.
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
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...
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...
Selecting the archive button causes a python crash.
python.pdf
@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
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?
As with sort, grouping by the same would be nice.
popup is hidden when editing position is too far down or right.
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 ).
How do i download and try out qtodotxt 2 in windows , without doing some extensive compile or something?
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.
git bisect bad
9d46f88 is the first bad commit
commit 9d46f88
Author: Michael Fuchs [email protected]
Date: Sat Apr 22 00:25:46 2017 +0200
more elegance to completer
:040000 040000 768beaff55bb63e1c83a338e832d50b63a8a75f6 fe107a9876619b0e3534df46f9e87c133d5bc568 M qtodotxt
Animation should be faster and disabled to select a task far down
I tried but did not manage ;-). Looks like the focus moves all the time between items and listview and did not manage to control it...
@fuchsmich I let you have a look ;-)
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
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.