Review Request 120036: Note loading in Notes Plasmoid

David Edmundson david at davidedmundson.co.uk
Sun Sep 7 15:07:41 UTC 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/120036/
-----------------------------------------------------------

(Updated Sept. 7, 2014, 3:07 p.m.)


Review request for Plasma.


Repository: kdeplasma-addons


Description
-------

The design:
 There's a NoteLoader class, currently we just hardcode loading the FileNoteLoader. The backend is refcounted between plasmoids.
 NoteLoader acts as a factory class for creating Notes, which can be subclassed and do whatever that needs to do (like loading async-ly)
 
 The QML side saves data on loss of focus and exit. We use explicitly different loading and saving to different properties to avoid the mess of two classes trying to write to the same property.

To explain the design, here are my long term goals:

 - never lose data if we wipe the relevant plasmarc
 - the same notes editable in plasmawindowed as the desktop
 - have the same note data on two containments
 - easily make an Akonadi backend for notes so we share between knotes (hence the abstract layer ATM). 
 - allows the user to be creative (store in git, sync to owncloud, whatever). Not stuff we should add in the UI, but we enable the user to do whatever.

I envision the settings module listing available notes. By default it just creates a new note when you make a new plasmoid so 4.x behaviour is still exactly the same as before /unless/ you go hunting for more things.


Diffs (updated)
-----

  applets/notes/CMakeLists.txt c980cb0 
  applets/notes/package/contents/config/main.xml a614f7e 
  applets/notes/package/contents/ui/main.qml 1213f48 
  applets/notes/plugin/abstractnoteloader.h PRE-CREATION 
  applets/notes/plugin/abstractnoteloader.cpp PRE-CREATION 
  applets/notes/plugin/documenthandler.h fd3bdd0 
  applets/notes/plugin/documenthandler.cpp b0a603a 
  applets/notes/plugin/filesystemnoteloader.h PRE-CREATION 
  applets/notes/plugin/filesystemnoteloader.cpp PRE-CREATION 
  applets/notes/plugin/note.h PRE-CREATION 
  applets/notes/plugin/note.cpp PRE-CREATION 
  applets/notes/plugin/notemanager.h PRE-CREATION 
  applets/notes/plugin/notemanager.cpp PRE-CREATION 
  applets/notes/plugin/notesplugin.cpp 890caeb 

Diff: https://git.reviewboard.kde.org/r/120036/diff/


Testing
-------


Thanks,

David Edmundson

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20140907/48c08762/attachment-0001.html>


More information about the Plasma-devel mailing list