Manipularea actiunilor specifice aplicatiei
Fisierul XML
Sintem aproape gata. Daca ati compilat si rulat kedit in acest punct,
veti vedea ca toate actiunile standard functioneaza foarte bine, dar
nici una dintre cele specifice aplicatiei nu functioneaza. Aceasta deoarece
inca nu am definit unde ar trebui sa fie aceste actiuni. Operatia este
realizata cu un fisier XML specific aplicatiei.
Iata cum arata:
<!DOCTYPE kpartgui>
<kpartgui name="kedit">
<MenuBar>
<Menu name="file"><text>&File</text>
<Action name="file_open_url"/>
<Action name="save_to_url"/>
</Menu>
<Menu name="edit"><text>&Edit</text>
<Action name="insert_file"/>
<Action name="insert_date"/>
<Action name="clean_spaces"/>
</Menu>
</MenuBar>
</kpartgui>
keditui.rc
Acesta va insera elementele "Open URL" si "Save To URL" in meniul
standard "file" si celelalte actiuni in meniul standard "edit". Nici
unul din elementele specifice aplicatiei nu este inserat in bara de unelte.
In ce meniu sau bara de unelte veti insera itemii este o chestiune de
rationament. Daca numele meniului sau barei de unelte este identic cu numele
unui meniu sau bare de unelte standard, atunci elementele vor trece in acel container.
Daca veti da un nume diferit, va fi creat un nou meniu sau o noua bara de unelte, continind
numai itemii dumneavoastra.
Ultimul pas
Acesta este ultimul pas. Am creat actiunile si fisierul XML/rc. Tot ce mai trebuie sa facem
este sa instalam acest fisier. Este nevoie de o ajustare a fisierului
Makefile.am
INCLUDES =
LDFLAGS =
LDADD = -lkspell
bin_PROGRAMS = kedit
kedit_SOURCES = kedit.cpp print.cpp mail.cpp urldlg.cpp optiondialog.cpp
noinst_HEADERS = kedit.h print.h version.h mail.h urldlg.h optiondialog.h
METASOURCES = kedit.moc print.moc mail.moc urldlg.moc optiondialog.moc
SUBDIRS = pixmaps
apps_DATA = KEdit.desktop
appsdir = /Applications
EXTRA_DIST =
rcdir = /kedit
rc_DATA = keditui.rc
messages: rc.cpp
rc.cpp -o /kedit.pot
Makefile.am
Codul nou este scris cu caractere ingrosate. Ce este "rcdir" este de la sine inteles.
Codul rc.cpp este necesar astfel ca fisierul XML este asezat chiar linga aplicatie.
Este un caz special tratat in timpul prepocesarii fisierului Makefile.
Nu am idee cum lucreaza, dar va spun ca este necesar si functioneaza (cumva), asa ca faceti-o.
Nu uitati make install inainte sa-l testati.
|