Français
Source/ Codesnippets

Editor Programmieren

 

Source wurde am 15.07.2007 aus qui MMJ-Quellcodesammlung (Dietmar Horn) dans qui Babyklappe sur XProfan.Com abgelegt:
Editor programmieren

proc editor

    declare _ende%
    declare _dlg%
    declare SCHRIFT%
    declare Groesse%
    declare Fett%
    declare kursiv%
    declare unterstrichen%
    declare CUT%
    declare COPY%
    declare INS%
    declare Text%
    declare anz!, f%, u%, k%, font$, g!, x%, fichier$, text$, edit#
    def @buttonstate(1) @sendmessage(@%(1),$0F2,0,0)
    def @changed(1) @sendmessage(@%(1),$0B8,0,0)

    proc zeigeschrift

        let font$ = @GetText $(schrift%)
        let g! = @Mul(@Val(@GetText $(groesse%)),anz!)
        UseFont font$,g!,0,f%,k%,u%
        @sendmessage(text%,$30,%font,1)   wm_SetFont

    endproc

    proc Datei_Laden

        let fichier$ = @LoadFile$(Dossier magasin:,*.txt)

        si (fichier$ <> )

            usecursor 2

            Si (@FileSize(Dossier$) > 32000)

                @MessageBox(Dossier ist trop grand pour den Editor!,Hinweis:,48)

            D'autre

                Faible Éditer#,@FileSize(Dossier$) + 2000
                ReadText Éditer#,Dossier$

                Si @SendMessage(text%,$000C,0,Éditer#)

                    Titre de la fenêtre Mini-Ed 1.0 [ + Dossier$ + ]

                D'autre

                    @MessageBox(Dossier ist trop grand pour den Editor!,Hinweis:,48)

                EndIf

                Dispose Éditer#

            EndIf

            usecursor 0

        endif

    ENDPROC

    Proc Speichere

        Paramètres dname$
        Déclarer Nr%, Max%
        assign #1,dname$
        rewrite #1
        Laisser Nr% = 0
        Laisser Max% = @GetLineCount(Text%)

        Tandis que Nr% <= Max%

            Imprimer #1,@GetLine$(Text%,Nr%)
            Inc Nr%

        Endwhile

        close #1

    ENDPROC

    Proc Datei_SpeichernAls

        let fichier$ = @SaveFile$(Dossier Sauver:,Dossier$)

        si (Dossier$ <> )

            Speichere Dossier$
            Titre de la fenêtre Mini-Ed 1.0 [ + Dossier$ + ]

        endif

    ENDPROC

    Proc Datei_Speichern

        Si (Dossier$ <> )

            Speichere Dossier$

        D'autre

            Datei_SpeichernAls

        EndIf

    ENDPROC

    Proc Geändert

        Si @Changed(Text%)

            Si @Equ(@MessageBox(qui Dossier wurde geändert. Soll vous gespeichert volonté?,

                Dossier$,36),6)
                Datei_Speichern

            EndIf

        EndIf

    ENDPROC

    let _dlg% = %Hwnd
    let SCHRIFT%=@create(choicebox,_dlg%,,0,0,136,120)
    let Groesse%=@create(choicebox,_dlg%,,136,0,40,120)
    let Fett%=@create(button,_dlg%,f,176,0,24,24)
    let kursiv%=@create(button,_dlg%,k,200,0,24,24)
    let unterstrichen%=@create(button,_dlg%,u,224,0,24,24)
    let Text%=@create(multiedit,_dlg%,,0,24,548,364)
    let f% = 0
    let k% = 0
    let u% = 0
    let anz! = 1.5
    let Dossier$ =
    clearlist
    addfonts
    @movelisttochoice(schrift%)
    @sendmessage(schrift%,$14E,2,0)
    @addchoice(groesse%,10)
    @addchoice(groesse%,12)
    @addchoice(groesse%,14)
    @addchoice(groesse%,16)
    @addchoice(groesse%,18)
    @addchoice(groesse%,22)
    @addchoice(groesse%,26)
    @sendmessage(groesse%,$14E,2,0)
    zeigeschrift
    @SetFocus(Text%)
    let _ende% = 0

    whilenot _ende%

        waitinput

        si %clé = 2

            geändert
            let _ende% = 1

        elseif %clé = 4

            Si ((%WinRight - %WinLeft) > 220) and ((%WinBottom - %WinTop) >120)

                SetWindowPos Text% = 0,24 - ((%WinRight - %WinLeft) - 6),
                ((%WinBottom - %WinTop) - 88)

            endif

        elseif @menuitem(100)

            geändert
            SetText text%,
            Laisser Dossier$=
            Titre de la fenêtre Mini-Ed 1.5
            @SetFocus(Text%)

        elseif @menuitem(101)

            geändert
            Datei_Laden
            @SetFocus(Text%)

        elseif @menuitem(102)

            Datei_Speichern
            @SetFocus(Text%)

        elseif @menuitem(103)

            Datei_SpeichernAls
            @SetFocus(Text%)

        elseif @menuitem(-3808)

            shownormal
            SetWindowPos Text% = 0,24 - ((%WinRight - %WinLeft) - 6),
            ((%WinBottom - %WinTop) - 88)

        elseif @menuitem(-4064)

            showmin

        elseif @menuitem(-4048)

            showmax
            SetWindowPos Text% = 0,24 - ((%WinRight - %WinLeft) - 6),
            ((%WinBottom - %WinTop) - 88)

        elseif @menuitem(109) or @menuitem(-4000)

            Geändert
            Laisser _ende% = 1

        elseif @menuitem(130)

            @messagebox(programmiert avec XProfan,RGH-MINITEXT,0)

        elseif @menuitem(110)

            @sendmessage(text%,$304,0,0)   wm_Undo

        elseif @menuitem(111)

            @sendmessage(text%,$300,0,0)   wm_Cut

        elseif @menuitem(112)

            @sendmessage(text%,$301,0,0)   wm_Copy

        elseif @menuitem(113)

            @sendmessage(text%,$302,0,0)   wm_Insert

        elseif @menuitem(114)

            @sendmessage(text%,$303,0,0)   wm_Clear

        Elseif @Menuitem(200)

            let anz! = 1
            checkmenu 200,1
            checkmenu 201,0
            checkmenu 202,0
            zeigeschrift

        Elseif @Menuitem(201)

            let anz! = 1.5
            checkmenu 200,0
            checkmenu 201,1
            checkmenu 202,0
            zeigeschrift

        Elseif @Menuitem(202)

            let anz! = 2
            checkmenu 200,0
            checkmenu 201,0
            checkmenu 202,1
            zeigeschrift

        elseif @getfocus(schrift%)

            zeigeschrift

        elseif @getfocus(groesse%)

            zeigeschrift

        elseif @getfocus(fett%)

            si @buttonstate(%getfocus) <> 108

                let f% = 1 - f%

                si f%

                    settext %getfocus,F

                d'autre

                    settext %getfocus,f

                endif

                zeigeschrift

            endif

        elseif @getfocus(kursiv%)

            si @buttonstate(%getfocus) <> 108

                let k% = 1 - k%

                si k%

                    settext %getfocus,K

                d'autre

                    settext %getfocus,k

                endif

                zeigeschrift

            endif

        elseif @getfocus(unterstrichen%)

            si @buttonstate(%getfocus) <> 108

                let u% = 1 - u%

                si u%

                    settext %getfocus,U

                d'autre

                    settext %getfocus,u

                endif

                zeigeschrift

            endif

        endif

    endwhile

    @destroywindow(_dlg%)

endproc

HAUPTPROGRAMM
=============
set(TrueColor,0)
style de fenêtre $11F
windowtitle Mini-Ed 1.0
window 20,20-555,452
cls @rgb(23,23,23)
PopUp &Dossier
AppendMenu 100,&récente
AppendMenu 101,&magasin
AppendMenu 102,&Sauver
AppendMenu 103,Sauver &comme
Séparateur
AppendMenu 109,&Ende
PopUp &Travailler
AppendMenu 110,&Rückgänging 	vieux+BS
Séparateur
AppendMenu 111,&Ausschneiden 	Shift+Entf
AppendMenu 112,&Kopieren 	Strg+Einfg
AppendMenu 113,&insérer 	Shift+Einfg
AppendMenu 114,&Effacer 	Strg+Entf
PopUp &Anzeige
AppendMenu 200,&100 %
AppendMenu 201,1&50 %
AppendMenu 202,&200 %
AppendMenuBar 130,a&Info
CheckMenu 201,1
editor
end
 
15.07.2007  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

1.650 Views

Untitledvor 0 min.
Rockford01.08.2024
Sven Bader22.02.2023
PETER195618.07.2018
Peter Max Müller18.05.2018
plus...

Themeninformationen

cet Thema hat 1 participant:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie