├── tests ├── __init__.py ├── test_nose.py └── test_dummy.py ├── config.ini ├── data └── settings.json ├── android.txt ├── requirements.txt ├── Makefile ├── assets ├── img │ ├── icon.png │ ├── pixel.png │ ├── icons │ │ ├── help.png │ │ ├── quit.png │ │ ├── about.png │ │ ├── settings.png │ │ └── notify │ │ │ ├── error.png │ │ │ ├── success.png │ │ │ └── warning.png │ ├── presplash.png │ └── bg │ │ └── background.png └── fonts │ └── ubuntu │ ├── Ubuntu-B.ttf │ ├── Ubuntu-BI.ttf │ ├── Ubuntu-C.ttf │ ├── Ubuntu-L.ttf │ ├── Ubuntu-LI.ttf │ ├── Ubuntu-M.ttf │ ├── Ubuntu-MI.ttf │ ├── Ubuntu-R.ttf │ ├── Ubuntu-RI.ttf │ ├── UbuntuMono-B.ttf │ ├── UbuntuMono-BI.ttf │ ├── UbuntuMono-R.ttf │ ├── UbuntuMono-RI.ttf │ ├── copyright.txt │ ├── TRADEMARKS.txt │ ├── README.txt │ ├── CONTRIBUTING.txt │ ├── LICENCE.txt │ ├── LICENCE-FAQ.txt │ └── FONTLOG.txt ├── docs ├── help.rst ├── changes.rst ├── todo.rst ├── roadmap.rst ├── about.rst ├── credits.rst └── contributing.rst ├── README.md ├── bin ├── exts.sh ├── make_app_key.sh └── make_release.sh ├── run.sh ├── widgets ├── images.kv ├── layouts.kv ├── actionbar.kv ├── forms.kv └── popups.kv ├── MANIFEST.in ├── .travis.yml ├── .gitattributes ├── models.py ├── cli.py ├── LICENSE ├── .gitignore ├── main.kv ├── setup.py ├── README.rst └── main.py /tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config.ini: -------------------------------------------------------------------------------- 1 | [database] 2 | file=data/skeleton.db 3 | -------------------------------------------------------------------------------- /data/settings.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | } 4 | ] 5 | -------------------------------------------------------------------------------- /android.txt: -------------------------------------------------------------------------------- 1 | title=Skeleton 2 | author=Vijay Mahrra 3 | orientation=portrait 4 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | nose=1.3.4 2 | click==3.3 3 | peewee==2.3.3 4 | Kivy==1.8.0 5 | docutils 6 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | init: 2 | pip install -r requirements.txt 3 | 4 | test: 5 | nosetests tests 6 | -------------------------------------------------------------------------------- /assets/img/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/img/icon.png -------------------------------------------------------------------------------- /assets/img/pixel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/img/pixel.png -------------------------------------------------------------------------------- /docs/help.rst: -------------------------------------------------------------------------------- 1 | Skeleton 2 | ======== 3 | 4 | What is Skeleton? 5 | ----------------- 6 | 7 | 8 | -------------------------------------------------------------------------------- /assets/img/icons/help.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/img/icons/help.png -------------------------------------------------------------------------------- /assets/img/icons/quit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/img/icons/quit.png -------------------------------------------------------------------------------- /assets/img/presplash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/img/presplash.png -------------------------------------------------------------------------------- /assets/img/bg/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/img/bg/background.png -------------------------------------------------------------------------------- /assets/img/icons/about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/img/icons/about.png -------------------------------------------------------------------------------- /assets/img/icons/settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/img/icons/settings.png -------------------------------------------------------------------------------- /assets/fonts/ubuntu/Ubuntu-B.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/Ubuntu-B.ttf -------------------------------------------------------------------------------- /assets/fonts/ubuntu/Ubuntu-BI.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/Ubuntu-BI.ttf -------------------------------------------------------------------------------- /assets/fonts/ubuntu/Ubuntu-C.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/Ubuntu-C.ttf -------------------------------------------------------------------------------- /assets/fonts/ubuntu/Ubuntu-L.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/Ubuntu-L.ttf -------------------------------------------------------------------------------- /assets/fonts/ubuntu/Ubuntu-LI.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/Ubuntu-LI.ttf -------------------------------------------------------------------------------- /assets/fonts/ubuntu/Ubuntu-M.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/Ubuntu-M.ttf -------------------------------------------------------------------------------- /assets/fonts/ubuntu/Ubuntu-MI.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/Ubuntu-MI.ttf -------------------------------------------------------------------------------- /assets/fonts/ubuntu/Ubuntu-R.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/Ubuntu-R.ttf -------------------------------------------------------------------------------- /assets/fonts/ubuntu/Ubuntu-RI.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/Ubuntu-RI.ttf -------------------------------------------------------------------------------- /assets/img/icons/notify/error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/img/icons/notify/error.png -------------------------------------------------------------------------------- /assets/img/icons/notify/success.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/img/icons/notify/success.png -------------------------------------------------------------------------------- /assets/img/icons/notify/warning.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/img/icons/notify/warning.png -------------------------------------------------------------------------------- /assets/fonts/ubuntu/UbuntuMono-B.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/UbuntuMono-B.ttf -------------------------------------------------------------------------------- /assets/fonts/ubuntu/UbuntuMono-BI.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/UbuntuMono-BI.ttf -------------------------------------------------------------------------------- /assets/fonts/ubuntu/UbuntuMono-R.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/UbuntuMono-R.ttf -------------------------------------------------------------------------------- /assets/fonts/ubuntu/UbuntuMono-RI.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vijinho/kivy-skeleton/HEAD/assets/fonts/ubuntu/UbuntuMono-RI.ttf -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | kivy-skeleton 2 | ============= 3 | 4 | This is a skeleton application based on the first app I released on Google Play 5 | -------------------------------------------------------------------------------- /docs/changes.rst: -------------------------------------------------------------------------------- 1 | Skeleton Changes 2 | ================ 3 | 4 | Version 1.0.0 5 | ------------- 6 | - Initial Android release to Google Play 7 | -------------------------------------------------------------------------------- /bin/exts.sh: -------------------------------------------------------------------------------- 1 | # find file extension used in project 2 | find . -type f | grep -v egg| grep -v 'skeleton/' | cut -d '.' -f 3 | sort | 3 | uniq | sort 4 | -------------------------------------------------------------------------------- /run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | find . -type f -name "*.pyc" -exec rm {} \; 3 | if [ -z "$1" ]; 4 | then kivy main.py --size='480x800' 5 | else 6 | kivy main.py --size=$1; 7 | fi 8 | -------------------------------------------------------------------------------- /bin/make_app_key.sh: -------------------------------------------------------------------------------- 1 | cd ~ 2 | mkdir -p .keystores 3 | ALIAS=skeleton 4 | keytool -genkey -v -keystore ~/.keystores/${ALIAS}.keystore -alias ${ALIAS} -keyalg RSA -keysize 2048 -validity 10000 5 | -------------------------------------------------------------------------------- /docs/todo.rst: -------------------------------------------------------------------------------- 1 | Skeleton TODO List 2 | ================== 3 | 4 | - Translations - Use QueryDict? http://kivy.org/docs/api-kivy.utils.html 5 | - Screenshot of aphorism widget (in Kivy 1.9+) 6 | -------------------------------------------------------------------------------- /assets/fonts/ubuntu/copyright.txt: -------------------------------------------------------------------------------- 1 | Copyright 2010,2011 Canonical Ltd. 2 | 3 | This Font Software is licensed under the Ubuntu Font Licence, Version 4 | 1.0. https://launchpad.net/ubuntu-font-licence 5 | 6 | -------------------------------------------------------------------------------- /assets/fonts/ubuntu/TRADEMARKS.txt: -------------------------------------------------------------------------------- 1 | Ubuntu and Canonical are registered trademarks of Canonical Ltd. 2 | 3 | The licence accompanying these works does not grant any rights 4 | under trademark law and all such rights are reserved. 5 | -------------------------------------------------------------------------------- /tests/test_nose.py: -------------------------------------------------------------------------------- 1 | from nose.tools import * 2 | #from .context import sample 3 | 4 | import skeleton 5 | 6 | def setup(self): 7 | print 'SETUP!' 8 | 9 | def teardown(): 10 | print 'TEARDOWN!' 11 | 12 | def test_basic(): 13 | print 'I RAN!' 14 | -------------------------------------------------------------------------------- /widgets/images.kv: -------------------------------------------------------------------------------- 1 | : 2 | 3 | : 4 | pos: self.pos 5 | size: self.size 6 | auto_bring_to_front: False 7 | source: 'assets/img/pixel.png' 8 | keep_ratio: True 9 | allow_stretch: True 10 | nocache: False 11 | -------------------------------------------------------------------------------- /docs/roadmap.rst: -------------------------------------------------------------------------------- 1 | ROAD MAP 2 | ======== 3 | Future project goals/ideas/plan. 4 | 5 | Version 1.0.0 6 | ------------- 7 | - Make app of good-enough quality to release on Google Play 8 | 9 | Version 1.1.0 10 | ------------- 11 | - Tested on Windows and Linux as well as OS X and Android 12 | 13 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include *.py 2 | include LICENSE 3 | include README.rst 4 | include data/* 5 | include assets/* 6 | include skeleton 7 | include *.ini 8 | include *.jpg 9 | include *.json 10 | include *.kv 11 | include *.png 12 | include *.sh 13 | include *.ttf 14 | include *.txt 15 | include *.rst 16 | -------------------------------------------------------------------------------- /widgets/layouts.kv: -------------------------------------------------------------------------------- 1 | : 2 | orientation: "vertical" 3 | spacing: 1 4 | 5 | : 6 | orientation: "vertical" 7 | spacing: 1 8 | 9 | : 10 | orientation: 'tb-lr' 11 | padding: '15sp' 12 | spacing: '15sp' 13 | -------------------------------------------------------------------------------- /tests/test_dummy.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | #from .context import sample 3 | 4 | class XXXTestCase(unittest.TestCase): 5 | 6 | def setUp(self): 7 | # import class and prepare everything here. 8 | pass 9 | 10 | def test_YYY(self): 11 | # place your test case here 12 | a = 1 13 | self.assertEqual(a, 1) 14 | -------------------------------------------------------------------------------- /bin/make_release.sh: -------------------------------------------------------------------------------- 1 | RELEASE=$1 2 | ALIAS=skeleton 3 | jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore ~/.keystores/${ALIAS}.keystore ~/vagrant/PocketPhilosopher-$1-release-unsigned.apk ${ALIAS} 4 | /Applications/Android-sdk//build-tools/android-4.4W/zipalign -v 4 ~/vagrant/PocketPhilosopher-$1-release-unsigned.apk ~/vagrant/PocketPhilosopher-$1-release-signed.apk 5 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: python 2 | python: 3 | - "2.7" 4 | before_install: 5 | - sudo add-apt-repository -y ppa:kivy-team/kivy 6 | - sudo apt-get install python-kivy 7 | - sudo apt-get install kivy-example 8 | install: 9 | - pip install pip 10 | - pip install setuptools 11 | - pip install wsgiref 12 | - pip install -r requirements.txt 13 | script: nosetests 14 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | #Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | *.sln merge=union 7 | *.csproj merge=union 8 | *.vbproj merge=union 9 | *.fsproj merge=union 10 | *.dbproj merge=union 11 | 12 | # Standard to msysgit 13 | *.doc diff=astextplain 14 | *.DOC diff=astextplain 15 | *.docx diff=astextplain 16 | *.DOCX diff=astextplain 17 | *.dot diff=astextplain 18 | *.DOT diff=astextplain 19 | *.pdf diff=astextplain 20 | *.PDF diff=astextplain 21 | *.rtf diff=astextplain 22 | *.RTF diff=astextplain 23 | -------------------------------------------------------------------------------- /assets/fonts/ubuntu/README.txt: -------------------------------------------------------------------------------- 1 | ---------------------- 2 | Ubuntu Font Family 3 | ====================== 4 | 5 | The Ubuntu Font Family are a set of matching new libre/open fonts in 6 | development during 2010--2011. The development is being funded by 7 | Canonical Ltd on behalf the wider Free Software community and the 8 | Ubuntu project. The technical font design work and implementation is 9 | being undertaken by Dalton Maag. 10 | 11 | Both the final font Truetype/OpenType files and the design files used 12 | to produce the font family are distributed under an open licence and 13 | you are expressly encouraged to experiment, modify, share and improve. 14 | 15 | http://font.ubuntu.com/ 16 | -------------------------------------------------------------------------------- /docs/about.rst: -------------------------------------------------------------------------------- 1 | Skeleton 2 | ======== 3 | Version 1 4 | --------- 5 | The project codename is *skeleton* 6 | 7 | **DISCLAIMER** I provide this app free-of-charge and as-is with no implied 8 | blah blah blah, if you like it and would like to support my hard effort, I'd 9 | gladly accept a donation towards my cycling trip and drinking funds by PayPal. 10 | 11 | Author & Copyright 12 | ------------------ 13 | Copyright from 2014 14 | 15 | Vijay Mahrra 16 | 17 | http://about.me/vijay.mahrra 18 | 19 | Licenses 20 | -------- 21 | The source code of this project is released under **GPL 3**: 22 | http://www.gnu.org/licenses/gpl-3.0.html 23 | 24 | For other licenses read the ``.rst`` files in the source-code folder and ``docs/`` 25 | https://github.com/vijinho/skeleton 26 | -------------------------------------------------------------------------------- /widgets/actionbar.kv: -------------------------------------------------------------------------------- 1 | 2 | pos_hint: {'top':1} 3 | ActionView: 4 | ActionPrevious: 5 | with_previous: False 6 | text: 'Skeleton' 7 | on_press: app.root.current = 'Main' 8 | ActionButton: 9 | id: btn_settings 10 | text: "Settings" 11 | icon: 'assets/img/icons/settings.png' 12 | on_press: app.open_settings() 13 | ActionButton: 14 | text: "Help" 15 | icon: 'assets/img/icons/help.png' 16 | on_press: app.help() 17 | ActionButton: 18 | text: "About" 19 | icon: 'assets/img/icons/about.png' 20 | on_press: app.about() 21 | ActionButton: 22 | icon: 'assets/img/icons/quit.png' 23 | text: "Exit" 24 | on_press: app.stop() 25 | -------------------------------------------------------------------------------- /models.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | ''' 3 | Skeleton Database Models 4 | ======================== 5 | 6 | Models to handle data 7 | ''' 8 | 9 | import click 10 | from peewee import * 11 | from datetime import datetime 12 | import json 13 | import kivy 14 | kivy.require('1.8.0') 15 | from kivy import platform 16 | 17 | 18 | def get_database(): 19 | if platform == 'android': 20 | file = '/sdcard/skeleton/skeleton.db' 21 | else: 22 | import ConfigParser 23 | config = ConfigParser.RawConfigParser() 24 | config.read('config.ini') 25 | file = config.get('database', 'file') 26 | return SqliteDatabase(file) 27 | 28 | 29 | class BaseModel(Model): 30 | 31 | """(Peewee) Base Database model for Aphorisms App""" 32 | class Meta: 33 | database = get_database() 34 | 35 | if __name__ == "__main__": 36 | pass 37 | -------------------------------------------------------------------------------- /widgets/forms.kv: -------------------------------------------------------------------------------- 1 | : 2 | halign: 'left' 3 | markup: True 4 | canvas.before: 5 | BorderImage: 6 | texture: self.background_image.texture 7 | pos: self.pos 8 | size: self.size 9 | 10 | 11 | halign: 'left' 12 | valign: 'middle' 13 | text_size: self.width, None 14 | height: self.texture_size[1] 15 | markup: True 16 | 17 | 18 | size_hint_y: None 19 | size: (self.parent.width, '36dp') 20 | text_size: self.parent.width, None 21 | halign: 'left' 22 | valign: 'middle' 23 | markup: False 24 | 25 | 26 | size_hint_y: None 27 | size: (self.parent.width, '36dp') 28 | multiline: False 29 | allow_copy: True 30 | use_bubble: True 31 | 32 | : 33 | multiline: True 34 | max_chars: 512 35 | 36 | -------------------------------------------------------------------------------- /cli.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | ''' 3 | Skeleton CLI 4 | ============ 5 | 6 | An App which saves, retrieves, edits and displays aphorisms 7 | ''' 8 | 9 | import click 10 | import json 11 | from peewee import fn 12 | #from models import 13 | 14 | # setup config passing storage 15 | 16 | 17 | class Config(object): 18 | 19 | def __init__(self): 20 | self.verbose = False 21 | 22 | pass_config = click.make_pass_decorator(Config, ensure=True) 23 | 24 | 25 | @click.group() 26 | @click.option('-v', '--verbose', is_flag=True) 27 | @click.option('-l', '--logfile', type=click.File('w'), required=False) 28 | @pass_config 29 | def cli(config, verbose, logfile): 30 | config.verbose = verbose 31 | config.logfile = logfile 32 | if config.verbose: 33 | click.secho('Verbose mode: Enabled', 34 | fg='white', bold=True, reverse=True, blink=True) 35 | 36 | if __name__ == '__main__': 37 | cli() 38 | -------------------------------------------------------------------------------- /docs/credits.rst: -------------------------------------------------------------------------------- 1 | APPLICATION TEAM 2 | ================ 3 | 4 | There is no 'I' in TEAM :) 5 | 6 | - Vijay Mahrra -- vijay.mahrra@gmail.com -- http://about.me/vijay.mahrra 7 | 8 | CONTRIBUTORS 9 | ============ 10 | Teachers 11 | -------- 12 | I was inspired and used also code based on the hard work and effort by: 13 | - 14 | 15 | SOFTWARE PROJECTS 16 | ================= 17 | 18 | - Command-line implemented using click - 19 | http://click.pocoo.org/3/quickstart/ 20 | - SQLite - http://www.sqlite.org/cli.html 21 | - Database ORM - https://github.com/coleifer/peewee 22 | - Kivy for the App - http://kivy.org/#home 23 | - Travis for basic build tests - https://travis-ci.org 24 | 25 | DESIGN, GRAPHICS, TYPOGRAPHY 26 | ============================ 27 | 28 | - UI Font is Ubuntu - http://font.ubuntu.com/ 29 | - Serif Affinity Designer (App Icon) - https://affinity.serif.com/ 30 | - Android-based icons - https://developer.android.com/design/downloads/ 31 | -------------------------------------------------------------------------------- /assets/fonts/ubuntu/CONTRIBUTING.txt: -------------------------------------------------------------------------------- 1 | The Ubuntu Font Family is very long-term endeavour, and the first time 2 | that a professionally-designed font has been funded specifically with 3 | the intent of being an on-going community expanded project: 4 | 5 | http://font.ubuntu.com/ 6 | 7 | Development of the Ubuntu Font Family is undertaken on Launchpad: 8 | 9 | http://launchpad.net/ubuntu-font-family/ 10 | 11 | and this is where milestones, bug management and releases are handled. 12 | 13 | Contributions are welcomed. Your work will be used on millions of 14 | computers every single day! Following the initial bootstrapping of 15 | Latin, Cyrillic, Greek, Arabic and Hebrew expansion will be undertaken 16 | by font designers from the font design and Ubuntu communities. 17 | 18 | To ensure that the Ubuntu Font Family can be re-licensed to future 19 | widely-used libre font licences, copyright assignment is being required: 20 | 21 | https://launchpad.net/~uff-contributors 22 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014, Vijay Mahrra 2 | 3 | Redistribution and use in source and binary forms, with or without 4 | modification, are permitted and without condition and licensing restrictions. 5 | 6 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 7 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 8 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 9 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 10 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 11 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 12 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 13 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 14 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 15 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 16 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | 5 | # C extensions 6 | *.so 7 | 8 | # Distribution / packaging 9 | .Python 10 | env/ 11 | build/ 12 | develop-eggs/ 13 | dist/ 14 | downloads/ 15 | eggs/ 16 | lib/ 17 | lib64/ 18 | parts/ 19 | sdist/ 20 | var/ 21 | *.egg-info/ 22 | .installed.cfg 23 | *.egg 24 | 25 | # PyInstaller 26 | # Usually these files are written by a python script from a template 27 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 28 | *.manifest 29 | *.spec 30 | 31 | # Installer logs 32 | pip-log.txt 33 | pip-delete-this-directory.txt 34 | 35 | # Unit test / coverage reports 36 | htmlcov/ 37 | .tox/ 38 | .coverage 39 | .cache 40 | nosetests.xml 41 | coverage.xml 42 | 43 | # Translations 44 | *.mo 45 | *.pot 46 | *.log 47 | 48 | # Sphinx documentation 49 | docs/_build/ 50 | 51 | # PyBuilder 52 | target/ 53 | 54 | .svn 55 | *~ 56 | *.lock 57 | *.DS_Store 58 | *.swp 59 | *.out 60 | *.tmp 61 | *.bak 62 | *.old 63 | *.swo 64 | *.swn 65 | *.un~ 66 | main.ini 67 | 68 | # PyDev 69 | .project 70 | .pydevproject 71 | 72 | # Virtualenv 73 | venv 74 | 75 | data/aphorisms.db 76 | main.ini 77 | -------------------------------------------------------------------------------- /widgets/popups.kv: -------------------------------------------------------------------------------- 1 | : 2 | orientation: "horizontal" 3 | size_hint_x: 0.75 4 | size_hint_y: 0.15 5 | on_release: self.parent.remove_widget(self) 6 | canvas.before: 7 | Color: 8 | rgba: .0, .0, .0, .7 9 | Rectangle: 10 | pos: self.pos 11 | size: self.size 12 | BoxLayout: 13 | Image: 14 | size_hint_x: 0.15 15 | source: root.icon 16 | MyLabel: 17 | id: msg 18 | size_hint_x: 0.85 19 | text: root.msg 20 | halign: 'left' 21 | valign: 'middle' 22 | markup: True 23 | text_size: app.root.width, None 24 | size: self.texture_size 25 | 26 | : 27 | size_hint: 0.85, 0.85 28 | title: 'About' 29 | BoxLayout: 30 | orientation: "vertical" 31 | MyBoxLayout: 32 | id: rst_doc 33 | MyButton: 34 | size_hint_y: 0.15 35 | text: 'Ok' 36 | on_release: root.dismiss() 37 | 38 | : 39 | size_hint: 0.85, 0.75 40 | title: 'Help' 41 | BoxLayout: 42 | orientation: "vertical" 43 | MyBoxLayout: 44 | id: rst_doc 45 | MyButton: 46 | size_hint_y: 0.2 47 | text: 'Ok' 48 | on_release: root.dismiss() 49 | -------------------------------------------------------------------------------- /main.kv: -------------------------------------------------------------------------------- 1 | #:kivy 1.8.0 2 | #:import main main 3 | #:import get_random_color kivy.utils.get_random_color 4 | #:import ListItemButton kivy.uix.listview.ListItemButton 5 | #:import ListAdapter kivy.adapters.listadapter.ListAdapter 6 | #:import SimpleListAdapter kivy.adapters.simplelistadapter.SimpleListAdapter 7 | 8 | # DEBUG ALL WIDGETS 9 | : 10 | canvas.after: 11 | Line: 12 | rectangle: self.x+1, self.y+1, self.width-1, self.height-1 13 | dash_offset: 5 14 | dash_length: 3 15 | 16 |