SlideShare a Scribd company logo
進化系・マルチスタイル・テキストエリア  
4D  Write  Pro
ロードマップ
フェーズ#1~∼7
フェーズ 要望 ステータス バージョン
1 差し込みHTMLメールの送信
完了了
15
2 4D  Write⽂文書をインポート 15
3 ⽂文書をファイルに保存
4 ⽂文書をフィールドに保存
検証中
5 ⽂文書を印刷 15*
6 ⽂文書・段落落・画像・スタイルをコマンドで制御 開発中
7 ページネーション・ヘッダー・フッターの管理理 研究中
*プリント時可変は⾮非サポート
ロードマップ
フェーズ#8以降降
フェーズ 要望 ステータス バージョン
?
表⽰示プロパティをコマンドで制御
研究中 ?
画像~∼テキストの回り込み
⽤用紙タイプの管理理~∼⽤用紙・向き《縦/横》
表の挿⼊入
ハイパーリンク《メソッド実⾏行行》
ハイパーリンク《⽂文書を開く》
HTML式・RTF式の挿⼊入
PDF/XPSエクスポート
4D  Writeドキュメント変換
デモンストレーション
4D  Writeドキュメント変換
デモンストレーション
Retina Display
4D Write4D Write Pro
メール送信
デモンストレーション
$error:=SMTP_QuickSend ($hostName;$from;$to;$subject;$body;$param;$port;$user;$password)
11 12.0 13.2 14.0 14R5
no  SSL 0 ⭕
STARTTLS 0 ⭕ ⭕ ⭕
SMTP  over  SSL 1 ⭕ ⭕ ⭕ ⭕
no  SSL 2 ⭕ ⭕ ⭕
HTML/no  SSL 4 ⭕ ⭕
HTML/STARTTLS 5 ⭕ ⭕
MIME/no  SSL 8 ⭕
MIME/STARTTLS 9 ⭕
フェーズ#1
エクスポート
htm html
WP EXPORT DOCUMENT(WritePro;$path;wp web page complete)
式:  計算+確定,  画像:  別ファイル
WP EXPORT DOCUMENT(WritePro;$path;wp mime html)
式:  計算+確定,  画像:  MIMEパート
mhtmlmht
WP EXPORT VARIABLE(WritePro;$html;wp web page html 4D)
TEXT TO DOCUMENT(DOCUMENT;$html)
式:  参照,  画像:  データURI
フェーズ#3~∼
エクスポート
4wp zip
WP EXPORT DOCUMENT(WritePro;$path;wp 4wp)
式/画像:  参照
pdf xps
WP EXPORT DOCUMENT(WritePro;$path;wp pdf|wp xps)
式/画像:  計算+確定
html
インポート
$html:=Document to text($path;"utf-8")
WritePro:=WP New($html)
htm
4w7 4wt
WritePro:=WP Import document($path)
DOCUMENT TO BLOB($path;$data)
WritePro:=WP New($data)
※JSON形式のデータ交換は想定されていません
フェーズ#1
4D  Write  Pro  ×  C_̲OBJECT
デザイン
※フォームローカル変数は⾮非サポート
オブジェクト名=プロセス変数名(⾃自動)
JSON  Stringify不不可
4D  Write  Pro  ×  ST@コマンド
ランゲージ
ST  COMPUTE  EXPRESSIONS  
ST  FREEZE  EXPRESSIONS

ST  GET  ATTRIBUTES  /  SET  ATTRIBUTES    
ST  Get  content  type  *  
ST  Get  expression  /  INSERT  EXPRESSION    
ST  GET  OPTIONS  /  SET  OPTIONS

ST  Get  plain  text  /  SET  PLAIN  TEXT

ST  Get  text  /  SET  TEXT

ST  GET  URL  /  INSERT  URL
*  新定数  ST  Image  type  (6)
4D  Write  Pro  ×  OBJECT@コマンド
OBJECT  Get  font  /  SET  FONT  
OBJECT  Get  font  size  /  SET  FONT  SIZE  
OBJECT  Get  font  style  /  SET  FONT  STYLE  
OBJECT  DUPLICATE    
OBJECT  Get  auto  spellcheck  /  SET  AUTO  SPELLCHECK  
OBJECT  Get  border  style  /  SET  BORDER  STYLE  
OBJECT  Get  context  menu  /  SET  CONTEXT  MENU  
OBJECT  GET  COORDINATES  /  SET  COORDINATES  
OBJECT  Get  data  source  /  SET  DATA  SOURCE  
OBJECT  GET  DRAG  AND  DROP  OPTIONS  /SET  DRAG  AND  DROP  OPTIONS  
OBJECT  Get  enabled  /  SET  ENABLED  
OBJECT  Get  enterable  /  SET  ENTERABLE  
OBJECT  GET  EVENTS  /  SET  EVENTS  
OBJECT  Get  focus  rectangle  invisible  /  SET  FOCUS  RECTANGLE  INVISIBLE  
ランゲージ
4D  Write  Pro  ×  OBJECT@コマンド
OBJECT  Get  horizontal  alignment  /  SET  HORIZONTAL  ALIGNMENT  
OBJECT  GET  RESIZING  OPTIONS  /  SET  RESIZING  OPTIONS  
OBJECT  SET  COLOR    
OBJECT  GET  RGB  COLORS  /  SET  RGB  COLORS  
OBJECT  Get  type    
OBJECT  Get  vertical  alignment  /  SET  VERTICAL  ALIGNMENT  
OBJECT  Get  visible  /  SET  VISIBLE  
OBJECT  Is  styled  text    
OBJECT  MOVE    
OBJECT  Get  name    
OBJECT  Get  pointer  
ランゲージ
スタイル付きテキスト
プログラミング~∼コンテキストメニュー編~∼
$Me:=OBJECT Get name(Object current)
$event:=Form event
Case of
: ($event=On Clicked)
If (Not(OBJECT Get context menu(*;$Me))) & (Contextual click)
End if
End case
⼊入⼒力力可オブジェクトでも発⽣生  (v14)
コマンドでオン/オフ可  (v14)
スタイル付きテキスト
プログラミング~∼セレクション編~∼
$Me:=OBJECT Get name(Object current)
$event:=Form event
Case of
: ($event=On Selection Change) | ($event=On Clicked)
$styleSel:=ST Get text(*;$Me;ST Start highlight;ST End highlight)
$plainSel:=ST Get plain text($styleSel)
End case
範囲の選択でも発⽣生  (v12.2~∼)
定数で指定  (v14)
C_LONGINT($startSel;$endSel)
GET HIGHLIGHT(*;$Me;$startSel;$endSel)
$styledText:=Get edited text
$plainSel:=Substring(ST Get plain text($styledText);$startSel;$endSel-$startSel)
GET  HIGHLIGHTで取得  (~∼v13)
スタイル付きテキスト
プログラミング~∼ハイパーリンク編~∼
$Me:=OBJECT Get name(Object current)
ST GET URL(*;$Me;$label;$url;ST Start highlight;ST End highlight)
READ
$Me:=OBJECT Get name(Object current)
ST INSERT URL(*;$Me;$label;$url;ST Start highlight;ST End highlight)
$Me:=OBJECT Get name(Object current)
ST SET PLAIN TEXT(*;$Me;$label;ST Start highlight;ST End highlight)
WRITE
DELETE
⼊入⼒力力可の場合:  Control+マウスオーバー
スタイル付きテキスト
プログラミング~∼フォーミュラ編~∼
$Me:=OBJECT Get name(Object current)
$exp:=ST Get expression(*;$Me;ST Start highlight;ST End highlight)
READ
$Me:=OBJECT Get name(Object current)
ST INSERT EXPRESSION(*;$Me;$exp;ST Start highlight;ST End highlight)
$Me:=OBJECT Get name(Object current)
ST COMPUTE EXPRESSIONS(*;$Me;ST Start highlight;ST End highlight)
WRITE
UPDATE
$Me:=OBJECT Get name(Object current)
ST FREEZE EXPRESSIONS(*;$Me;ST Start highlight;ST End highlight)
UPDATE+DELETE
スタイル付きテキスト
プログラミング~∼表⽰示モード編~∼
$Me:=OBJECT Get name(Object current)
ST GET OPTIONS(*;$Me;ST Expressions display mode;ST Values)
$Me:=OBJECT Get name(Object current)
ST GET OPTIONS(*;$Me;ST Expressions display mode;ST References)
フォーミュラ《式》を表⽰示
フォーミュラ《値》を表⽰示
おまけTips
データソースの切切り替え
//タブコントロール
$event:=Form event
Case of
 : ($event=On Clicked)
Case of
: (Self->=1)
OBJECT SET DATA SOURCE(*;"HTML";->[Write]HTML)
: (Self->=2)
OBJECT SET DATA SOURCE(*;"HTML";->[Write]MIME)
End case
End case
オブジェクト名
変数/フィールド名
おまけTips
背景⾊色:  透過
OBJECT SET RGB COLORS(*;"HTML";Foreground color;Background color none)
新定数  (-‐‑‒16)
参考:  前景⾊色  "⾃自動"  は-‐‑‒255(定数ナシ)
対象:  テキスト・ピクチャ・階層リスト・リストボックス
おまけTips
背景⾊色:  透過
⼊入⼒力力可テキストもOK
条件:  スクロールバーが無いこと
おまけTips
背景⾊色:  透過
背景画像もOK
おまけTips
⼊入⼒力力不不可+フォーカス可=選択可
おまけTips
ローダー《チェイシングアロー》
サーモメーターの亜種
おまけTips
ローダー《チェイシングアロー》
おまけTips
新規プロセス:  スタックサイズ
$p:=New process(Current method name;0;"$procName";*)
スタックサイズ:  ⾃自動
おまけTips
標準アクションをコードで制御
OBJECT SET ACTION(*;"Send";Object Accept action)
$event:=Form event
Case of
: ($event=On Clicked)
If (OBJECT Get action(*;OBJECT Get name(Object current))=Object No standard action)
End if
End case
チェック:  標準アクションとメソッドは共存できるため

More Related Content

PDF
Facebook recruiting
PDF
Build an iOS app with Ionic and 4D
PDF
4D WORLD TOUR 2017
PDF
Leaflet
PDF
Inside Multi-Threading
PDF
4D Tags
PDF
Mirroring
PDF
Objects Fields
Facebook recruiting
Build an iOS app with Ionic and 4D
4D WORLD TOUR 2017
Leaflet
Inside Multi-Threading
4D Tags
Mirroring
Objects Fields

More from kmiyako (20)

PDF
Code Optimisation
PDF
Auto Update
PDF
Classic Query Editor
PDF
Web area-phone-home
PDF
MONET研究会 #14
PDF
PDF
初心者からプロフェッショナルまで~データベース開発ソフト4Dの魅力を徹底紹介~
PDF
Xslt
PDF
Journaling slides
PDF
Unicode-v11-5
PDF
Unicode-v11-0
PDF
アップグレードセミナー
PDF
バックアップと復元
PDF
⽇本語全⽂検索
PDF
⾼解像度ディスプレイ
PDF
ラベルエディター
PDF
リストフォーム⼤改造
PDF
正しいクエリの書き⽅
PDF
カスタマイズできる⼊力画面
PDF
解決! メール送信
Code Optimisation
Auto Update
Classic Query Editor
Web area-phone-home
MONET研究会 #14
初心者からプロフェッショナルまで~データベース開発ソフト4Dの魅力を徹底紹介~
Xslt
Journaling slides
Unicode-v11-5
Unicode-v11-0
アップグレードセミナー
バックアップと復元
⽇本語全⽂検索
⾼解像度ディスプレイ
ラベルエディター
リストフォーム⼤改造
正しいクエリの書き⽅
カスタマイズできる⼊力画面
解決! メール送信
Ad

4D Write Pro