회사에서 새벽까지 야근을 하고 아침 7시 30분경 집에 들어와서 아침먹고 잠을 잤는데, 오후 2시경 마누라가 깨우면서 "큰일났다"며 뉴스를 보라고 한다. 노 전 대통령이 서거했다는 소식이다.

관할 경남경찰서 발표에 따르면 금일 새벽 6시 40분경 사저 뒤의 봉화산 부엉이바위(높이 30미터)에서 뛰어내렸다고 하는데, 이 시간이면 내가 회사에서 주간업무보고서를 작성하면서 업무를 마무리 하고 있던 시점이다.

컴퓨터에 남긴 유서를 보면 그간 마음고생이 얼마나 심했는지 느낄 수 있다. "삶과 죽음이 모두 자연의 한조각"이라며 운명으로 받아들이는 부분을 보면 갑작스런 심경변화에 따른 충동적인 결정이 아닌, 이미 오래전에 마음정리를 한 것으로 보여진다.

따지고보면, 노 전대통령의 혐의가 모두 사실이라고 하더라도 그간 집권여당의 정권 수뇌부가 자행했던 수많은 범죄행위에 비할 바는 아니라고 본다.

물론 범죄행위에 있어 경중을 따지는 것 자체는 바람직하지 않다. 그러나 수천명의 자국 국민을 총칼로 학살하고 수많은 재벌집단에서 상상도 못할 자금을 수뢰했음에도 불구, 온가족이 여생을 편하게 보내고 있는  저 개 젓같은 인간들도 같은 하늘아래 숨쉬고 있는 걸 보면 범죄의 경중을 따지자고 하는 것도 무리는 아닐듯 싶다.

그들은 노 전대통령의 선택을 보고 과연 어떤 생각을 하고 있을까? 노 전 대통령이 정치를 하기에는 너무 순수했던 것은 아닐까?

암튼 이래저래 마음 한 켠이 횡한 주말이다.

split 설정이 true된 패널의 경우 collapsible 옵션을 true로 주어서 화면에 보여주는 것을 토글(toggle)시킬 수 있다.
var helpPanel = new Ext.Panel({
    id          : 'help-panel',
    title       : '도움말',
    region      : 'south',
    height      : 250,
    autoScroll  : true,
    collapsible : true,
    collapsed   : true,
    split       : true
});

그런데 이 패널을 collpased 시키면 기존 설정된 타이틀이 없어지게 된다. 아래 그림을 보자.



위 그림에서 ②번 그림과 같이 collpased된 패널의 타이틀이 없어졌다.
③번 그림이 이를 해결한 그림인데 아래 코드를 해당 스크립트 파일에 정의해주면 된다.

Ext.layout.BorderLayout.Region.prototype.getCollapsedEl =
    Ext.layout.BorderLayout.Region.prototype.getCollapsedEl.createSequence(function() {
    if ((this.position == 'north' || this.position == 'south') && !this.collapsedEl.titleEl) {
        this.collapsedEl.titleEl = this.collapsedEl.createChild(
            {
                style : 'color:#15428b; font:12px; padding:2px 5px;',
                cn    : this.panel.title
            }
        );
    }
});

경우에 따라 이 타이틀을 이미지로 바꾸어도 될 것 같다.
파이어폭스나 크롬에서는 문제없는데 IE에서만 발생하는 오류다. (아래 ComboBox에 이어 두번째 시리즈가 되었네)

일반 radio 컴포넌트를 사용할 경우는 문제없는데 radiogroup을 이용할 경우 아래와 같은 문제가 발생한다.


아래는 위 첨부파일에 해당하는 스크립트 코드다.
{
        xtype       : 'radiogroup',
fieldLabel  : '첨부파일', 
columns     : [70, 100],
        items       : [
{boxLabel: '사용', name: 'useFile', inputValue: 'Y'},
{boxLabel: '미사용', name: 'useFile', inputValue: 'N'}
]
}

해결방안은 아래와 같다.
.x-form-radio-wrap { white-space: nowrap !important }

이제 제대로 나온다.

파이어폭스나 크롬에서는 문제없는데 IE에서만 발생하는 오류다. 
 
위 화면에서 우측의 수정 아이콘 클릭했을 경우 

위와 같이 그리드가 이동하면서 하단에 수평 스크롤바가 생긴다.

IE 디버그 툴로 해당 부분의 CSS를 살펴보았다.

해당 그리드패널을 감싸는 div 영역의 넓이가 10000px로 지정되어 있다.

아래와 같이 CSS를 수정해준다.
.x-grid3-header-offset{ width:auto; position: relative; }

ExtJS를 이용해 IE에서 개발한 내용을 확인할 경우 이런 경우가 종종 생기는데, 이럴때마다 웹개발 때려치고 Delphi로 돌아가고 싶은 마음이 든다.

ComboBox에서 선택한 값의 key 정보가 넘어가지 않고 value 정보가 넘어가는 경우가 있다.
이럴때에는 아래와 같이 hiddenName을 삽입해줘야 한다.

{
xtype        : 'combo',
fieldLabel  : '처리기간 산정기준',
name        : 'dealStdCd',
hiddenName  : 'dealStdCd',
store        : new Ext.data.Store({
url: CTX_PATH + '/zebra/app/commons/ajax_codeList.jsp',
baseParams : { cmd:'codeList', grpCd:10 },
reader: new Ext.data.JsonReader({
root: 'datas'
}, ['id', 'displayName']
), 
autoLoad: true
}),
valueField:'id', displayField:'displayName', 
triggerAction:'all', mode:'local', editable:false
}



'자바스크립트 > ExtJS' 카테고리의 다른 글

ExtJS - IE에서의 radiogroup 표시 오류  (0) 2009.05.19
ExtJS - IE에서의 EditorGridPanel 오류  (0) 2009.05.19
IE Javascript debugger  (0) 2009.05.18
ExtJS 3.0 확장타입(xtype) 목록  (0) 2009.04.27
ExtJS PDF 서적  (0) 2009.04.22

+ Recent posts