Browse Source

build: define the monorepo structure (#361)

pull/362/head
Pier CeccoPierangioliEugenio 12 months ago committed by GitHub
parent
commit
0048c44c86
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 51
      .github/workflows/release.yml
  2. 2
      .github/workflows/release_doc.yml
  3. 4
      .github/workflows/testing.yml
  4. 2
      .release-please-config.json
  5. 6
      .release-please-manifest.json
  6. 61
      .vscode/launch.json
  7. 1
      TermTk
  8. 93
      TermTk/CHANGELOG.md
  9. 14
      TermTk/__init__.py
  10. 16
      apps/dumbPaintTool/app/__init__.py
  11. 2
      apps/dumbPaintTool/dumbPaintTool/__init__.py
  12. 0
      apps/dumbPaintTool/dumbPaintTool/__main__.py
  13. 38
      apps/dumbPaintTool/dumbPaintTool/app/__init__.py
  14. 5
      apps/dumbPaintTool/dumbPaintTool/app/about.py
  15. 0
      apps/dumbPaintTool/dumbPaintTool/app/canvaslayer.py
  16. 5
      apps/dumbPaintTool/dumbPaintTool/app/cfg.py
  17. 0
      apps/dumbPaintTool/dumbPaintTool/app/const.py
  18. 0
      apps/dumbPaintTool/dumbPaintTool/app/exportarea.py
  19. 0
      apps/dumbPaintTool/dumbPaintTool/app/filters/__init__.py
  20. 0
      apps/dumbPaintTool/dumbPaintTool/app/filters/brightness_contrast.py
  21. 0
      apps/dumbPaintTool/dumbPaintTool/app/filters/hue_chroma_lightness.py
  22. 0
      apps/dumbPaintTool/dumbPaintTool/app/glbls.py
  23. 0
      apps/dumbPaintTool/dumbPaintTool/app/importimage.py
  24. 0
      apps/dumbPaintTool/dumbPaintTool/app/layersctrl.py
  25. 0
      apps/dumbPaintTool/dumbPaintTool/app/main.py
  26. 0
      apps/dumbPaintTool/dumbPaintTool/app/maintemplate.py
  27. 0
      apps/dumbPaintTool/dumbPaintTool/app/paintarea.py
  28. 0
      apps/dumbPaintTool/dumbPaintTool/app/painttoolkit.py
  29. 0
      apps/dumbPaintTool/dumbPaintTool/app/palette.py
  30. 0
      apps/dumbPaintTool/dumbPaintTool/app/state/__init__.py
  31. 0
      apps/dumbPaintTool/dumbPaintTool/app/state/brush.py
  32. 0
      apps/dumbPaintTool/dumbPaintTool/app/state/layers.py
  33. 0
      apps/dumbPaintTool/dumbPaintTool/app/textarea.py
  34. 0
      apps/dumbPaintTool/dumbPaintTool/app/toolspanel.py
  35. 0
      apps/dumbPaintTool/dumbPaintTool/tui/paintToolKit.tui.json
  36. 0
      apps/dumbPaintTool/dumbPaintTool/tui/quickImport.tui.json
  37. 0
      apps/dumbPaintTool/dumbPaintTool/tui/tools.tui.json
  38. 0
      apps/dumbPaintTool/dumbPaintTool/web.ttk.package.json
  39. 58
      apps/dumbPaintTool/pyproject.toml
  40. 30
      apps/ttkDesigner.py
  41. 50
      apps/ttkDesigner/pyproject.toml
  42. 2
      apps/ttkDesigner/ttkDesigner/__init__.py
  43. 0
      apps/ttkDesigner/ttkDesigner/__main__.py
  44. 1
      apps/ttkDesigner/ttkDesigner/app/__init__.py
  45. 5
      apps/ttkDesigner/ttkDesigner/app/about.py
  46. 5
      apps/ttkDesigner/ttkDesigner/app/cfg.py
  47. 0
      apps/ttkDesigner/ttkDesigner/app/designer.py
  48. 0
      apps/ttkDesigner/ttkDesigner/app/main.py
  49. 0
      apps/ttkDesigner/ttkDesigner/app/menuBarEditor.py
  50. 0
      apps/ttkDesigner/ttkDesigner/app/notepad.py
  51. 0
      apps/ttkDesigner/ttkDesigner/app/propertyeditor.py
  52. 0
      apps/ttkDesigner/ttkDesigner/app/quickexport.py
  53. 0
      apps/ttkDesigner/ttkDesigner/app/signalsloteditor.py
  54. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/__init__.py
  55. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/supercontrol.py
  56. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superlayout.py
  57. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superlayoutgrid.py
  58. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superlayouthbox.py
  59. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superlayoutvbox.py
  60. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superobj.py
  61. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superwidget.py
  62. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetabstractscrollarea.py
  63. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetcontainer.py
  64. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetframe.py
  65. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetlist.py
  66. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetmenubutton.py
  67. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetradiobutton.py
  68. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetsplitter.py
  69. 0
      apps/ttkDesigner/ttkDesigner/app/superobj/superwidgettextedit.py
  70. 0
      apps/ttkDesigner/ttkDesigner/app/treeinspector.py
  71. 0
      apps/ttkDesigner/ttkDesigner/app/widgetbox.py
  72. 0
      apps/ttkDesigner/ttkDesigner/app/windoweditor.py
  73. 0
      apps/ttkDesigner/ttkDesigner/tui/menuBarEditor.tui.json
  74. 0
      apps/ttkDesigner/ttkDesigner/tui/newWindow.tui.json
  75. 0
      apps/ttkDesigner/ttkDesigner/tui/quickExport.tui.json
  76. 0
      apps/ttkDesigner/ttkDesigner/tui/quickImport.tui.json
  77. 1
      libs/pyTermTk/CHANGELOG.md
  78. 1
      libs/pyTermTk/README.md
  79. 0
      libs/pyTermTk/TermTk/TTkAbstract/__init__.py
  80. 0
      libs/pyTermTk/TermTk/TTkAbstract/abstractitemmodel.py
  81. 0
      libs/pyTermTk/TermTk/TTkAbstract/abstractscrollarea.py
  82. 0
      libs/pyTermTk/TermTk/TTkAbstract/abstractscrollview.py
  83. 0
      libs/pyTermTk/TermTk/TTkAbstract/abstracttablemodel.py
  84. 0
      libs/pyTermTk/TermTk/TTkCore/TTkTerm/__init__.py
  85. 0
      libs/pyTermTk/TermTk/TTkCore/TTkTerm/colors.py
  86. 0
      libs/pyTermTk/TermTk/TTkCore/TTkTerm/colors_ansi_map.py
  87. 0
      libs/pyTermTk/TermTk/TTkCore/TTkTerm/input.py
  88. 0
      libs/pyTermTk/TermTk/TTkCore/TTkTerm/input_mono.py
  89. 0
      libs/pyTermTk/TermTk/TTkCore/TTkTerm/input_thread.py
  90. 0
      libs/pyTermTk/TermTk/TTkCore/TTkTerm/inputkey.py
  91. 0
      libs/pyTermTk/TermTk/TTkCore/TTkTerm/inputmouse.py
  92. 0
      libs/pyTermTk/TermTk/TTkCore/TTkTerm/term.py
  93. 0
      libs/pyTermTk/TermTk/TTkCore/TTkTerm/term_base.py
  94. 0
      libs/pyTermTk/TermTk/TTkCore/__init__.py
  95. 0
      libs/pyTermTk/TermTk/TTkCore/canvas.py
  96. 3
      libs/pyTermTk/TermTk/TTkCore/cfg.py
  97. 0
      libs/pyTermTk/TermTk/TTkCore/color.py
  98. 0
      libs/pyTermTk/TermTk/TTkCore/constant.py
  99. 0
      libs/pyTermTk/TermTk/TTkCore/drivers/__init__.py
  100. 0
      libs/pyTermTk/TermTk/TTkCore/drivers/pyodide.py
  101. Some files were not shown because too many files have changed in this diff Show More

51
.github/workflows/release.yml

@ -24,7 +24,7 @@ env:
jobs:
release-please:
runs-on: ubuntu-latest
runs-on: self-hosted
outputs:
rp_out: ${{ toJson(steps.release-please.outputs) }}
steps:
@ -59,22 +59,40 @@ jobs:
https://${GITHUB_TOKEN}@github.com/ceccopierangiolieugenio/pyTermTk.git \
pyTermTk.new
cd pyTermTk.new
_VERSION=$(jq .TermTk .release-please-manifest.json)
echo "Version: ${_VERSION}"
# Update version in the project
_VERSION_TTK=$(jq .libs/pyTermTk .release-please-manifest.json)
_VERSION_DPT=$(jq .apps/dumbPaintTool .release-please-manifest.json)
_VERSION_T_D=$(jq .apps/ttkDesigner .release-please-manifest.json)
echo "Version TermTk: ${_VERSION_TTK}"
echo "Version dumbPaintTool: ${_VERSION_DPT}"
echo "Version ttkDesigner: ${_VERSION_T_D}"
sed -i \
"s|version:str.*|version:str = ${_VERSION}|" \
TermTk/TTkCore/cfg.py \
TermTk/__init__.py
"s|__version__:str.*|__version__:str = ${_VERSION_TTK}|" \
libs/pyTermTk/TermTk/__init__.py
sed -i \
"s|'pyTermTk>=.*',|'pyTermTk>=${_VERSION/-/}',|" \
setup.*
cp TermTk/CHANGELOG.md CHANGELOG.md
"s|__version__:str.*|__version__:str = ${_VERSION_TTK}|" \
apps/dumbPaintTool/dumbPaintTool/__init__.py
sed -i \
"s|__version__:str.*|__version__:str = ${_VERSION_T_D}|" \
apps/ttkDesigner/ttkDesigner/__init__.py
# Update required version in any pyproject.toml
# that depend on pyTermTk
find . -name pyproject.toml |
xargs sed -i \
"s|'pyTermTk >= [^']*'|'pyTermTk >= ${_VERSION_TTK}'|"
git add \
TermTk/TTkCore/cfg.py \
TermTk/__init__.py \
setup.* \
libs/pyTermTk/TermTk/TTkCore/cfg.py \
apps/dumbPaintTool/dumbPaintTool/__init__.py \
apps/ttkDesigner/ttkDesigner/__init__.py \
libs/pyTermTk/TermTk/__init__.py \
CHANGELOG.md
git commit -m "chore: updated version to ${_VERSION}"
find . -name pyproject.toml |
xargs git add
git commit -m "chore: updated TermTk and apps to versions to ${_VERSION_TTK}, ${_VERSION_DPT}, ${_VERSION_T_D}"
git push
pyTermTk-deploy-artifacts:
@ -139,3 +157,10 @@ jobs:
- release-please
- pyTermTk-deploy-artifacts
secrets: inherit
# pyTermTk-deploy-build:
# if: ${{ fromJson(needs.release-please.outputs.rp_out)['TermTk--release_created'] }}
# name: Deploy pyTermTk to pypi
# shell: bash
# run: |
# gh release upload ${TAG_NAME} tmp/TermTk.tgz

2
.github/workflows/release_doc.yml

@ -24,7 +24,7 @@ permissions:
jobs:
gen-docs:
runs-on: ubuntu-latest
runs-on: self-hosted
steps:
- uses: actions/checkout@v4
with:

4
.github/workflows/testing.yml

@ -12,8 +12,8 @@ on:
jobs:
build:
runs-on: ubuntu-latest
# runs-on: ubuntu-latest
runs-on: self-hosted
strategy:
fail-fast: false
matrix:

2
.release-please-config.json

@ -15,7 +15,7 @@
{ "type": "test", "section": "Test Changes" }
],
"packages": {
"TermTk": {
"libs/pyTermTk": {
"package-name": "pyTermTk"
},
"apps/dumbPaintTool": {

6
.release-please-manifest.json

@ -1,5 +1,5 @@
{
"TermTk": "0.41.11-a.0",
"apps/ttkDesigner": "0.40.1-a.0",
"apps/dumbPaintTool": "0.40.0-a.0"
"libs/pyTermTk": "0.41.11-a.0",
"apps/ttkDesigner": "0.41.0-a.54",
"apps/dumbPaintTool": "0.41.0-a.54"
}

61
.vscode/launch.json vendored

@ -12,22 +12,27 @@
"host": "localhost",
"port": 64321
}
},{
},
{
"name": "Python: Current File",
"type": "debugpy",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"justMyCode": true,
},{
},
{
"name": "Python: Current File with Args",
"type": "debugpy",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"justMyCode": true,
"args": ["tools/webExporter/js/ttkproxy.js"]
},{
"args": [
"tools/webExporter/js/ttkproxy.js"
]
},
{
"name": "Python: Current File with Env",
"type": "debugpy",
"request": "launch",
@ -37,25 +42,31 @@
"env": {
"TERMTK_GPM": "1"
},
},{
},
{
"name": "Python: Test Player",
"type": "debugpy",
"request": "launch",
"program": "tests/pytest/test_001_demo.py",
"console": "integratedTerminal",
"justMyCode": true,
"args": ["-p", "tmp/test.input.001.bin"]
},{
"name": "Python: TTk Designer",
"args": [
"-p",
"tmp/test.input.001.bin"
]
},
{
"name": "py Debug: Module ttkDesigner",
"type": "debugpy",
"request": "launch",
"module": "ttkDesigner",
"console": "integratedTerminal",
"justMyCode": true,
"env": {
"PYTHONPATH": "./tools"
"PYTHONPATH": "./apps/ttkDesigner"
}
},{
},
{
"name": "Python: TTk Designer Quick",
"type": "debugpy",
"request": "launch",
@ -65,18 +76,22 @@
"env": {
"PYTHONPATH": "./tools"
},
"args": ["ttkDesigner/tui/newWindow.tui.json"]
},{
"name": "Python: DumbPaintTool",
"args": [
"ttkDesigner/tui/newWindow.tui.json"
]
},
{
"name": "py Debug: Module DumbPaintTool",
"type": "debugpy",
"request": "launch",
"program": "apps/dumbPaintTool.py",
"module": "dumbPaintTool",
"console": "integratedTerminal",
"justMyCode": true,
"env": {
"PYTHONPATH": "./tools"
"PYTHONPATH": "./apps/dumbPaintTool"
}
},{
},
{
"name": "Python: DumbPaintTool File",
"type": "debugpy",
"request": "launch",
@ -86,22 +101,28 @@
"env": {
"PYTHONPATH": "./tools"
},
"args":["experiments/untitled.DPT.json"]
},{
"args": [
"experiments/untitled.DPT.json"
]
},
{
"name": "Python: Demo",
"type": "debugpy",
"request": "launch",
"program": "demo/demo.py",
"console": "integratedTerminal",
"justMyCode": true
},{
},
{
"name": "Python: Demo Mouse tracking",
"type": "debugpy",
"request": "launch",
"program": "demo/demo.py",
"console": "integratedTerminal",
"justMyCode": true,
"args": ["-t"]
"args": [
"-t"
]
},
]
}

1
TermTk

@ -0,0 +1 @@
libs/pyTermTk/TermTk

93
TermTk/CHANGELOG.md

@ -1,93 +0,0 @@
# Changelog
## [0.41.11-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.41.10-a.0...pyTermTk-v0.41.11-a.0) (2025-03-30)
### Chores
* bump version ([ffad7d1](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/ffad7d153d5cd5a7a78fb4ee7fb0a108315e7af4))
## [0.41.10-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.41.9-a.0...pyTermTk-v0.41.10-a.0) (2025-03-29)
### Chores
* bump version ([51c89d8](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/51c89d88dc18bbdf08fb4eda334ec100a0f3caeb))
## [0.41.9-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.41.8-a.0...pyTermTk-v0.41.9-a.0) (2025-03-29)
### Chores
* bump version ([5884f69](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/5884f69a276e9fca20b9413d17b7ce368d1cc8bd))
## [0.41.8-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.41.7-a.0...pyTermTk-v0.41.8-a.0) (2025-03-29)
### Chores
* bumbed version ([e401e73](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/e401e73633c2e32fe0eb0b7302fd93f57aaeb9af))
## [0.41.7-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.41.6-a.0...pyTermTk-v0.41.7-a.0) (2025-03-29)
### Chores
* adapted the version ([e13a0ea](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/e13a0ea514139688f239c482c019852e605e4d70))
## [0.41.6-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.41.5-a.0...pyTermTk-v0.41.6-a.0) (2025-03-29)
### Chores
* let's see if the version actually update ([4fb9280](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/4fb928051ecb7518aebbfbe04fe99b17240f892d))
## [0.41.5-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.41.4-a.0...pyTermTk-v0.41.5-a.0) (2025-03-29)
### Chores
* added version updater ([96ae50c](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/96ae50c58add78d633887aa6aed95c1077194a9a))
* test release 7 ([84b7c75](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/84b7c755e368732577a056f8f8d9786e294255f7))
## [0.41.4-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.41.3-a.0...pyTermTk-v0.41.4-a.0) (2025-03-29)
### Chores
* test release 4 ([3875ee0](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/3875ee0c23345fbfcbd1a341c0878ebb50661bf1))
* test release 5 ([36b99e2](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/36b99e2bc9386b460010eee1155cf86456c972c9))
* test release 6 ([59420b4](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/59420b4edffcaab9f4ae7f02184fa7a456018916))
## [0.41.3-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.41.2-a.0...pyTermTk-v0.41.3-a.0) (2025-03-26)
### Chores
* testing deploy ([#341](https://github.com/ceccopierangiolieugenio/pyTermTk/issues/341)) ([3668ae3](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/3668ae3c226f5aa316b8b769829f499f9b3a007a))
## [0.41.2-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.41.1-a.0...pyTermTk-v0.41.2-a.0) (2025-03-26)
### Chores
* testing deploy ([#338](https://github.com/ceccopierangiolieugenio/pyTermTk/issues/338)) ([4dc5d73](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/4dc5d733eefd9377dfd90dc0927941f46465a62f))
## [0.41.1-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.41.0-a.0...pyTermTk-v0.41.1-a.0) (2025-03-26)
### Chores
* testing release 01 ([#336](https://github.com/ceccopierangiolieugenio/pyTermTk/issues/336)) ([61b7b9c](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/61b7b9c05f9c102bdae52137fdcc2aa236fc8391))
## [0.41.0-a.0](https://github.com/ceccopierangiolieugenio/pyTermTk/compare/pyTermTk-v0.40.0-a.0...pyTermTk-v0.41.0-a.0) (2025-03-26)
### Fixes
* [#326](https://github.com/ceccopierangiolieugenio/pyTermTk/issues/326) crash adding row in the TTkTableModelList ([#327](https://github.com/ceccopierangiolieugenio/pyTermTk/issues/327)) ([b0feaa1](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/b0feaa139ee8fb19d475e1cf267ff7b6c182dc72))
### Features
* added find in the text edit ([#320](https://github.com/ceccopierangiolieugenio/pyTermTk/issues/320)) ([d809d0b](https://github.com/ceccopierangiolieugenio/pyTermTk/commit/d809d0bcca544e42e3bb1b89f55481bb646c1a90))

14
TermTk/__init__.py

@ -1,14 +0,0 @@
version:str = "0.41.11-a.0"
from .TTkCore import *
from .TTkTheme import *
from .TTkGui import *
from .TTkWidgets import *
from .TTkTypes import *
from .TTkLayouts import *
from .TTkTestWidgets import *
from .TTkAbstract import *
from .TTkUiTools import *
from .TTkCrossTools import *
TTkCfg.theme = TTkTheme()

16
apps/dumbPaintTool/app/__init__.py

@ -1,16 +0,0 @@
from .main import *
from .maintemplate import *
from .toolspanel import *
from .paintarea import *
from .painttoolkit import *
from .textarea import *
from .palette import *
from .layersctrl import *
from .canvaslayer import *
from .about import *
from .glbls import *
from .const import *
from .filters import *
from .importimage import *
from .exportarea import *
from .state import *

2
apps/dumbPaintTool/__init__.py → apps/dumbPaintTool/dumbPaintTool/__init__.py

@ -20,6 +20,8 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
__version__:str = "0.41.11-a.4"
from .app import main
if __name__ == "__main__":

0
apps/dumbPaintTool/__main__.py → apps/dumbPaintTool/dumbPaintTool/__main__.py

38
apps/dumbPaintTool/dumbPaintTool/app/__init__.py

@ -0,0 +1,38 @@
# MIT License
#
# Copyright (c) 2024 Eugenio Parodi <ceccopierangiolieugenio AT googlemail DOT com>
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
from .main import *
from .maintemplate import *
from .toolspanel import *
from .paintarea import *
from .painttoolkit import *
from .textarea import *
from .palette import *
from .layersctrl import *
from .canvaslayer import *
from .about import *
from .glbls import *
from .const import *
from .filters import *
from .importimage import *
from .exportarea import *
from .state import *

5
apps/dumbPaintTool/app/about.py → apps/dumbPaintTool/dumbPaintTool/app/about.py

@ -23,6 +23,7 @@
__all__ = ['About']
import TermTk as ttk
from .. import __version__
_DPT_image = ttk.TTkUtil.base64_deflate_2_obj(
"eJydWDtuJDcQdeBIuaNNdAKhi78mwTs4M2BgYwNOlPkAo10FC3sAK7C0M1jJAjacC2y+R9FJXFVksYtU9wiwRA40XcXm5716VdTux/tffvqBf379Gf949366vsSfd+9t" +
@ -50,7 +51,7 @@ class About(ttk.TTkWindow):
self.resize(65+2,12+4)
self.layout().addWidgets([
ttk.TTkLabel(text=_DPT_image),
ttk.TTkLabel(pos=(38,7), text=ttk.TTkString(f" Version: {ttk.TTkCfg.version}", ttk.TTkColor.fg('#AAAAFF'))),
ttk.TTkLabel(pos=(38,7), text=ttk.TTkString(f" Version: {__version__}", ttk.TTkColor.fg('#AAAAFF'))),
ttk.TTkLabel(pos=(38,9), text=ttk.TTkString("Powered By, Eugenio Parodi",ttk.TTkColor.fg("#FF00FF"))),
ttk.TTkLabel(pos=(13,11),text=ttk.TTkString("https://github.com/ceccopierangiolieugenio/pyTermTk", ttk.TTkColor.fg('#44FFFF')))
ttk.TTkLabel(pos=(13,11),text=ttk.TTkString("https://github.com/ceccopierangiolieugenio/pyTermTk", ttk.TTkColor.fg('#44FFFF', link="https://github.com/ceccopierangiolieugenio/pyTermTk")))
])

0
apps/dumbPaintTool/app/canvaslayer.py → apps/dumbPaintTool/dumbPaintTool/app/canvaslayer.py

5
apps/dumbPaintTool/app/cfg.py → apps/dumbPaintTool/dumbPaintTool/app/cfg.py

@ -22,9 +22,10 @@
import os
from .. import __version__
class DPTCfg:
version="__VERSION__"
name="__NAME__"
version=__version__
name="dumbPaintTool"
cfgVersion = '1.0'
pathCfg="."
options={}

0
apps/dumbPaintTool/app/const.py → apps/dumbPaintTool/dumbPaintTool/app/const.py

0
apps/dumbPaintTool/app/exportarea.py → apps/dumbPaintTool/dumbPaintTool/app/exportarea.py

0
apps/dumbPaintTool/app/filters/__init__.py → apps/dumbPaintTool/dumbPaintTool/app/filters/__init__.py

0
apps/dumbPaintTool/app/filters/brightness_contrast.py → apps/dumbPaintTool/dumbPaintTool/app/filters/brightness_contrast.py

0
apps/dumbPaintTool/app/filters/hue_chroma_lightness.py → apps/dumbPaintTool/dumbPaintTool/app/filters/hue_chroma_lightness.py

0
apps/dumbPaintTool/app/glbls.py → apps/dumbPaintTool/dumbPaintTool/app/glbls.py

0
apps/dumbPaintTool/app/importimage.py → apps/dumbPaintTool/dumbPaintTool/app/importimage.py

0
apps/dumbPaintTool/app/layersctrl.py → apps/dumbPaintTool/dumbPaintTool/app/layersctrl.py

0
apps/dumbPaintTool/app/main.py → apps/dumbPaintTool/dumbPaintTool/app/main.py

0
apps/dumbPaintTool/app/maintemplate.py → apps/dumbPaintTool/dumbPaintTool/app/maintemplate.py

0
apps/dumbPaintTool/app/paintarea.py → apps/dumbPaintTool/dumbPaintTool/app/paintarea.py

0
apps/dumbPaintTool/app/painttoolkit.py → apps/dumbPaintTool/dumbPaintTool/app/painttoolkit.py

0
apps/dumbPaintTool/app/palette.py → apps/dumbPaintTool/dumbPaintTool/app/palette.py

0
apps/dumbPaintTool/app/state/__init__.py → apps/dumbPaintTool/dumbPaintTool/app/state/__init__.py

0
apps/dumbPaintTool/app/state/brush.py → apps/dumbPaintTool/dumbPaintTool/app/state/brush.py

0
apps/dumbPaintTool/app/state/layers.py → apps/dumbPaintTool/dumbPaintTool/app/state/layers.py

0
apps/dumbPaintTool/app/textarea.py → apps/dumbPaintTool/dumbPaintTool/app/textarea.py

0
apps/dumbPaintTool/app/toolspanel.py → apps/dumbPaintTool/dumbPaintTool/app/toolspanel.py

0
apps/dumbPaintTool/tui/paintToolKit.tui.json → apps/dumbPaintTool/dumbPaintTool/tui/paintToolKit.tui.json

0
apps/dumbPaintTool/tui/quickImport.tui.json → apps/dumbPaintTool/dumbPaintTool/tui/quickImport.tui.json

0
apps/dumbPaintTool/tui/tools.tui.json → apps/dumbPaintTool/dumbPaintTool/tui/tools.tui.json

0
apps/dumbPaintTool/web.ttk.package.json → apps/dumbPaintTool/dumbPaintTool/web.ttk.package.json

58
apps/dumbPaintTool/pyproject.toml

@ -0,0 +1,58 @@
[build-system]
requires = ["setuptools>=45", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "dumbPaintTool"
dynamic = ["version", "readme"]
description = "the Dumb Paint Tool is a Terminal ASCII Photoshop"
authors = [
{name = "Eugenio Parodi", email = "ceccopierangiolieugenio@googlemail.com"},
]
requires-python = ">=3.9"
dependencies = [
'pyTermTk >= 0.41.11-a.1',
'pyperclip',
'Pillow',
]
classifiers = [
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Development Status :: 3 - Alpha",
"Environment :: Console",
"Intended Audience :: Education",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Topic :: Terminals",
"Topic :: Text Editors :: Text Processing",
"Topic :: Multimedia :: Graphics",
"Topic :: Multimedia :: Graphics :: Editors",
"Topic :: Multimedia :: Graphics :: Editors :: Raster-Based",
"Topic :: Multimedia :: Graphics :: Graphics Conversion",
"Topic :: Software Development :: User Interfaces",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Software Development :: Libraries :: Application Frameworks",
]
[project.urls]
Homepage = "https://github.com/ceccopierangiolieugenio/pyTermTk/tree/main/apps/dumbPaintTool"
[project.scripts]
dumbPaintTool = "dumbPaintTool:main"
[tool.setuptools]
packages = [
"dumbPaintTool",
"dumbPaintTool.app",
"dumbPaintTool.app.filters",
"dumbPaintTool.app.state"
]
[tool.setuptools.package-data]
dumbPaintTool = ["tui/*"]
[tool.setuptools.dynamic]
version = {attr = "dumbPaintTool.__version__"}
readme = {file = ["README.md", "CHANGELOG.md"]}

30
apps/ttkDesigner.py

@ -1,30 +0,0 @@
#!/usr/bin/env python3
# MIT License
#
# Copyright (c) 2023 Eugenio Parodi <ceccopierangiolieugenio AT googlemail DOT com>
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
import sys,os
sys.path.append(os.path.join(sys.path[0],'..'))
from ttkDesigner.app import main
if __name__ == '__main__':
main()

50
apps/ttkDesigner/pyproject.toml

@ -0,0 +1,50 @@
[build-system]
requires = ["setuptools>=45", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "ttkDesigner"
dynamic = ["version", "readme"]
authors = [
{name = "Eugenio Parodi", email = "ceccopierangiolieugenio@googlemail.com"},
]
description = "ttkDesigner is a terminal user interface designer for pyTermTk applications"
requires-python = ">=3.9"
license = {text = "MIT"}
classifiers = [
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Development Status :: 3 - Alpha",
"Environment :: Console",
"Intended Audience :: Education",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Topic :: Terminals",
"Topic :: Text Editors :: Text Processing",
"Topic :: Software Development :: User Interfaces",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Software Development :: Libraries :: Application Frameworks",
]
dependencies = [
'pyTermTk>=0.41.11-a.0',
'pyperclip',
'Pillow',
]
[project.urls]
Homepage = "https://github.com/ceccopierangiolieugenio/pyTermTk/tree/main/apps/ttkDesigner"
[project.scripts]
ttkDesigner = "ttkDesigner:main"
[tool.setuptools]
packages = ["ttkDesigner", "ttkDesigner.app", "ttkDesigner.app.superobj"]
[tool.setuptools.package-data]
ttkDesigner = ["tui/*"]
[tool.setuptools.dynamic]
version = {attr = "ttkDesigner.__version__"}
readme = {file = ["README.md", "CHANGELOG.md"]}

2
apps/ttkDesigner/__init__.py → apps/ttkDesigner/ttkDesigner/__init__.py

@ -20,6 +20,8 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
__version__:str = "0.41.113-a.12"
from .app import *
if __name__ == "__main__":

0
apps/ttkDesigner/__main__.py → apps/ttkDesigner/ttkDesigner/__main__.py

1
apps/ttkDesigner/app/__init__.py → apps/ttkDesigner/ttkDesigner/app/__init__.py

@ -1,4 +1,3 @@
# MIT License
#
# Copyright (c) 2023 Eugenio Parodi <ceccopierangiolieugenio AT googlemail DOT com>

5
apps/ttkDesigner/app/about.py → apps/ttkDesigner/ttkDesigner/app/about.py

@ -43,7 +43,6 @@ class About(TTkAbout):
__slots__=('_image')
def __init__(self, *args, **kwargs):
TTkAbout.__init__(self, *args, **kwargs)
self.setTitle('[PierCecco Cecco] Eugenio Parodi proudly presents...')
self.resize(56,15)
@ -51,8 +50,10 @@ class About(TTkAbout):
c = [0xFF,0xFF,0xFF]
for y, line in enumerate(About.designerTxt):
canvas.drawText(pos=(13,3+y),text=line)
for i,line in enumerate(TTkAbout._peppered_string.split('\n')):
canvas.drawTTkString(pos=(1,3+i), text=line)
canvas.drawText(pos=(20, 9),text=f" Version: {TTkDesignerCfg.version}", color=TTkColor.fg('#AAAAFF'))
canvas.drawText(pos=(14,11),text=f"Powered By, pyTermTk")
canvas.drawText(pos=( 2,13),text=f"https://github.com/ceccopierangiolieugenio/pyTermTk", color=TTkColor.fg('#44FFFF'))
canvas.drawText(pos=( 2,13),text=f"https://github.com/ceccopierangiolieugenio/pyTermTk", color=TTkColor.fg('#44FFFF', link="https://github.com/ceccopierangiolieugenio/pyTermTk"))
TTkWindow.paintEvent(self, canvas)

5
apps/ttkDesigner/app/cfg.py → apps/ttkDesigner/ttkDesigner/app/cfg.py

@ -25,9 +25,10 @@
import os
# import yaml
from .. import __version__
class TTkDesignerCfg:
version="__VERSION__"
name="__NAME__"
version=__version__
name="ttkDesigner"
cfgVersion = '1.0'
pathCfg="."
options={}

0
apps/ttkDesigner/app/designer.py → apps/ttkDesigner/ttkDesigner/app/designer.py

0
apps/ttkDesigner/app/main.py → apps/ttkDesigner/ttkDesigner/app/main.py

0
apps/ttkDesigner/app/menuBarEditor.py → apps/ttkDesigner/ttkDesigner/app/menuBarEditor.py

0
apps/ttkDesigner/app/notepad.py → apps/ttkDesigner/ttkDesigner/app/notepad.py

0
apps/ttkDesigner/app/propertyeditor.py → apps/ttkDesigner/ttkDesigner/app/propertyeditor.py

0
apps/ttkDesigner/app/quickexport.py → apps/ttkDesigner/ttkDesigner/app/quickexport.py

0
apps/ttkDesigner/app/signalsloteditor.py → apps/ttkDesigner/ttkDesigner/app/signalsloteditor.py

0
apps/ttkDesigner/app/superobj/__init__.py → apps/ttkDesigner/ttkDesigner/app/superobj/__init__.py

0
apps/ttkDesigner/app/superobj/supercontrol.py → apps/ttkDesigner/ttkDesigner/app/superobj/supercontrol.py

0
apps/ttkDesigner/app/superobj/superlayout.py → apps/ttkDesigner/ttkDesigner/app/superobj/superlayout.py

0
apps/ttkDesigner/app/superobj/superlayoutgrid.py → apps/ttkDesigner/ttkDesigner/app/superobj/superlayoutgrid.py

0
apps/ttkDesigner/app/superobj/superlayouthbox.py → apps/ttkDesigner/ttkDesigner/app/superobj/superlayouthbox.py

0
apps/ttkDesigner/app/superobj/superlayoutvbox.py → apps/ttkDesigner/ttkDesigner/app/superobj/superlayoutvbox.py

0
apps/ttkDesigner/app/superobj/superobj.py → apps/ttkDesigner/ttkDesigner/app/superobj/superobj.py

0
apps/ttkDesigner/app/superobj/superwidget.py → apps/ttkDesigner/ttkDesigner/app/superobj/superwidget.py

0
apps/ttkDesigner/app/superobj/superwidgetabstractscrollarea.py → apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetabstractscrollarea.py

0
apps/ttkDesigner/app/superobj/superwidgetcontainer.py → apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetcontainer.py

0
apps/ttkDesigner/app/superobj/superwidgetframe.py → apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetframe.py

0
apps/ttkDesigner/app/superobj/superwidgetlist.py → apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetlist.py

0
apps/ttkDesigner/app/superobj/superwidgetmenubutton.py → apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetmenubutton.py

0
apps/ttkDesigner/app/superobj/superwidgetradiobutton.py → apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetradiobutton.py

0
apps/ttkDesigner/app/superobj/superwidgetsplitter.py → apps/ttkDesigner/ttkDesigner/app/superobj/superwidgetsplitter.py

0
apps/ttkDesigner/app/superobj/superwidgettextedit.py → apps/ttkDesigner/ttkDesigner/app/superobj/superwidgettextedit.py

0
apps/ttkDesigner/app/treeinspector.py → apps/ttkDesigner/ttkDesigner/app/treeinspector.py

0
apps/ttkDesigner/app/widgetbox.py → apps/ttkDesigner/ttkDesigner/app/widgetbox.py

0
apps/ttkDesigner/app/windoweditor.py → apps/ttkDesigner/ttkDesigner/app/windoweditor.py

0
apps/ttkDesigner/tui/menuBarEditor.tui.json → apps/ttkDesigner/ttkDesigner/tui/menuBarEditor.tui.json

0
apps/ttkDesigner/tui/newWindow.tui.json → apps/ttkDesigner/ttkDesigner/tui/newWindow.tui.json

0
apps/ttkDesigner/tui/quickExport.tui.json → apps/ttkDesigner/ttkDesigner/tui/quickExport.tui.json

0
apps/ttkDesigner/tui/quickImport.tui.json → apps/ttkDesigner/ttkDesigner/tui/quickImport.tui.json

1
libs/pyTermTk/CHANGELOG.md

@ -0,0 +1 @@
../../CHANGELOG.md

1
libs/pyTermTk/README.md

@ -0,0 +1 @@
../../README.md

0
TermTk/TTkAbstract/__init__.py → libs/pyTermTk/TermTk/TTkAbstract/__init__.py

0
TermTk/TTkAbstract/abstractitemmodel.py → libs/pyTermTk/TermTk/TTkAbstract/abstractitemmodel.py

0
TermTk/TTkAbstract/abstractscrollarea.py → libs/pyTermTk/TermTk/TTkAbstract/abstractscrollarea.py

0
TermTk/TTkAbstract/abstractscrollview.py → libs/pyTermTk/TermTk/TTkAbstract/abstractscrollview.py

0
TermTk/TTkAbstract/abstracttablemodel.py → libs/pyTermTk/TermTk/TTkAbstract/abstracttablemodel.py

0
TermTk/TTkCore/TTkTerm/__init__.py → libs/pyTermTk/TermTk/TTkCore/TTkTerm/__init__.py

0
TermTk/TTkCore/TTkTerm/colors.py → libs/pyTermTk/TermTk/TTkCore/TTkTerm/colors.py

0
TermTk/TTkCore/TTkTerm/colors_ansi_map.py → libs/pyTermTk/TermTk/TTkCore/TTkTerm/colors_ansi_map.py

0
TermTk/TTkCore/TTkTerm/input.py → libs/pyTermTk/TermTk/TTkCore/TTkTerm/input.py

0
TermTk/TTkCore/TTkTerm/input_mono.py → libs/pyTermTk/TermTk/TTkCore/TTkTerm/input_mono.py

0
TermTk/TTkCore/TTkTerm/input_thread.py → libs/pyTermTk/TermTk/TTkCore/TTkTerm/input_thread.py

0
TermTk/TTkCore/TTkTerm/inputkey.py → libs/pyTermTk/TermTk/TTkCore/TTkTerm/inputkey.py

0
TermTk/TTkCore/TTkTerm/inputmouse.py → libs/pyTermTk/TermTk/TTkCore/TTkTerm/inputmouse.py

0
TermTk/TTkCore/TTkTerm/term.py → libs/pyTermTk/TermTk/TTkCore/TTkTerm/term.py

0
TermTk/TTkCore/TTkTerm/term_base.py → libs/pyTermTk/TermTk/TTkCore/TTkTerm/term_base.py

0
TermTk/TTkCore/__init__.py → libs/pyTermTk/TermTk/TTkCore/__init__.py

0
TermTk/TTkCore/canvas.py → libs/pyTermTk/TermTk/TTkCore/canvas.py

3
TermTk/TTkCore/cfg.py → libs/pyTermTk/TermTk/TTkCore/cfg.py

@ -23,9 +23,10 @@
__all__ = ['TTkCfg', 'TTkGlbl']
from TermTk.TTkCore.constant import TTkK
from TermTk import __version__
class TTkCfg:
version:str = "0.41.11-a.0"
version:str = __version__
name:str = "pyTermTk"
color_depth: int = TTkK.DEP_24

0
TermTk/TTkCore/color.py → libs/pyTermTk/TermTk/TTkCore/color.py

0
TermTk/TTkCore/constant.py → libs/pyTermTk/TermTk/TTkCore/constant.py

0
TermTk/TTkCore/drivers/__init__.py → libs/pyTermTk/TermTk/TTkCore/drivers/__init__.py

0
TermTk/TTkCore/drivers/pyodide.py → libs/pyTermTk/TermTk/TTkCore/drivers/pyodide.py

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save