Alkalmazás párbeszédablakok

Ha a szabványos párbeszédablak túl egyszerű a bedolgozóhoz, akkor saját párbeszédablakot építhet össze a Párbeszédablak osztály segítségével. Korábban láthattuk, hogy a readme eszköz hogyan biztosít egy "Readme böngésző megnyitása" tevékenységet egy tevékenységkészletben. Ez a tevékenységkészlet megjelenik a munkaterület-eszköztárok és a Ablak->Readme fájlszerkesztő menüben.  

Most már készen állunk a tevékenység megvalósításának megtekintésére a readme eszköz WindowActionDelegate elemében.

   public void run(IAction action) {
      SectionsDialog dialog = new SectionsDialog(window.getShell(),
         ReadmeModelFactory.getInstance().getSections(selection));
      dialog.open();
   }

A jelenlegi ablaktevékenység-átruházása az aktuális kiválasztást használja az erőforrásnavigátor-nézetben (a .readme fájl) a readme fájl szakaszok listájának megjelenítéséhez. Ez a lista és a munkaterület ablak parancsértelmezője átadódik a SectionsDialog párbeszédablaknak. 

Amikor a felhasználó kiválasztja a tevékenységet, a SectionsDialog megnyitásra kerül.

A SectionsDialog úgy kerül megvalósításra a readme eszköz bedolgozóban, hogy létrehozásra kerül egy alosztály a Párbeszédablak osztályhoz az org.eclipse.jface.dialogs csomagban.

A Párbeszédablak osztály alap támogatást biztosít a párbeszédablak parancsértelmező ablak létrehozásához, az általános párbeszédablak-gombok létrehozásához és a párbeszédablak elindításához. Az alosztályok felelősek a párbeszédablak tartalmának kezeléséért:

A SectionsDialog nem valósítja meg az okButtonPressed metódust. A Párbeszédablak osztálytól örökli a "do-nothing" megvalósítást. Ez nem jellemző. A párbeszédablak általában feldolgozást hajt végre a párbeszédablak-gomb megnyomására válaszul.

A párbeszédablakok olyan egyszerűek vagy összetettek lehetnek, amennyire szükséges. Párbeszédablak megvalósításakor a párbeszédablak-kód nagy részével foglalkozni kell az SWT vezérlők létrehozásakor, amelyek a tartalomterületet ábrázolják és kezelik a szükséges eseményeket, miközben a párbeszédablak fent van. Ha a felhasználó megnyomja a gombot, akkor a párbeszédablak le tudja kérdezni a különböző vezérlők (vagy megjelenítők) állapotát, amelyek a párbeszédablak számára megadják, hogy mit kell tenni.