º¹¼ö ÆäÀÌÁö ¸¶¹ý»ç

¸¶¹ý»ç°¡ º¹ÀâÇÑ Å¸½ºÅ©¸¦ ±¸ÇöÇÏ´Â °æ¿ì, µÎ ÆäÀÌÁö ÀÌ»óÀ» »ç¿ëÇÏ¿© »ç¿ëÀڷκÎÅÍ Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.

ÀϹÝÀûÀ¸·Î ±¸Çö ÆÐÅÏÀº ´ÜÀÏ ÆäÀÌÁö ¸¶¹ý»çÀÇ °æ¿ì¿Í µ¿ÀÏÇÕ´Ï´Ù.

¸¶¹ý»ç¸¦ ¼³°èÇÒ ¶§ ¸ðµç Çʼö Á¤º¸´Â °¡´ÉÇÑ Ã¹ ¹øÂ° ÆäÀÌÁö¿¡ ¹èÄ¡ÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ÀÌ·¸°Ô Çϸé Ÿ½ºÅ©¸¦ ¿Ï·áÇϱâ À§ÇØ Àüü ÆäÀÌÁö¸¦ ¼øÈ¸ÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù.  ¼±ÅÃÀûÀÎ Á¤º¸´Â ´ÙÀ½ ÆäÀÌÁö¿¡ Æ÷ÇÔ½Ãų ¼ö ÀÖ½À´Ï´Ù.

ÆäÀÌÁö¸¦ ¿Ï·áÇϱâ Àü¿¡ »ç¿ëÀڷκÎÅÍ ÀÔ·ÂÀÌ ÇÊ¿äÇÑ °æ¿ì, setPageComplete(false)¸¦ »ç¿ëÇÏ¿© ÆäÀÌÁö°¡ ¿Ï·áµÇÁö ¾Ê¾ÒÀ½À» Ç¥½ÃÇϽʽÿÀ. ÆäÀÌÁö°¡ Á¦¾î·ÎºÎÅÍ À̺¥Æ®¸¦ ¼ö½ÅÇÏ¸é ÆäÀÌÁö´Â ±× ¿Ï·á ¿©ºÎ¸¦ ´Ù½Ã È®ÀÎÇÕ´Ï´Ù. Çʼö ÀÔ·ÂÀÌ Á¦°øµÇ¸é setPageComplete(true)°¡ ¿Ï·á¸¦ Ç¥½ÃÇÕ´Ï´Ù.

Wizard Ŭ·¡½º´Â ÆäÀÌÁö ¿Ï·á »óÅ¿¡ µû¶ó ¿Ï·á ´ÜÃ߸¦ »ç¿ë °¡´ÉÇÏ°Ô Çϰųª »ç¿ë ºÒ°¡´ÉÇÏ°Ô ÇÏ´Â µ¥ ÇÊ¿äÇÑ ³í¸®¸¦ ó¸®ÇÕ´Ï´Ù.  ¿Ï·á ´ÜÃß´Â °¢ ÆäÀÌÁöÀÇ ¿Ï·á »óŰ¡ 'true'·Î ¼³Á¤µÈ °æ¿ì¿¡¸¸ ¸¶¹ý»ç¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

À¯È¿¼º °ËÁõ ¹× ÆäÀÌÁö Á¦¾î

WizardNewFileCreationPage ¹× CreateReadme1 Ŭ·¡½º´Â ÆäÀÌÁö À¯È¿¼º °ËÁõÀ» ±¸ÇöÇϱâ À§ÇÑ °øÅë ÆÐÅÏÀ» Ç¥½ÃÇÕ´Ï´Ù.

WizardNewFileCreationPage´Â ÆäÀÌÁöÀÇ À¯È¿¼ºÀ» °ËÁõÇÏ´Â ¸ðµç SWT À̺¥Æ®¿¡ ´ëÇÑ °øÅë À̺¥Æ® Çڵ鷯¸¦ Á¤ÀÇÇÕ´Ï´Ù. À̰ÍÀº ÆäÀÌÁö°¡ ¸®½º³Ê¸¦ Ãß°¡ÇÑ À§ÁöÆ®(widget)·ÎºÎÅÍ À̺¥Æ®°¡ ¼ö½ÅµÉ ¶§¸¶´Ù ÆäÀÌÁöÀÇ À¯È¿¼ºÀÌ °ËÁõµÊÀ» ÀǹÌÇÕ´Ï´Ù.

   public void handleEvent(Event event) {
      setPageComplete(validatePage());
   }

ReadmeCreationPage¿¡¼­ Á¦¾î¸¦ ÀÛ¼ºÇϸé validatePage¸¦ »ç¿ëÇÏ¿© ÆäÀÌÁö »óŸ¦ ¼³Á¤ÇÕ´Ï´Ù.

public void createControl(Composite parent) {
      super.createControl(parent);
      // create controls, add listeners, and layout the page
      ...
      // sample section generation checkboxes
      sectionCheckbox = new Button(group,SWT.CHECK);
      sectionCheckbox.setText(MessageUtil.getString("Generate_sample_section_titles"));
      sectionCheckbox.setSelection(true);
      sectionCheckbox.addListener(SWT.Selection,this);

      subsectionCheckbox = new Button(group,SWT.CHECK);
      subsectionCheckbox.setText(MessageUtil.getString("Generate_sample_subsection_titles"));
      subsectionCheckbox.setSelection(true);
      subsectionCheckbox.addListener(SWT.Selection,this);
      ...
      setPageComplete(validatePage());
   }

ÀÌ ÆÐÅÏÀ» »ç¿ëÇÏ¸é ¸¶¹ý»ç ÆäÀÌÁö°¡ ÆäÀÌÁö À¯È¿¼º °ËÁõ ÄÚµå ¸ðµÎ¸¦ validatePage() ¸Þ¼Òµå Çϳª·Î ÀÔ·ÂÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ÆäÀÌÁö Ãʱ⠻óŸ¦ °áÁ¤ÇÏ°í ±× ÆäÀÌÁöÀÇ À§ÁöÆ®(widget)¿¡¼­ À̺¥Æ®¸¦ ¼ö½ÅÇÏ¸é »óŸ¦ ´Ù½Ã °è»êÇÕ´Ï´Ù.

¼½¼Ç ¼±Åöõ¿¡ ¸®½º³Ê¸¦ Ãß°¡ÇßÀ¸¹Ç·Î ¼±ÅöõÀÌ ¼±ÅûçÇ× À̺¥Æ®¸¦ ¼ö½ÅÇÒ ¶§¸¶´Ù ¿Ã¹Ù¸¥ ÆäÀÌÁö »óŸ¦ ´Ù½Ã °è»êÇÏ°Ô µË´Ï´Ù. ÆäÀÌÁöÀÇ handleEvent ¸Þ¼Òµå´Â ÀÌ ÆäÀÌÁö¿¡ ´ëÇÑ Æ¯Á¤ À̺¥Æ® ó¸® ¿Ü¿¡ »ó¼ÓµÈ ÆäÀÌÁö À¯È¿¼º °ËÁõ ÀÛµ¿ÀÌ ¹ß»ýÇϵµ·Ï super¸¦ È£ÃâÇØ¾ß ÇÕ´Ï´Ù.

      public void handleEvent(Event e) {
      Widget source = e.widget;
      if (source == sectionCheckbox) {
         if (!sectionCheckbox.getSelection())
            subsectionCheckbox.setSelection(false);
         subsectionCheckbox.setEnabled(sectionCheckbox.getSelection());
      }
      super.handleEvent(e);
   }

Copyright IBM Corporation and others 2000, 2003.