![]() ![]() ![]()
|
BREW C++ ライブラリ & GUI フレームワーク & XML ミドルウェア : SophiaFramework UNIVERSE 5.0 |
#include <SFRBrowserControl.hpp>
class SFRBrowserControl : public SFRControl;
SFMTYPEDEFCLASS(SFRBrowserControl)


SFRBrowserControl クラスは、以下の機能を備える簡易ウェブ ブラウザーコントロールです。
SFRBrowserControl クラスは BREW API の IHtmlViewer を使って実装されているので、HTML レンダリングに関する制限は IHtmlViewer と概ね同等です。
エラー値
SFRBrowserControl クラスのいくつかのメンバ関数は、 エラーが発生すると内部的にその状態を記録します。
メンバ関数で発生したエラーは、 static_catch 関数により取得できます。
エラーが発生しなかった場合は、SFERR_NO_ERROR を返します。

SFRBrowserControl クラスのサンプル コードは以下のようになります。
SFMTYPEDEFCLASS(MyWindow)
class MyWindow : public SFRTitleWindow {
SFMSEALCOPY(MyWindow)
public:
MyWindow(Void) static_throws;
virtual ~MyWindow(Void) { return; }
// 簡易 ウェブ ブラウザーをポインター型のメンバ変数として定義する
SFRBrowserControlPtr _browser; // 簡易 ウェブ ブラウザー
};
// コンストラクタ (エラー処理は省略)
MyWindow::MyWindow(Void) : SFRTitleWindow(SFRApplication::GetInstance(),
SFXRectangle(20, 20, 200, 250), "my window") static_throws
{
// 表示するブラウザーを文字列で入力する
SFXAnsiString buffer(
"BrowserControl<br /><br />"
"<a href=\"http://www.s-cradle.com/example/tabbrowser/\">ソフィアクレイドル</a><br /><br />"
);
// 簡易 ウェブ ブラウザーの作成
// 第 1 引数 : 親レスポンダ
// 第 2 引数 : タブの位置とサイズ
_browser = ::new SFRBrowserControl(this, rect);
//文字列データを HTML とみなして、レンダリングを開始する
_browser->Load(buffer);
return;
}
SFRResponder | SFRApplication | SFRWindow | SFRDialog | SFRControl | SFBHTMLViewer | SFBWeb | 簡易 ウェブ ブラウザー
| コンストラクタ/デストラクタ |
|---|
|
SFRBrowserControl(
SFRResponderPtr director
, SFXRectangleConstRef rect
, BehaviorType behavior = BEHAVIOR_SFRBROWSERCONTROL
, SFCType attribute = ATTRIBUTE_SFRBROWSERCONTROL
)
SFRBrowserControl クラスのコンストラクタです。
|
|
~SFRBrowserControl( Void )
SFRBrowserControl クラスのデストラクタです。
|
| パブリック関数 | |
|---|---|
| SFCError |
ClearHistory( Void ) 履歴リストを空にします。
|
| SInt32 |
FindElement(
ACharConstPtr element
, SInt32 no
) 表示中のページから、指定した要素を検索します。
|
| HistoryEntry |
GetCurrentHistory( Void ) 現在表示しているページの URL とタイトルを取得します。
|
| UInt32 |
GetCurrentHistoryIndex( Void ) 現在の履歴番号を取得します。
|
| SFXAnsiString |
GetElementAttribute(
SInt32 elementIndex
, ACharConstPtr attr
) 指定した要素の属性値を取得します。
|
| SFXAnsiString |
GetElementText(
SInt32 elementIndex
) 指定した要素の内容を取得します。
|
| HistoryEntry |
GetHistory(
UInt32 historyIndex = 0
) 指定した履歴番号の履歴内容を取得します。
|
| HistoryEntryConstPtr |
GetHistoryList( Void ) 履歴リストを取得します。
|
| UInt32 |
GetHistorySize( Void ) 履歴リストのエントリ数を取得します。
|
| SInt32 |
GetIndent( Void ) インデントの幅を取得します。
|
| SFXRGBColor |
GetLinkColor( Void ) リンク文字列の表示色を取得します。
|
| SInt32 |
GetParagraphSpacing( Void ) 段落間の行間の長さを取得します。
|
| SInt32 |
GetScrollbarWidth( Void ) スクロールバーの幅を取得します。
|
| SFXRGBColor |
GetTextColor( Void ) 本文の表示色を取得します。
|
| SFBWebSmpConstRef |
GetWeb( Void ) IWeb インターフェースを取得します。
|
| Bool |
IsBusy( Void ) 通信中、あるいはレンダリング中か判定します。
|
| Bool |
IsInlineEditEnable( Void ) 文字をインラインで入力する設定か判定します。
|
| Bool |
IsScrollbarEnable( Void ) スクロールバーがあるか判定します。
|
| SFCError |
Load(
SFXAnsiStringConstRef data
) Load( SFXAnsiStringConstRef data , SFXAnsiStringConstRef url )
文字列データを HTML とみなして、レンダリングを開始します。
|
| SFCError |
Move(
UInt32 historyIndex = 0
)
指定した履歴内のページに移動し、ページの再取得と再レンダリングを行います。
|
| SFCError |
Next(
SInt32 n = 1
) 指定した履歴を進み、ページの再取得と再レンダリングを行います。
|
| SFCError |
Open(
SFXAnsiStringConstRef url
) Open( SFBAStreamSmpConstRef src , SFXAnsiStringConstRef baseUrl ) Open( SFBAStreamSmpConstRef stream ) Open( SFBSourceSmpConstRef source , SFXAnsiStringConstRef basdUrl ) Open( SFBSourceSmpConstRef source ) Open( SFXAnsiStringConstRef url , SFXAnsiStringConstRef method , SFXBufferConstRef data ) Open( SFXAnsiStringConstRef url , SFXAnsiStringConstRef method , SFXAnsiStringConstRef data ) Open( SFXAnsiStringConstRef url , SFXAnsiStringConstRef method ) 指定した URL のページを取得して、レンダリングを開始します。
|
| SFCError |
Previous(
SInt32 n = 1
) 指定した履歴を戻り、ページの再取得と再レンダリングを行います。
|
| Void |
Reload( Void )
現在表示しているページを再取得して再描画します。
|
| SFCError |
SetAuthorizeData(
SFXAnsiStringConstRef user
, SFXAnsiStringConstRef passwd
, SFXAnsiStringConstRef url
) HTTP ベーシック認証の情報を設定します。
|
| SFCError |
SetHistorySize(
UInt32 size
) 履歴リストの大きさを設定します。
|
| SFCError |
SetIndent(
SInt32 pixel
) インデントの幅を設定します。( 単位 : ピクセル )
|
| SFCError |
SetInlineEditEnable(
Bool enable
)
文字をインライン入力するか設定します。
|
| SFCError |
SetLinkColor(
SFXRGBColorConstRef color
) リンク文字列の表示色を設定します。
|
| SFCError |
SetParagraphSpacing(
SInt32 pixel
) 段落間の行間の長さを設定します。( 単位 : ピクセル )
|
| SFCError |
SetScrollbarEnable(
Bool enable
) スクロールバーの有無を設定します。
|
| SFCError |
SetScrollbarWidth(
SInt32 pixel
) スクロールバーの幅を設定します。( 単位 : ピクセル )
|
| SFCError |
SetTextColor(
SFXRGBColorConstRef color
) テキストの表示色を設定します。
|
| Void |
SetWeb(
SFBWebSmpConstRef web
) IWeb インターフェースを設定します。
|
| Void |
Stop( Void )
通信、あるいはレンダリングの処理を中断します。
|
| SFCError |
UnsetAuthorizeData( Void ) HTTP ベーシック認証の情報を設定を取り消します。
|
| Void |
UnsetWeb( Void )
SetWeb の設定を取り消します。
|
| Bool |
ClearHandler( Void )
(SFRResponder から継承)
[ハンドラ] ターゲット状態を解除、またはレスポンダを破棄します。
|
| Bool |
Compare(
SFCType type
, SFCType attribute
, BehaviorType behavior
)
(SFRResponder から継承)
タイプ、アトリビュート、振る舞いが一致するか調べます。
|
| Bool |
FocusDown(
Bool repeat = true
)
(SFRResponder から継承)
1つ下のレスポンダにフォーカスを移動します。
|
| Bool |
FocusDownHandler( Void )
(SFRResponder から継承)
[ハンドラ] 1つ下のレスポンダにフォーカスを移動します。
|
| Bool |
FocusLeft(
Bool repeat = true
)
(SFRResponder から継承)
1つ左のレスポンダにフォーカスを移動します。
|
| Bool |
FocusLeftHandler( Void )
(SFRResponder から継承)
[ハンドラ] 1つ左のレスポンダにフォーカスを移動します。
|
| Bool |
FocusNext(
Bool repeat = true
)
(SFRResponder から継承)
1つ後の兄弟レスポンダにフォーカスを移動します。
|
| Bool |
FocusNextHandler( Void )
(SFRResponder から継承)
[ハンドラ] 1つ後の兄弟レスポンダにフォーカスを移動します。
|
| Bool |
FocusPrevious(
Bool repeat = true
)
(SFRResponder から継承)
1つ前の兄弟レスポンダにフォーカスに移動します。
|
| Bool |
FocusPreviousHandler( Void )
(SFRResponder から継承)
[ハンドラ] 1つ前の兄弟レスポンダにフォーカスを移動します。
|
| Bool |
FocusRight(
Bool repeat = true
)
(SFRResponder から継承)
1つ右のレスポンダにフォーカスを移動します。
|
| Bool |
FocusRightHandler( Void )
(SFRResponder から継承)
[ハンドラ] 1つ右のレスポンダにフォーカスを移動します。
|
| Bool |
FocusUp(
Bool repeat = true
)
(SFRResponder から継承)
1つ上のレスポンダにフォーカスを移動します。
|
| Bool |
FocusUpHandler( Void )
(SFRResponder から継承)
[ハンドラ] 1つ上のレスポンダにフォーカスを移動します。
|
| SFCType |
GetAttribute( Void )
(SFRResponder から継承)
アトリビュートを取得します。
|
| SFRResponderPtr |
GetBack(
SFCType type = TYPE_WILDCARD
, SFCType attribute = ATTRIBUTE_WILDCARD
, BehaviorType behavior = STATUS_VISIBLE | STATUS_ENABLE
)
(SFRResponder から継承)
検索条件に一致する、最背面の子レスポンダを取得します。
|
| SFXRectangleConstRef |
GetBaseBound( Void )
(SFRResponder から継承)
所有関係の親レスポンダのコンテント座標系でベース領域を取得します。
|
| SFXRectangle |
GetBaseWorld( Void )
(SFRResponder から継承)
ベース領域を取得します。
|
| SFXRectangleConstRef |
GetContentBound( Void )
(SFRResponder から継承)
ベース領域の座標系でコンテント領域を取得します。
|
| SFXRectangle |
GetContentWorld( Void )
(SFRResponder から継承)
コンテント領域を取得します。
|
| SFRResponderPtr |
GetDirector( Void )
(SFRResponder から継承)
所有関係の親レスポンダを取得します。
|
| SFRResponderPtr |
GetFocus( Void )
(SFRResponder から継承)
所有関係の子階層のレスポンダでフォーカスを持つレスポンダを取得します。
|
| SFXMargin |
GetFrameMargin( Void )
(SFRResponder から継承)
ベース領域とコンテント領域の間のマージンを取得します。
|
| SFRResponderPtr |
GetFront(
SFCType type = TYPE_WILDCARD
, SFCType attribute = ATTRIBUTE_WILDCARD
, BehaviorType behavior = STATUS_VISIBLE | STATUS_ENABLE
)
(SFRResponder から継承)
検索条件に一致する、最前面の子レスポンダを取得します。
|
| SInt16 |
GetIndexBackward(
SFCType type = TYPE_WILDCARD
, SFCType attribute = ATTRIBUTE_WILDCARD
, BehaviorType behavior = STATUS_VISIBLE | STATUS_ENABLE
)
(SFRResponder から継承)
検索条件に一致する兄弟レスポンダの中で、最背面から何番目であるかを取得します。
|
| SInt16 |
GetIndexForward(
SFCType type = TYPE_WILDCARD
, SFCType attribute = ATTRIBUTE_WILDCARD
, BehaviorType behavior = STATUS_VISIBLE | STATUS_ENABLE
)
(SFRResponder から継承)
検索条件に一致する兄弟レスポンダの中で、最前面から何番目であるかを取得します。
|
| Bool |
GetInheritEnable( Void )
(SFRResponder から継承)
所有関係の親レスポンダも含めた、レスポンダの応答可能 / 不可能の状態を取得します。
|
| Bool |
GetInheritFocus( Void )
(SFRResponder から継承)
所有関係の親レスポンダも含めた、レスポンダのフォーカス / 非フォーカスの状態を取得します。
|
| Bool |
GetInheritTarget( Void )
(SFRResponder から継承)
所有関係の親レスポンダも含めた、レスポンダのターゲット / 非ターゲットの状態を取得します。
|
| Bool |
GetInheritVisible( Void )
(SFRResponder から継承)
所有関係の親レスポンダも含めた、レスポンダの可視 / 不可視の状態を取得します。
|
| SFRResponderPtr |
GetLeft(
SFCType type = TYPE_WILDCARD
, SFCType attribute = ATTRIBUTE_WILDCARD
, BehaviorType behavior = STATUS_VISIBLE | STATUS_ENABLE
)
(SFRResponder から継承)
グループ化されているレスポンダのうち、検索条件に一致する、1つ左(1つ前)のレスポンダを取得します。
|
| SInt16 |
GetMoveInterval( Void )
(SFRResponder から継承)
一回あたりの移動ピクセル数を取得します。
|
| SInt16 |
GetMoveMargin( Void )
(SFRResponder から継承)
子レスポンダを移動できないコンテント領域(但し、仮想領域が設定されている場合は仮想領域)の縁からのマージンをピクセル数で取得します。
|
| SFRResponderPtr |
GetNext(
SFCType type = TYPE_WILDCARD
, SFCType attribute = ATTRIBUTE_WILDCARD
, BehaviorType behavior = STATUS_VISIBLE | STATUS_ENABLE
, Bool repeat = true
)
(SFRResponder から継承)
検索条件に一致する、1つ背面にある兄弟レスポンダを取得します。
|
| SFRResponderPtr |
GetNthBackward(
SInt16 index
, SFCType type = TYPE_WILDCARD
, SFCType attribute = ATTRIBUTE_WILDCARD
, BehaviorType behavior = STATUS_VISIBLE | STATUS_ENABLE
)
(SFRResponder から継承)
検索条件に一致する、最背面から N 番目の子レスポンダを取得します。
|
| SFRResponderPtr |
GetNthForward(
SInt16 index
, SFCType type = TYPE_WILDCARD
, SFCType attribute = ATTRIBUTE_WILDCARD
, BehaviorType behavior = STATUS_VISIBLE | STATUS_ENABLE
)
(SFRResponder から継承)
検索条件に一致する、最前面から N 番目の子レスポンダを取得します。
|
| SFRResponderPtr |
GetPrevious(
SFCType type = TYPE_WILDCARD
, SFCType attribute = ATTRIBUTE_WILDCARD
, BehaviorType behavior = STATUS_VISIBLE | STATUS_ENABLE
, Bool repeat = true
)
(SFRResponder から継承)
検索条件に一致する、1つ前面にある兄弟レスポンダを取得します。
|
| VoidPtr |
GetReference( Void )
(SFRResponder から継承)
ユーザーが自由に設定できるリファレンス値を取得します。
|
| SFRResponderPtr |
GetRight(
SFCType type = TYPE_WILDCARD
, SFCType attribute = ATTRIBUTE_WILDCARD
, BehaviorType behavior = STATUS_VISIBLE | STATUS_ENABLE
)
(SFRResponder から継承)
グループ化されているレスポンダのうち、検索条件に一致する、1つ右(ひとつ後)のレスポンダを取得します。
|
| SInt16 |
GetScrollInterval( Void )
(SFRResponder から継承)
仮想領域をスクロールする単位を取得します。(ピクセル数)
|
| Bool |
GetStatusEnable( Void )
(SFRResponder から継承)
応答可能 / 不可能 フラグを取得します。
|
| Bool |
GetStatusFocus( Void )
(SFRResponder から継承)
フォーカス / 非フォーカス フラグを取得します。
|
| Bool |
GetStatusTarget( Void )
(SFRResponder から継承)
ターゲット / 非ターゲット フラグを取得します。
|
| Bool |
GetStatusVisible( Void )
(SFRResponder から継承)
可視 / 不可視 フラグを取得します。
|
| SFXGrid |
GetTranslate( Void )
(SFRResponder から継承)
コンテント座標系での仮想領域の原点座標を取得します。
|
| SInt16 |
GetTravelMargin( Void )
(SFRResponder から継承)
SFRResponder::Travel 関数によって、コンテント領域外にある仮想領域の長方形を
自動的にコンテント領域内にスクロールさせるときのコンテント領域の縁からのマージンをピクセル数で取得します。
|
| SFCType |
GetType( Void )
(SFRResponder から継承)
タイプを取得します。
|
| SFXRectangleConstRef |
GetVirtualBound( Void )
(SFRResponder から継承)
仮想領域をコンテント領域の座標系で取得します。
|
| SFXRectangle |
GetVirtualWorld( Void )
(SFRResponder から継承)
仮想領域を取得します。
|
| Void |
Group(
SFRResponderPtr with
)
(SFRResponder から継承)
他のレスポンダとグループ化します。
|
| Void |
GroupMove(
SFXSizeConstRef size
)
(SFRResponder から継承)
グループ化されているレスポンダすべてを移動します。
|
| Void |
GroupScroll(
SFXSizeConstRef size
)
(SFRResponder から継承)
グループ化されているレスポンダすべての仮想領域をスクロールします。
|
| Void |
GroupSelect( Void )
(SFRResponder から継承)
グループ化されているレスポンダすべてを最前面に移動します。
|
| Void |
GroupStatusEnable(
Bool enable
)
(SFRResponder から継承)
グループ化されているレスポンダすべてに対して、応答可能 / 不可能フラグを設定します。
|
| Void |
GroupStatusVisible(
Bool visible
)
(SFRResponder から継承)
グループ化されているレスポンダすべてに対して、可視 / 不可視フラグを設定します。
|
| Void |
InvalidateBase( Void )
(SFRResponder から継承)
InvalidateBase( SFXRectangleConstRef rect ) (SFRResponder から継承) ベース領域内の再描画領域を登録します。
|
| Void |
InvalidateContent( Void )
(SFRResponder から継承)
InvalidateContent( SFXRectangleConstRef rect ) (SFRResponder から継承) コンテント領域内の再描画領域を登録します。
|
| Void |
InvalidateVirtual( Void )
(SFRResponder から継承)
InvalidateVirtual( SFXRectangleConstRef rect ) (SFRResponder から継承) 仮想領域内の再描画領域を登録します。
|
| Bool |
Invoke(
SFXEventConstRef event
)
(SFRResponder から継承)
イベントを送信します。
|
| Bool |
MoveDownHandler( Void )
(SFRResponder から継承)
[ハンドラ] レスポンダを下に移動します。
|
| Bool |
MoveLeftHandler( Void )
(SFRResponder から継承)
[ハンドラ] レスポンダを左に移動します。
|
| Bool |
MoveRightHandler( Void )
(SFRResponder から継承)
[ハンドラ] レスポンダを右に移動します。
|
| Bool |
MoveUpHandler( Void )
(SFRResponder から継承)
[ハンドラ] レスポンダを上に移動します。
|
| SFCError |
RegisterHandler(
HandlerEnum timing
, SFRHandlerSPP spp
, VoidPtr ref
)
(SFRHandler から継承)
RegisterHandler( SFCEventEnum btype , SFCEventEnum etype , UInt16 bp16 , UInt16 ep16 , HandlerEnum timing , SFRHandlerSPP spp , VoidPtr ref ) (SFRHandler から継承) RegisterHandler( SFCEventEnum btype , SFCEventEnum endType , UInt16 p16 , HandlerEnum timing , SFRHandlerSPP spp , VoidPtr ref ) (SFRHandler から継承) RegisterHandler( SFCEventEnum btype , SFCEventEnum etype , HandlerEnum timing , SFRHandlerSPP spp , VoidPtr ref ) (SFRHandler から継承) RegisterHandler( SFCEventEnum type , UInt16 bp16 , UInt16 ep16 , HandlerEnum timing , SFRHandlerSPP spp , VoidPtr ref ) (SFRHandler から継承) RegisterHandler( SFCEventEnum type , UInt16 p16 , HandlerEnum timing , SFRHandlerSPP spp , VoidPtr ref ) (SFRHandler から継承) RegisterHandler( SFCEventEnum type , HandlerEnum timing , SFRHandlerSPP spp , VoidPtr ref ) (SFRHandler から継承) ハンドラを登録します。
|
| SFCError |
RegisterTracer(
BehaviorType behavior
, TracerEnum trace
)
(SFRTracer から継承)
RegisterTracer( SFCEventEnum bgnType , SFCEventEnum endType , UInt16 bgnP16 , UInt16 endP16 , BehaviorType behavior , TracerEnum trace ) (SFRTracer から継承) RegisterTracer( SFCEventEnum bgnType , SFCEventEnum endType , UInt16 p16 , BehaviorType behavior , TracerEnum trace ) (SFRTracer から継承) RegisterTracer( SFCEventEnum bgnType , SFCEventEnum endType , BehaviorType behavior , TracerEnum trace ) (SFRTracer から継承) RegisterTracer( SFCEventEnum type , UInt16 bgnP16 , UInt16 endP16 , BehaviorType behavior , TracerEnum trace ) (SFRTracer から継承) RegisterTracer( SFCEventEnum type , UInt16 p16 , BehaviorType behavior , TracerEnum trace ) (SFRTracer から継承) RegisterTracer( SFCEventEnum type , BehaviorType behavior , TracerEnum trace ) (SFRTracer から継承) トレーサを登録します。
|
| Void |
Scroll(
SFXSizeConstRef size
)
(SFRResponder から継承)
仮想領域をスクロールします。
|
| Bool |
ScrollDownHandler( Void )
(SFRResponder から継承)
[ハンドラ] 仮想領域を下にスクロールします。
|
| Bool |
ScrollLeftHandler( Void )
(SFRResponder から継承)
[ハンドラ] 仮想領域を左にスクロールします。
|
| Bool |
ScrollRightHandler( Void )
(SFRResponder から継承)
[ハンドラ] 仮想領域を右にスクロールします。
|
| Bool |
ScrollUpHandler( Void )
(SFRResponder から継承)
[ハンドラ] 仮想領域を上にスクロールします。
|
| Void |
Select( Void )
(SFRResponder から継承)
レスポンダを最前面に移動します。
|
| Bool |
SelectHandler( Void )
(SFRResponder から継承)
[ハンドラ] レスポンダをターゲット状態にします。
|
| Void |
SetBaseBound(
SFXRectangleConstRef rect
)
(SFRResponder から継承)
所有関係の親レスポンダのコンテント座標系でベース領域を設定します。
|
| Void |
SetContentBound(
SFXRectangleConstRef rect
)
(SFRResponder から継承)
ベース領域の座標系でコンテント領域を設定します。
|
| Void |
SetFrameMargin(
SFXMarginConstRef param
)
(SFRResponder から継承)
ベース領域とコンテント領域の間のマージンを設定します。
|
| Void |
SetMoveInterval(
SInt16 interval
)
(SFRResponder から継承)
一回あたりの移動ピクセル数を設定します。
|
| Void |
SetMoveMargin(
SInt16 margin
)
(SFRResponder から継承)
子レスポンダを移動できないコンテント領域(但し、仮想領域が設定されている場合は仮想領域)の縁からのマージンをピクセル数で設定します。
|
| Void |
SetReference(
VoidPtr ref
)
(SFRResponder から継承)
ユーザーが自由に設定できるリファレンス値を設定します。
|
| Void |
SetScrollInterval(
SInt16 interval
)
(SFRResponder から継承)
仮想領域をスクロールする単位を取得します。(ピクセル数)
|
| Void |
SetStatusEnable(
Bool enable
)
(SFRResponder から継承)
応答可能 / 不可能フラグを設定します。
|
| Void |
SetStatusFocus(
Bool focus
)
(SFRResponder から継承)
フォーカス / 非フォーカス フラグを設定します。
|
| Void |
SetStatusTarget(
Bool target
)
(SFRResponder から継承)
ターゲット / 非ターゲット フラグを設定します。
|
| Void |
SetStatusVisible(
Bool visible
)
(SFRResponder から継承)
可視 / 不可視フラグを設定します。
|
| Void |
SetTranslate(
SFXGridConstRef point
)
(SFRResponder から継承)
コンテント座標系での仮想領域の原点座標を設定します。
|
| Void |
SetTravelMargin(
SInt16 margin
)
(SFRResponder から継承)
SFRResponder::Travel 関数によって、コンテント領域外にある仮想領域の長方形を
自動的にコンテント領域内にスクロールさせるときのコンテント領域の縁からのマージンをピクセル数で設定します。
|
| Void |
SetVirtualBound(
SFXRectangleConstRef rect
)
(SFRResponder から継承)
仮想領域をコンテント領域の座標系で設定します。
|
| Void |
Travel(
SFXRectangleConstRef rect
)
(SFRResponder から継承)
指定した長方形がコンテント領域に入るように、レスポンダの仮想領域をスクロールします。
|
| Void |
Ungroup( Void )
(SFRResponder から継承)
グループ化したレスポンダを解除します。
|
| Void |
UnregisterHandler(
HandlerEnum timing
)
(SFRHandler から継承)
UnregisterHandler( SFCEventEnum bgnType , SFCEventEnum endType , UInt16 bgnP16 , UInt16 endP16 , HandlerEnum timing ) (SFRHandler から継承) UnregisterHandler( SFCEventEnum bgnType , SFCEventEnum endType , UInt16 p16 , HandlerEnum timing ) (SFRHandler から継承) UnregisterHandler( SFCEventEnum bgnType , SFCEventEnum endType , HandlerEnum timing ) (SFRHandler から継承) UnregisterHandler( SFCEventEnum type , UInt16 bgnP16 , UInt16 endP16 , HandlerEnum timing ) (SFRHandler から継承) UnregisterHandler( SFCEventEnum type , UInt16 p16 , HandlerEnum timing ) (SFRHandler から継承) UnregisterHandler( SFCEventEnum type , HandlerEnum timing ) (SFRHandler から継承) 登録されているハンドラを削除します。
|
| Void |
UnregisterTracer( Void )
(SFRTracer から継承)
UnregisterTracer( SFCEventEnum bgnType , SFCEventEnum endType , UInt16 bgnP16 , UInt16 endP16 ) (SFRTracer から継承) UnregisterTracer( SFCEventEnum bgnType , SFCEventEnum endType , UInt16 p16 ) (SFRTracer から継承) UnregisterTracer( SFCEventEnum bgnType , SFCEventEnum endType ) (SFRTracer から継承) UnregisterTracer( SFCEventEnum type , UInt16 bgnP16 , UInt16 endP16 ) (SFRTracer から継承) UnregisterTracer( SFCEventEnum type , UInt16 p16 ) (SFRTracer から継承) UnregisterTracer( SFCEventEnum type ) (SFRTracer から継承) 登録されているトレーサを削除します。
|
| プロテクト関数 | |
|---|---|
| Void |
DoneNotifyHandler(
DoneNotifyConstRef notify
) [ハンドラ] レンダリングの終了を通知します。
|
| Void |
FocusNotifyHandler(
FocusNotifyConstRef notify
) [ハンドラ] カーソルの移動を通知します。
|
| Void |
JumpNotifyHandler(
JumpNotifyConstRef notify
) [ハンドラ] リンクが押されたことを通知します。
|
| Bool |
ResponseNotifyHandler(
ResponseNotifyConstRef notify
) [ハンドラ] サーバーへの接続が完了したことを通知します。
|
| Bool |
GetAppearanceTransparent( Void )
(SFRResponder から継承)
APPEARANCE_TRANSPARENT フラグを取得します。
|
| Bool |
GetPropertyClosable( Void )
(SFRResponder から継承)
PROPERTY_CLOSABLE フラグを取得します。
|
| Bool |
GetPropertyDirect( Void )
(SFRResponder から継承)
PROPERTY_DIRECT フラグを取得します。
|
| Bool |
GetPropertyMovable( Void )
(SFRResponder から継承)
PROPERTY_MOVABLE フラグを取得します。
|
| Bool |
GetPropertyScrollable( Void )
(SFRResponder から継承)
PROPERTY_SCROLLABLE フラグを取得します。
|
| Bool |
GetPropertySelect( Void )
(SFRResponder から継承)
PROPERTY_SELECT フラグを取得します。
|
| Bool |
GetPropertyTravel( Void )
(SFRResponder から継承)
PROPERTY_TRAVEL フラグを取得します。
|
| HandlerRecConstPtr |
SearchHandler(
SFXEventConstRef event
, HandlerEnum timing
)
(SFRHandler から継承)
指定したイベントに一致するハンドラを検索します。
|
| TracerRecConstPtr |
SearchTracer(
SFXEventConstRef event
)
(SFRTracer から継承)
指定したイベントに一致するトレーサを検索します。
|
| 型 |
|---|
|
DEFAULT
パラメーターの初期値に関する列挙型です。
|
|
DoneNotify
レンダリング終了時の情報を保持するためのクラスです。
|
|
FocusNotify
ブラウザのフォーカス移動情報を保持するためのクラスです。
|
|
HistoryEntry
履歴の項目を表す構造体です。
|
|
JumpNotify
ブラウザで押されたリンクの情報を保持するためのクラスです。
|
|
ResponseNotify
レンダリング終了時の情報を保持するためのクラスです。
|
|
BehaviorEnum
(SFRControl から継承)
コントロールの振る舞いを表します。
|
|
HandlerEnum
(SFRHandler から継承)
ハンドラの呼び出されるタイミングを表します。
|
|
SFRHandlerSPP
(SFRHandler から継承)
コールバック関数の型です。
|
|
TracerEnum
(SFRTracer から継承)
トレース順序を表します。
|
|
TracerTraceMPP
(SFRTracer から継承)
コールバック関数の型です。
|
[ public ]
SFRBrowserControl(
SFRResponderPtr director // 親のレスポンダ
SFXRectangleConstRef rect // コントロールのサイズ
BehaviorType behavior = BEHAVIOR_SFRBROWSERCONTROL // 振る舞い
SFCType attribute = ATTRIBUTE_SFRBROWSERCONTROL // アトリビュート
);データメンバの初期化を行い、ページのレンダリングに使う IHtmlViewer インスタンスを生成します。
通信に使う IWeb インターフェースはここでは生成されません。
[ public, virtual ] ~SFRBrowserControl(Void);
通信、 HTML のレンダリングを中断し、内部で確保した全てのリソースを解放します。
[ public ] SFCError ClearHistory(Void);
SFERR_NO_ERROR を返します。
現在の履歴番号は 0 に戻ります。
[ protected, virtual ] Void DoneNotifyHandler( DoneNotifyConstRef notify // 通知情報 );
通知情報です。 HTTP のレスポンス コード、 BREW のエラーコードを取得できます。
標準の実装では、何も処理しません。
何か処理するには、SFRBrowserControl::DoneNotifyHandler 関数をオーバーロードする必要があります。
SFRBrowserControl::ResponseNotifyHandler とは呼び出されるタイミングが異なります。
オーバーロードして利用する例です。
#include <SFRResponder/SFRControl/SFRBrowserControl.hpp>
class MyBrowserControl : public SFRBrowserControl {
public:
MyBrowserControl(SFRResponderPtr director, SFXRectangleConstRef rect)
: SFRBrowserControl(director, rect) {
}
protected:
virtual Void DoneNotifyHandler(DoneNotifyConstRef notify) {
if (notify.GetErrorCode() != SFERR_NO_ERROR) {
// 通信エラーならエラーダイアログを表示する
ErrorDialog(notify.GetErrorCode());
}
else if (WEB_SUCCEEDED(notify.GetDoneCode())) {
// HTTP エラーなら警告ダイアログを表示する
WarningDialog(notify.GetResposenCode());
}
}
};
SFRBrowserControl::DoneNotify | SFRBrowserControl::FocusNotifyHandler | SFRBrowserControl::JumpNotifyHandler | SFRBrowserControl::ResponseNotifyHandler
[ public, const ] SInt32 FindElement( ACharConstPtr element // 検索する要素名 SInt32 no // 取得する要素の番号 );
検索する要素名を設定します。
検索する要素の何番目の位置を取得するかを設定します。
0 を指定すると、 element と一致する最初の要素の位置を返します。 n を指定すると、 element と一致する n + 1 番目の要素の位置を返します。
見つかった要素の位置を返します。 見つからなければ負の値を返します。
現在表示しているページから、指定した要素を検索します。 戻り値(要素の位置)は、SFRBrowserControl::GetElementText 関数や SFRBrowserControl::GetElementAttribute 関数で使います。
[ protected, virtual ] Void FocusNotifyHandler( FocusNotifyConstRef notify // 通知情報 );
通知情報です。 現在カーソルがあたっているタグの位置、種類、状態を取得できます。
標準の関数では、何も処理しません。
何か処理するには、SFRBrowserControl::FocusNotifyHandler 関数をオーバーロードする必要があります。
SFRBrowserControl::FocusNotify | SFRBrowserControl::DoneNotifyHandler | SFRBrowserControl::JumpNotifyHandler | SFRBrowserControl::ResponseNotifyHandler
[ public, const ] HistoryEntry GetCurrentHistory(Void);
現在表示しているページの履歴内容を返します。
[ public, const ] UInt32 GetCurrentHistoryIndex(Void);
現在表示しているページの履歴番号を返します。
SFRBrowserControl::Move 関数、 SFRBrowserControl::Previous 関数、 SFRBrowserControl::Next 関数で増減し、 SFRBrowserControl::ClearHistory 関数で 0 に初期化されます。
SFRBrowserControl::Move | SFRBrowserControl::Previous | SFRBrowserControl::Next | SFRBrowserControl::ClearHistory
[ public, const ] SFXAnsiString GetElementAttribute( SInt32 elementIndex // 要素の位置 ACharConstPtr attr // 属性名 );
要素の位置を指定します。 この引数には、 SFRBrowserControl::FindElement 関数の戻り値を指定します。
属性名を指定します。
属性の内容を返します。指定の属性が見付からなければ空文字列を返します。
現在表示しているページから、指定の要素の属性を取得します。 指定の属性が見付からなければ空文字列を返します。
![]() |
値がない属性の取扱い |
|---|---|
<HR NOSHADE> のように、値が設定されていない属性がある要素で、 NOSHADE 属性の内容を取得すると、 戻り値は属性名と同じ "NOSHADE" 文字列となります。 | |
[ public, const ] SFXAnsiString GetElementText( SInt32 elementIndex // 要素の位置 );
要素の位置を指定します。 この引数には、 SFRBrowserControl::FindElement 関数の戻り値を指定します。
要素の内容を返します。要素の中身がない場合は空文字列を返します。
現在表示しているページから、指定の要素の内容を取得します。
[ public, const ]
HistoryEntry GetHistory(
UInt32 historyIndex = 0 // 履歴番号
);履歴番号を指定します。 指定しなければ、履歴番号 0 番(最後に訪れた履歴内容)になります。
履歴内容を返します。 履歴情報がない、もしくは無効な履歴番号を指定した場合は、 履歴構造体 SFRBrowserControl::HistoryEntry の url 変数の値は空文字列に設定されます。
[ public, const ] HistoryEntryConstPtr GetHistoryList(Void);
履歴リストへのポインターです。
履歴リストは SFRBrowserControl::HistoryEntry 構造体の配列です。そのサイズは SFRBrowserControl::GetHistorySize 関数で取得できます。
配列の先頭は一番新しい履歴となっており、履歴番号と配列のインデックスは一致します。
履歴情報が設定されていない部分は、履歴構造体 SFRBrowserControl::HistoryEntry の url 変数は空文字列に設定されます。
![]() |
使用上の注意 |
|---|---|
履歴リストの内容は書き換えてはいけません。 | |
デバッグ用に全履歴のタイトルと URL を表示します。
void PrintHistoryList(SFBrowserControlConstRef browser)
{
int i;
SFBrowserControl::HistoryEntryConstPtr historyList = browser.GetHistoryList();
for (i=0; i < browser.GetHistorySize(); i++) {
DBGPRINTF("title '%s' url %s",
(ACharConstPtr)historyList[i].title, (ConstACharPtr)historyList[i].url);
}
}
[ public, const ] UInt32 GetHistorySize(Void);
履歴リストのエントリ数を返します。
SFRBrowserControl::Move 関数や SFRBrowserControl::GetHistory 関数など で使用する履歴番号は、履歴リストのエントリ数より小さな値である必要があります。
※ 履歴リストは SFRBrowserControl::GetHistoryList 関数を使って取得できます。
SFRBrowserControl::GetHistory | SFRBrowserControl::GetHistoryList | SFRBrowserControl::Move | SFRBrowserControl::SetHistorySize
[ public, const ] SInt32 GetIndent(Void);
インデントの幅を返します。( 単位 : ピクセル )
[ public, const ] SFXRGBColor GetLinkColor(Void);
リンク文字列の表示色を返します。
[ public, const ] SInt32 GetParagraphSpacing(Void);
段落間の行間の長さを返します。( 単位 : ピクセル )
[ public, const ] SInt32 GetScrollbarWidth(Void);
設定されているスクロールバーの幅を返します。( 単位 : ピクセル )
[ public, const ] SFXRGBColor GetTextColor(Void);
HTML 表示の本文の表示色を返します。
[ public, const ] SFBWebSmpConstRef GetWeb(Void);
SFRBrowserControl::SetWeb 関数で設定された IWeb インターフェースを返します。 IWeb インターフェースが設定されていない場合は、null を返します。
![]() |
WebOpt 指定時の注意 |
|---|---|
|
他の用途で利用するまでは、IWeb インターフェースに設定した WebOpt データを保持する必要があります。 詳しくは、BREW API リファレンス、IWeb インターフェースの「 WEBOPT の寿命に関する注意事項 」を参照してください。 | |
![]() |
サスペンド時の振る舞い |
|---|---|
|
サスペンドしたとき、WebOpt の情報はリセットされ IWeb インターフェースを内部で作成する設定(デフォルト状態)に戻ります。 サスペンド前の IWeb インターフェースを使うには、レジューム時に WebOpt データを再設定する必要があります。 | |
[ public, const ] Bool IsBusy(Void);
[ public, const ] Bool IsInlineEditEnable(Void);
[ public, const ] Bool IsScrollbarEnable(Void);
[ protected, virtual ] Void JumpNotifyHandler( JumpNotifyConstRef notify // 通知情報 );
通知情報を返します。 押されたリンクのリンク先 URL 、 HTTP メソッド、 POST データを保持しています。
リンク先の url を自動的に Open します。
リンクが http:// 、https:// 、file:// 、res: 以外のスキームのときは何もしません。
標準以外の処理を行うときは、SFRBrowserControl::JumpNotifyHandler 関数をオーバーライドする必要があります。
SFRBrowserControl::JumpNotifyHandler 関数をオーバーライドして使うサンプルコードです。
#include <SFRResponder/SFRControl/SFRBrowserControl.hpp>
class MyBrowserControl : public SFRBrowserControl {
public:
MyBrowserControl(SFRResponderPtr director, SFXRectangleConstRef rect)
: SFRBrowserControl(director, rect) {
}
protected:
virtual Void JumpNotifyHandler(JumpNotifyConstRef notify) {
if (notify.GetUrl().StartWith("mailto:")) {
// mailto:ならメーラを呼ぶ
Mailer(notify.GetUrl());
}
else {
// それ以外なら標準ハンドラを呼ぶ
SFRBrowserControl::JumpNotifyHandler(notify);
}
}
};
SFRBrowserControl::JumpNotify | SFRBrowserControl::Open | SFRBrowserControl::DoneNotifyHandler | SFRBrowserControl::FocusNotifyHandler | SFRBrowserControl::ResponseNotifyHandler
[ public ] SFCError Load( SFXAnsiStringConstRef data // HTML データ );
[ public ] SFCError Load( SFXAnsiStringConstRef data // HTML データ SFXAnsiStringConstRef url // 基準となる URL );
HTML とみなす文字列です。
基準となる URL です。 HTML データ内にある相対 URL 表記は、 この引数で指定された URL からの相対パスと解釈されます。
インライン画像は取得できしだい表示されます。
![]() |
通信に関するエラー |
|---|---|
|
通信に関するエラーは戻り値では取得できません。 レンダリングの終了や、通信に関するエラーを取得する場合は、 SFRBrowserControl クラスを継承して、 SFRBrowserControl::DoneNotifyHandler 関数をオーバロードするクラスを作成する必要があります。 | |