<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to UIModuleFinder</title><link>https://sourceforge.net/p/xe-core/wiki/UIModuleFinder/</link><description>Recent changes to UIModuleFinder</description><atom:link href="https://sourceforge.net/p/xe-core/wiki/UIModuleFinder/feed" rel="self"/><language>en</language><lastBuildDate>Wed, 25 Mar 2015 11:09:19 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/xe-core/wiki/UIModuleFinder/feed" rel="self" type="application/rss+xml"/><item><title>Discussion for UIModuleFinder page</title><link>https://sourceforge.net/p/xe-core/wiki/UIModuleFinder/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Originally posted by: &lt;a class="" href="http://code.google.com/u/104770591320267480793" rel="nofollow"&gt;dodong1...@naver.com&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;오타 수정 : 이 UI르 통해 선택할... -&amp;gt; 이 UI를 통해 선택할... &lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Anonymous</dc:creator><pubDate>Wed, 25 Mar 2015 11:09:19 -0000</pubDate><guid>https://sourceforge.netc72129fbfd6c6c701ded0e994ce8a4dc2146dac1</guid></item><item><title>UIModuleFinder modified by Anonymous</title><link>https://sourceforge.net/p/xe-core/wiki/UIModuleFinder/</link><description>&lt;div class="markdown_content"&gt;&lt;h1 id="module-finder"&gt;Module Finder&lt;/h1&gt;
&lt;p&gt;특정 모듈을 찾아야 할 필요가 있을 때 사용하는 UI 패턴이다. 이 UI르 통해 선택할 수 있는 값은 모듈 종류, 모듈 아이디(고유 숫자)이다. &lt;/p&gt;
&lt;h2 id="basics"&gt;Basics&lt;/h2&gt;
&lt;p&gt;모듈 검색기의 모든 컨트롤은 &lt;code&gt;modulefinder&lt;/code&gt;라는 클래스를 가진 컨테이너의 하위 요소여야 한다. &lt;/p&gt;
&lt;p&gt;모듈 검색기를 사용하기 위해 필요한 규칙은 다음과 같다. &lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;모든 컨트롤은 &lt;code&gt;modulefinder&lt;/code&gt;라는 클래스를 가진 요소의 하위 요소이다. &lt;/li&gt;
&lt;li&gt;가상 사이트를 검색하는 버튼은 &lt;code&gt;tgAnchor&lt;/code&gt; 및 &lt;code&gt;findsite&lt;/code&gt;라는 클래스를 가지는 앵커 요소(&amp;amp;lt;a&amp;amp;gt;)이다. &lt;/li&gt;
&lt;li&gt;가상 사이트를 검색하기 위해 도메인을 입력하는 텍스트 입력 상자는 반드시 가상 사이트 검색 앵커 요소 바로 앞에 위치한 형제 노드여야 한다. &lt;/li&gt;
&lt;li&gt;가상 사이트 검색 결과는 &lt;code&gt;tgContent&lt;/code&gt; 및 &lt;code&gt;suggestion&lt;/code&gt;이라는 클래스를 가진 요소의 자식 요소인 &lt;code&gt;ul&lt;/code&gt;에 표시된다. &lt;/li&gt;
&lt;li&gt;가상 사이트를 선택하면 해당 가상 사이트에 속한 모듈의 종류와 모듈 목록을 표시한다. 모듈의 종류는 &lt;code&gt;moduleList&lt;/code&gt;라는 클래스를 가진 &lt;code&gt;select&lt;/code&gt; 요소에 표시되고, 모듈 목록은 &lt;code&gt;moduleIdList&lt;/code&gt;라는 클래스를 가진 &lt;code&gt;select&lt;/code&gt; 요소에 표시된다. &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;다음은 위 규칙을 만족하는 모듈 검색기의 예시이다. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="nt"&gt;&amp;lt;ul&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;li&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"modulefinder"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"q"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;방명록 데이터를 어디로 옮길까요?&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"a"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"text"&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"site_keyword"&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"#suggestion3"&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"tgAnchor findsite"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;사이트 찾기&lt;span class="nt"&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"suggestion3"&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"tgContent suggestion"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;ul&amp;gt;&lt;/span&gt;
            &lt;span class="nt"&gt;&amp;lt;/ul&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"a"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;select&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"moduleList"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/select&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;p&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"a"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;select&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"moduleIdList"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/select&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/ul&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;위 코드를 작성한 후 웹 브라우저에서 열고 사이트 검색을 실행하면 다음과 같은 화면을 볼 수 있다. &lt;/p&gt;
&lt;p&gt;&lt;img alt="" src="http://xe-core.googlecode.com/svn/wiki/img/AdminUIModuleFinderExample.png" rel="nofollow" /&gt;&lt;/p&gt;
&lt;p&gt;사이트 검색을 실행하기 전에는 모듈 종류와 모듈 목록이 화면에 나타나지 않을 수도 있다. &lt;/p&gt;
&lt;h2 id="jquery-plugin"&gt;jQuery Plugin&lt;/h2&gt;
&lt;p&gt;이 패턴은 페이지를 읽어들일 때 자동으로 실행되기 때문에 페이지 요소를 동적으로 생성하는 경우에는 적용되지 않는 문제가 있다. 다음과 같이 &lt;code&gt;modulefinder&lt;/code&gt; 요소를 선택한 후 &lt;code&gt;xeModuleFinder&lt;/code&gt; 메소드를 실행하면 페이지를 읽어들인 뒤에도 스크립트를 적용할 수 있다. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="err"&gt;$&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;modulefinder&lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="n"&gt;xeModuleFinder&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Anonymous</dc:creator><pubDate>Wed, 25 Mar 2015 11:09:19 -0000</pubDate><guid>https://sourceforge.net4948abd9ff0faa9077700dea7f42828d7dcdb767</guid></item></channel></rss>