HyperLink


Bejelentkezés
E-mail: 
Jelszó: 






Skip Navigation Links
 

A buffer beállításai


ToolsAPI 8. rész

Példaprogram letöltése

6550 bájt

Az előző részben a kijelölt blokkokkal foglalkoztunk. Most azt nézzük meg, hogy hasonlóan a Tools – Editor Options menühöz, miként lehet lekérdezni vagy módosítani a kódszerkesztő beállításait.

A mellékelt példaprogram használatához a BufferOptions.dpk Package állomány tartalmát telepítenie kell.
Delphi 5 feletti verziók használata esetében a Package fordítása hibát okoz, hiányzó unit-ok miatt. A fordításhoz szükséges unit-ok megtalálhatóak a delphiX\Source\ToolsAPI könyvtárban.
A Tools – Editor Options menü tartalmazza a kódszerkesztő alapbeállításait. Amikor betöltünk egy forráskódot, ezek az alapbeállítások lesznek hatással rá. Ameddig a kód a memóriában van, lehetőségünk van minden egyes forráskódhoz külön beállításokat megadni, de ezek nem menthetőek el a kóddal együtt.
Az előző részekben szó volt arról, hogy minden megnyitott forráskód egy külön bufferben helyezkedik el. Ezeknek a buffereknek külön szabályozhatjuk a beállításait, az IOTABufferOptions interfészen keresztül.
Hasonló módon az eddigiekhez, ennek az interfésznek az eléréséhez is készítettünk egy függvényt.
function GetBufferOptions: IOTABufferOptions;
Az interfészt az alábbi úton érhetjük el, az IOTASourceEditor interfészből kiindulva.
Result:=Editor.EditViews[0].Buffer.BufferOptions;
Property-k
AutoIndent
Osztály: IOTABufferOptions
property AutoIndent: Boolean;
Ennek a funkciónak akkor van jelentősége, ha a kódszerkesztőben egy sor végén Enter-t nyomunk. Igaz érték esetén a kurzor a következő üres sor legelső olyan pozíciójára kerül, ahol az előző sor nem fehér karaktert tartalmaz. Hamis érték esetén a kurzor mindig az új sor legelső karakterpozíciójára kerül.
BackspaceUnindents
Osztály: IOTABufferOptions
property BackspaceUnindents: Boolean;
Akkor van jelentősége, amikor a kódszerkesztőben egy sor legelső, nem fehér karakterén állunk és megnyomjuk a BackSpace billentyűt. Igaz érték esetén a kurzor abba az oszlopba kerül, ahol az előző sor legelső nem fehér karaktere található. Hamis érték esetén a BackSpace normálisan működik, azaz csak egyetlen karaktert töröl.
CreateBackupFile
Osztály: IOTABufferOptions
property CreateBackupFile: Boolean;
Igaz érték esetén a szerkesztett forráskód előző állapotáról backup állomány készül. Hamis érték esetén ez a funkció nem működik.
CursorThroughTabs
Osztály: IOTABufferOptions
property CursorThroughTabs: Boolean;
Igaz érték esetén a kurzor egy Tab karakter helyén is bárhová pozícionálható. Hamis érték megadásakor a Tab méretének megfelelően ugrik.
GroupUndo
Osztály: IOTABufferOptions
property GroupUndo: Boolean;
Igaz érték esetén az egymás után végrehajtott, azonos típusú műveletek egyszerre kerülnek visszavonásra.
InsertMode
Osztály: IOTABufferOptions
property InsertMode: Boolean;
Ugyanaz a hatása, mint az INSERT billentyűnek. Igaz érték esetén a kódszerkesztőbe írt szöveg beszúrásra kerül, hamis érték esetén pedig felülírja a már ott lévő kódot.
KeepTrailingBlanks
Osztály: IOTABufferOptions
property KeepTrailingBlanks: Boolean;
Igaz érték esetén, a sor végén lévő fehér karakterek megmaradnak. Ha hamis értéket adunk meg, akkor ezek a karakterek automatikusan törlésre kerülnek.
LeftGutterWidth
Osztály: IOTABufferOptions
property LeftGutterWidth: Integer;
A kódszerkesztő bal oldalán látható egy függőleges szürke sáv. Ide kerülnek a könyvjelzők, töréspontok, stb. Ez a property ennek a szürke sávnak a vastagságát határozza meg pixelekben.
OverwriteBlocks
Osztály: IOTABufferOptions
property OverwriteBlocks: Boolean;
Akkor van jelentősége, amikor kijelölünk egy blokkot, és gépelni kezdünk fölötte. Igaz érték esetén, ilyenkor a kijelölt szöveg felülírásra kerül.
PersistentBlocks
Osztály: IOTABufferOptions
property PersistentBlocks: Boolean;
Azt szabályozza, hogy mi történjen akkor, ha kijelölünk egy blokkot, majd elmozdítjuk a kurzort. Igaz érték esetén a kijelölés megmarad, míg hamis érték esetén megszűnik.
PreserveLineEnds
Osztály: IOTABufferOptions
property PreserveLineEnds: Boolean;
Igaz érték esetén a kódszerkesztő megőrzi a sorvége pozíciókat.
RightMargin
Osztály: IOTABufferOptions
property RightMargin: Integer;
Értéke azt határozza meg, hogy a kódszerkesztő jobb oldalán elhelyezkedő margó hányadik karakteroszlopban jelenjen meg.
ShowSpace
Osztály: IOTABufferOptions
property ShowSpace: Boolean;
Csak Delphi 7-től. Igaz érték esetén a kódszerkesztő megjeleníti a szóközöket is.
ShowTab
Osztály: IOTABufferOptions
property ShowTab: Boolean;
Csak Delphi 7-től. Igaz érték esetén a kódszerkesztő megjeleníti a Tab karaktereket is.
SmartTab
Osztály: IOTABufferOptions
property SmartTab: Boolean;
A Tab billentyű használatára van hatással. Ha hamis értéket adunk meg, akkor a Tab billentyű normál módon működik. Igaz érték esetén a Tab mérete az előző sor szavaihoz igazodik. Mindig a következő szó elejére ugrik.
SyntaxHighlight
Osztály: IOTABufferOptions
property SyntaxHighlight: Boolean;
Igaz érték esetén a szintaxis kiemelő be van kapcsolva. Hamis érték esetén pedig ki van kapcsolva.
TabStops
Osztály: IOTABufferOptions
property TabStops: string;
Lista, amely a Tab Stop pozíciókat határozza meg.
UndoAfterSave
Osztály: IOTABufferOptions
property UndoAfterSave: Boolean;
Alapértelmezés szerint, ha elmentünk valamit a Delphi-ben, akkor az Undo opció megszűnik. Ha ezt a property-t igazra állítjuk, akkor az Undo lehetőség a kód elmentése után is megmarad.
UndoLimit
Osztály: IOTABufferOptions
property UndoLimit: Integer;
Az Undo művelethez felhasználható memória maximális méretét határozza meg.
UseTabCharacter
Osztály: IOTABufferOptions
property UseTabCharacter: Boolean;
A Tab karakterre van hatással. Igaz érték esetén, ha lenyomjuk a Tab billentyűt, akkor az a forráskódba, Tab karakterként kerül bejegyzésre. Ha ezt az értéket hamisra állítjuk, akkor a Tab karakterek helyett szóköz kerül a kódba.

Könyv
Ez a cikk megtalálható ebben a könyvben: Delphi Software Offline 2003 évkönyv 345. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2010 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |