[CFT] Ascii Flow Editor QT

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
schorsch_76
Beiträge: 2544
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

[CFT] Ascii Flow Editor QT

Beitrag von schorsch_76 » 20.06.2019 17:38:43

Ich habe einen Ascii Flow Editor basierend auf QT geschrieben, da ich wenn ich das brauche nicht immer Internet habe und neuerdings Ascii Flow Infinity will, dass ich mich bei google einlogge...

Über Rückmeldungen würde ich mich freuen

Features:
  • Export und Import von/zu der Zwischenablage
  • Zeichungsteile beliebig hin und her schieben
  • Rechtecke
  • Klassen Diagramme
  • Pfeile
  • Freihand
  • Radiergummi für beliebig große Flächen
  • Text an jeder beliebigen Stelle
  • praktisch unbegrenzter Raum, da die Zeichenfläche beliebig wachsen kann
Lizenz: GPL-3

Das Readme beschreibt wie man es baut.

https://github.com/schorsch1976/AsciiFlowQT

Ein Beispiel:

Code: Alles auswählen

        ASCII Flow Editor QT
        ====================

+------------------------------------------+
|  Features:                               |
+------------------------------------------+
|                                          |
|   Export/Import von/zur Zwischenablage   |
|   Zeichungsteile beliebig verschieben    |
|   Rechtecke                              |
|   Klassendiagramme                       |
|   Pfeile                                 |
|   Freihand                               |
|   Radiergummi                            |
|   Text                                   |
|   beliebig große Zeichenfläche           |
|                                          |
|                                          |
+------------------------------------------+


+------------------------------------------+
|                                          |
|  Lizenz: GPL-3                           |
|                                          |
+------------------------------------------+

+------------------------------------------+
|Beispiele                                 |
+------------------------------------------+
|                             XXX  XX      |
| +--------+   +---------+   XX   XXXX     |
| |Rechteck|   |Klasse   |   XX   X  XXX   |
| +--------+   +---------+    XX  X    X   |
|              |         |    X CLOUD XX   |
|     ^        |         |    X       X    |
|     +-----+  |         |    XX  X   X    |
|   Pfeil      +---------+     XXXXXXXX    |
|                                          |
+------------------------------------------+

Code: Alles auswählen

+----------------------+
|ITool                 |
+----------------------+
|                      |
|OnMousePressed() = 0  |
|                      |
|OnMouseMoved() = 0    |
|                      |
|OnMouseReleased() = 0 |
|                      |
|OnKeyPressed() = 0    |
|                      |
+----------------------+
           ^
           |
           |
     +-----+------------------------------------------------------------------------------+
     ^              ^               ^              ^            ^            ^            ^
     |              |               |              |            |            |            |
     |              |               |              |            |            +            |
+----+------+  +----+------+  +-----+-----+  +----++-----+ +----+-----+ +----------+ +----+-------+
|ToolMove   |  |ToolRect   |  |ToolClass  |  |ToolArrow  | |ToolText  | |ToolErase | |ToolFreehand|
+-----------+  +-----------+  +-----------+  +-----------+ +----------+ +----------+ +------------+
|           |  |           |  |           |  |           | |          | |          | |            |
|           |  |           |  |           |  |           | |          | |          | |            |
|           |  |           |  |           |  |           | |          | |          | |            |
+-----------+  +-----------+  +-----------+  +-----------+ +----------+ +----------+ +------------+


Benutzeravatar
schorsch_76
Beiträge: 2544
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

Re: [CFT] Ascii Flow Editor QT

Beitrag von schorsch_76 » 21.06.2019 16:41:26

Update:
v0.2:
  • vorbereitete Binaries für Debian Buster (amd64) und Windows (x64)
  • Zusätzliches Linien Tool
  • Icons auf den Buttons
https://github.com/schorsch1976/AsciiFlowQT/releases

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: [CFT] Ascii Flow Editor QT

Beitrag von eggy » 21.06.2019 20:23:15

Irgendwas beim Update schiefgegangen? Im qt creator baut die neue Version hier nicht mehr.

Code: Alles auswählen

/usr/bin/ld: CMakeFiles/AsciiFlowQT.dir/ITool.cpp.o: undefined reference to symbol '_ZTVN10__cxxabiv117__class_type_infoE@@CXXABI_1.3'
/usr/bin/ld: //usr/lib/x86_64-linux-gnu/libstdc++.so.6: error adding symbols: DSO missing from command line
clang-7: error: linker command failed with exit code 1 (use -v to see invocation)
Warum nutzt Du für das Projekt eigentlich cmake statt qmake? Ich hab den Eindruck qmake wäre übersichtlicher. Ich würd mich aber gerne eines besseren belehren und überzeugen lassen mich da auch mal einzuarbeiten, bisher fehlt mir noch die Motivation dazu.

Die Version, die ich gestern gezogen hatte, baute problemlos und lief gut, einziger Kritikpunkt: mein wunderhübsches *hust* Versuchs- aehm Kunstwerk war nach dem Import weg. Da wäre ne deutliche Warnung gut, besser noch ne Abfrage "anfügen oder neumachen?".
Ich hatte von der gestern mal spasseshalber nen deb gebaut, auf sid läufts, keine großen Anpassungen nötig. Die Anzahl der Warnungen die lintian wirft sind überschaubar, das Anstrengendste fürs debian-ready wäre wohl die fehlende Manpage zu erstellen.

Benutzeravatar
schorsch_76
Beiträge: 2544
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

Re: [CFT] Ascii Flow Editor QT

Beitrag von schorsch_76 » 21.06.2019 22:06:34

Hallo eggy,

welches Debian nutzt du und wechen gcc? Stretch oder Buster?

Ich nutze CMake praktisch für alles. Es ist auch in der Industrie schon sehr weit verbreitet. Bildverarbeitungs-Libraries bieten es schon einige an, Visual Studio unterstützt es mittlerweile nativ. QT Creator kann es auch nutzen.

EDIT: Ok, clang 7.
gcc baut, clang linkt nicht ... das schau ich mir nochmal an...

Gruß
Georg

Benutzeravatar
schorsch_76
Beiträge: 2544
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

Re: [CFT] Ascii Flow Editor QT

Beitrag von schorsch_76 » 21.06.2019 22:20:14

Ok, clang will mit stdc++ linken. Das hab ich jetzt auf master erledigt. :)

Das mit der Abfrage werde ich morgen oder so machen ... :)

Benutzeravatar
schorsch_76
Beiträge: 2544
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

Re: [CFT] Ascii Flow Editor QT

Beitrag von schorsch_76 » 22.06.2019 06:51:41

@eggy: Abfrage ist jetzt drin :)

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: [CFT] Ascii Flow Editor QT

Beitrag von eggy » 22.06.2019 08:32:21

Vielleicht noch nen kleinen Hinweis darauf, dass Undo dafür nicht funktionieren wird?
Ich fands irgendwie unintuitiv, dass nach dem Import der Undo Button zwar aktiv geschaltet ist - Undo aber nur bis zum leeren Dokument zurückreicht.
Übrigens die Buttons links sind bei mir nicht gleich groß, find ich etwas verwirrend. Die Icons sind optisch sehr schick, allerdings fand ich die erste Fassung mit "nur-Text" übersichtlicher, aber sowas ist ja Geschmackssache. QSettings kennst schon?

Benutzeravatar
schorsch_76
Beiträge: 2544
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

Re: [CFT] Ascii Flow Editor QT

Beitrag von schorsch_76 » 22.06.2019 12:36:18

Ich bin am überlegen ob ich die Button Leisten tauschen soll... Sind ja mehr Werkzeuge als "Dateioperationen"...

QSettings schau ich mir nochmal an.

Benutzeravatar
schorsch_76
Beiträge: 2544
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

Re: [CFT] Ascii Flow Editor QT

Beitrag von schorsch_76 » 22.06.2019 15:10:04

Neuigkeiten:
  • Export to file
  • Import from file
  • Preferences nutzen QSettings: Icon Größe und Button Style
  • Alle Icons gleich groß (in der jeweiligen Leiste)
  • Nach "New" sind auch die Redo/Undo Buttons deaktiviert.
  • Message Box, falls New Daten zerstören würde
@eggy: Danke für den QSettings Tip :)

Benutzeravatar
schorsch_76
Beiträge: 2544
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

Re: [CFT] Ascii Flow Editor QT

Beitrag von schorsch_76 » 22.06.2019 20:31:32

v0.3:
  • Größe ändern von Rechtecken
Jetzt sollte es mindestens die selben Features bieten wie Ascii Flow Infinity (nur offline und ohne Google).

Noch eine man page schreiben und eggy könnte es packetieren :)

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: [CFT] Ascii Flow Editor QT

Beitrag von eggy » 24.06.2019 23:22:27

Nix da, das machst mal schön selber :mrgreen:

Hast ne deb-Kochrezept-pm.

Antworten