Code: Alles auswählen
[05/12/18] Undo/Redo feature & Copy / Cut / Paste & Bugfixes
Code: Alles auswählen
[05/12/18] Undo/Redo feature & Copy / Cut / Paste & Bugfixes
Diese Funktionen wurden noch nicht implementiert. Die Ctrl-Tasten waren mir bisher unbekannt, kann ich aber noch einfügen.DarkSoul hat geschrieben:- Der Cursor blinkt nicht
- Page-Up und Page-Down funktionieren nicht
- Ctrl+A funktioniert nicht
- Ctrl+Z funktioniert nicht
- Markierter Text wird nicht gelöscht, wenn Eingaben erfolgen.
- Einfg-Taste funktionslos (keine Umschaltung auf Überschreibmodus)
- Tab-Taste funktionslos (Entweder Tab machen oder zum nächsten Gadget weiterspringen)
Künstlerische Freiheit Kann mit SelectColor() an das jeweilige Betriebssystem angepasst werden.DarkSoul hat geschrieben:- Die Farbe der Markierung entspricht nicht der Standardfarbe.
Bugs hoffentlich behoben.DarkSoul hat geschrieben:- Wenn man mit Shift- und Pfeiltasten rauf/runter Text markiert und den Anschlag erreicht, wird das Markieren abgebrochen.
- Wenn man per Ende-Taste ans Zeilenende springt und dann schreibt, dann schreibt er am Anfang der Zeile darunter rückwärts(!?!?)
Das muss der Programmierer selber für seine Menüs erledigen. Habe hierfür die Befehle IsUndo()/IsRedo() hinzugefügt.DarkSoul hat geschrieben:- "Redo" sollte im Contextmenü ausgegraut sein, wenn man Undo nicht zuvor verwendet hat.
Code: Alles auswählen
;/ ==========================
;/ = EditExModule.pbi =
;/ ==========================
;/
;/ [ PB V5.7x / All OS ]
;/
;/ Module by Thorsten1867 (11/2018)
;/
[...]
; [05/12/18] Undo/Redo feature & Copy / Cut / Paste & Bugfixes
Verschlimmbessert.Bugs hoffentlich behoben.
Code: Alles auswählen
Procedure.s GetDrawText_(Text.s) ; Text with or without control characters
If Edit()\Visible\CtrlChars
ProcedureReturn Text
Else
Text = RemoveString(Text, #LineBreak$)
Text = RemoveString(Text, #SoftHyphen$)
ProcedureReturn Text
EndIf
EndProcedure
Code: Alles auswählen
If Edit()\Border
Box(0, 0, Edit()\Size\CanvasWidth - 4, Edit()\Size\CanvasHeight - 4, Edit()\Color\Back)
Else
Box(0, 0, Edit()\Size\CanvasWidth, Edit()\Size\CanvasHeight, Edit()\Color\Back)
EndIf
Code: Alles auswählen
#Scroll_Width = 18
Code: Alles auswählen
DrawingMode(#PB_2DDrawing_Default)
If Edit()\Border
Box(0, 0, Edit()\Size\CanvasWidth - 4, Edit()\Size\CanvasHeight - 4, Edit()\Color\Back)
Else
Box(0, 0, Edit()\Size\CanvasWidth, Edit()\Size\CanvasHeight, Edit()\Color\Back)
EndIf
Code: Alles auswählen
[09/12/18] Scroll and drawing routines completely revised & flashing cursor & mouse wheel & Shortcuts added & Bugfixes
Code: Alles auswählen
; Home - Move cursor to start of row
; End - Move cursor to end of row
; Shft-Del - Cut & copy selected text to clipboard
; Shft-Insert - Paste clipboard at cursor position
; Crtl-A - Select all
; Crtl-C - Copy selected text to clipboard
; Crtl-D - Delete selected text
; Crtl-V - Paste clipboard at cursor position
; Crtl-X - Cut & copy selected text to clipboard
; Ctrl-Z - Perform Undo
; Ctrl-End - Move the cursor to the end of the last row
; Ctrl-Down - Move the cursor to the beginning of the next paragraph
; Ctrl-Home - Move the cursor to the beginning of the first row
; Crtl-Insert - Copy selected text to clipboard
; Crtl-Left - Move the cursor to the beginning of the previous word
; Crtl-Minus - Insert at cursor position a 'Soft-Hyphen'
; Crtl-Right - Move the cursor to the beginning of the next word.
; Crtl-Up - Move the cursor to the beginning of the previous paragraph.
Code: Alles auswählen
[11/12/18] Fixed fundamental problem in selection & Bugfixes
Code: Alles auswählen
[12/12/18] Automatic spell checking & Bugfixes