Nice TWiki > Doc > HelloSwtUserInterfaceExample (r1.1 vs. r1.6) TWiki webs:
Dev | Doc | Main | TWiki | Sandbox
Doc . { Changes | Index | Search | Go }
 <<O>>  Difference Topic HelloSwtUserInterfaceExample (r1.6 - 28 Apr 2005 - TWikiGuest)
Deleted:
<
<

装潢 成人高考 高考 法律 个人简历 求职 小游戏 英语 在线游戏 自学考试 房产 花卉 环保 黄山 减肥 建筑 健康 外汇 学校 医疗器械 医院 在线翻译 招生 专利 太阳能 摄影 牛皮癣 旅游线路 大屏幕 留学 小说 房地产 美女写真 彩票 漫画 考研 免费软件 人体 驾校 美容 喷泉 货架 网站建设 域名 动漫 装修 癌症 集团电话 装饰 视频会议 投影机 地图 许晴 论文 论坛 国庆节 联众 教育 非典 保险 个人域名 培训 咨询 软件 非典型肺炎 英国留学 肝病 写字楼 足球 建材 注册公司 火车时刻表 五笔 外挂999 奇迹外挂 文学 传奇外挂 歌曲 江苏教育 军事 列车时刻表 美体 在线购物 上海热线 笑话 明星写真 汤加丽 人体艺术 浩方 音乐红茶馆 便宜外挂 言情小说 火车票 中国游 墙纸 武侠小说 传奇 传奇世界 玉观音 向导 传奇私服 联众世界 诗歌 究成 边锋 天气 视讯会议 钻石 营养 足彩 空运 硬件 联盟 光端机 电动阀 杀毒 回流焊 帕萨特 吸塑 病毒 掌上电脑 课程 订酒店 移动硬盘 皇历 占卜 净化 测距仪 传媒 传奇3 免费 节能节电 国际机票 红斑狼疮 屏保 同盟 卷板机 财经 高考试题 乳腺病 短信联盟 办公设备 书库 切换器 剪报 招商 电子元器件 耐克 终端 短信同盟 运输 测量机 平衡机 数码冲印 上海大众 校校通 阀门 电脑硬件 美食 贷款 黑客帝国2 企业 晶闸管 足球鞋 网上聊天 网上冲印 二手市场 硬盘录像 市场调查 免费网站 电子书 中级会计师 钎焊 菜谱 台式机 鲜花速递 电视墙 深圳生活 blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog


 <<O>>  Difference Topic HelloSwtUserInterfaceExample (r1.5 - 26 Jan 2005 - LiYan)
Added:
>
>

装潢 成人高考 高考 法律 个人简历 求职 小游戏 英语 在线游戏 自学考试 房产 花卉 环保 黄山 减肥 建筑 健康 外汇 学校 医疗器械 医院 在线翻译 招生 专利 太阳能 摄影 牛皮癣 旅游线路 大屏幕 留学 小说 房地产 美女写真 彩票 漫画 考研 免费软件 人体 驾校 美容 喷泉 货架 网站建设 域名 动漫 装修 癌症 集团电话 装饰 视频会议 投影机 地图 许晴 论文 论坛 国庆节 联众 教育 非典 保险 个人域名 培训 咨询 软件 非典型肺炎 英国留学 肝病 写字楼 足球 建材 注册公司 火车时刻表 五笔 外挂999 奇迹外挂 文学 传奇外挂 歌曲 江苏教育 军事 列车时刻表 美体 在线购物 上海热线 笑话 明星写真 汤加丽 人体艺术 浩方 音乐红茶馆 便宜外挂 言情小说 火车票 中国游 墙纸 武侠小说 传奇 传奇世界 玉观音 向导 传奇私服 联众世界 诗歌 究成 边锋 天气 视讯会议 钻石 营养 足彩 空运 硬件 联盟 光端机 电动阀 杀毒 回流焊 帕萨特 吸塑 病毒 掌上电脑 课程 订酒店 移动硬盘 皇历 占卜 净化 测距仪 传媒 传奇3 免费 节能节电 国际机票 红斑狼疮 屏保 同盟 卷板机 财经 高考试题 乳腺病 短信联盟 办公设备 书库 切换器 剪报 招商 电子元器件 耐克 终端 短信同盟 运输 测量机 平衡机 数码冲印 上海大众 校校通 阀门 电脑硬件 美食 贷款 黑客帝国2 企业 晶闸管 足球鞋 网上聊天 网上冲印 二手市场 硬盘录像 市场调查 免费网站 电子书 中级会计师 钎焊 菜谱 台式机 鲜花速递 电视墙 深圳生活 blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog


 <<O>>  Difference Topic HelloSwtUserInterfaceExample (r1.4 - 19 Jan 2005 - ArjanB)

 <<O>>  Difference Topic HelloSwtUserInterfaceExample (r1.3 - 25 Feb 2004 - IsaacGouy)
Changed:
<
<

import org.nice.swt; import org.nice.swt.events; import org.nice.swt.layout; import org.nice.swt.widgets;

>
>

import nice.swt; import nice.swt.events; import nice.swt.layout; import nice.swt.widgets;


 <<O>>  Difference Topic HelloSwtUserInterfaceExample (r1.2 - 21 Feb 2004 - IsaacGouy)
Changed:
<
<

nicec --sourcepath .. -d . --classpath .\swt.jar -a helloswt.jar helloswt

>
>

nicec --classpath "niceswt.jar;swt.jar" -a helloswt.jar helloswt

Changed:
<
<

import org.eclipse.swt.*; import org.eclipse.swt.events.*; import org.eclipse.swt.layout.*; import org.eclipse.swt.widgets.*;

>
>

import org.nice.swt; import org.nice.swt.events; import org.nice.swt.layout; import org.nice.swt.widgets;

Changed:
<
<

NiceSelectionAdapter? helloButtonSelected(HelloGoodbye? v) = new NiceSelectionAdapter?( selected: SelectionEvent? e => {

>
>

SelectionAdapter? helloButtonSelected(HelloGoodbye? v) = new SelectionAdapter?( widgetSelected: SelectionEvent? e => {

Changed:
<
<

NiceSelectionAdapter? goodbyeButtonSelected(HelloGoodbye? v) = new NiceSelectionAdapter?( selected: SelectionEvent? e => {

>
>

SelectionAdapter? goodbyeButtonSelected(HelloGoodbye? v) = new SelectionAdapter?( widgetSelected: SelectionEvent? e => {

Deleted:
<
<

// Let's just make the SWT SelectionAdapter? configurable

class NiceSelectionAdapter? extends SelectionAdapter? { SelectionEvent??->void selected = null; SelectionEvent??->void defaultSelected = null;

widgetSelected(SelectionEvent? e){ let f = selected; if (f != null) f(e); else super; }

widgetDefaultSelected(SelectionEvent? e){ let f = defaultSelected; if (f != null) f(e); else super; } }


 <<O>>  Difference Topic HelloSwtUserInterfaceExample (r1.1 - 17 Feb 2004 - IsaacGouy)
Added:
>
>

%META:TOPICINFO{author="IsaacGouy" date="1076984376" format="1.0" version="1.1"}% %META:TOPICPARENT{name="CodeExamples"}%

/* 
To compile:
   nicec --sourcepath .. -d . --classpath .\swt.jar -a helloswt.jar helloswt
To run:
   java -cp swt.jar;helloswt.jar helloswt.fun
*/

import org.eclipse.swt.*;
import org.eclipse.swt.events.*;
import org.eclipse.swt.layout.*;
import org.eclipse.swt.widgets.*;


void main(String[] args){
   makeHelloGoodbye().open;
}

HelloGoodbye makeHelloGoodbye(){
   let d = new Display();
   let s = new Shell(d, SWT.TITLE | SWT.CLOSE | SWT.BORDER);
   s.setLayout( new FillLayout(SWT.VERTICAL) );
   s.setText(" SWT Nice Hello/Goodbye ");
   s.setSize(200, 100);
   let b1 = new Button(s, SWT.PUSH);
   b1.setText("Hello");
   let b2 = new Button(s, SWT.PUSH);
   b2.setText("Goodbye");

   let v =  
      new HelloGoodbye(
         display: d,
         shell: s,
         helloButton: b1,
         goodbyeButton: b2
      );
   b1.addSelectionListener( v.helloButtonSelected );
   b2.addSelectionListener( v.goodbyeButtonSelected );

   return v;
} 

void open(HelloGoodbye v){
   v.shell.open;
   while (!v.shell.isDisposed) {
      if (!v.display.readAndDispatch) 
         v.display.sleep;
   }
   v.display.dispose;
}


//  Some prefer to separate the UI event 
//  handling from the UI initialization.

NiceSelectionAdapter helloButtonSelected(HelloGoodbye v) =
   new NiceSelectionAdapter( selected: SelectionEvent e => {
      if (v.helloIsReply) 
         v.helloButton.setText("Hello");
      else
         v.helloButton.setText("HELLO!");

      v.helloIsReply = ! v.helloIsReply;
      }
   );

NiceSelectionAdapter goodbyeButtonSelected(HelloGoodbye v) =
   new NiceSelectionAdapter( selected: SelectionEvent e => {
      if (v.goodbyeIsReply) 
         v.goodbyeButton.setText("Goodbye");
      else
         v.goodbyeButton.setText("Bye!");

      v.goodbyeIsReply = ! v.goodbyeIsReply;
      }
   );


class HelloGoodbye {
   Display display;
   Shell shell;
   Button helloButton;
   Button goodbyeButton;
   boolean helloIsReply = false;
   boolean goodbyeIsReply = false;
}


// Let's just make the SWT SelectionAdapter configurable

class NiceSelectionAdapter extends SelectionAdapter {
   SelectionEvent?->void selected = null;  
   SelectionEvent?->void defaultSelected = null; 
   
   widgetSelected(SelectionEvent e){    
      let f = selected;   
      if (f != null) f(e); else super;
   }
   
   widgetDefaultSelected(SelectionEvent e){    
      let f = defaultSelected;   
      if (f != null) f(e); else super;
   }   
}
-- IsaacGouy - 17 Feb 2004

Topic HelloSwtUserInterfaceExample . { View | Diffs | r1.6 | > | r1.5 | > | r1.4 | More }
Revision r1.1 - 17 Feb 2004 - 02:19 GMT - IsaacGouy
Revision r1.6 - 28 Apr 2005 - 11:53 GMT - TWikiGuest
Copyright © 1999-2003 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback.