ホーム > 製品情報 > SophiaFramework UNIVERSE > チュートリアル > BREW vCalendar スケジューラー

BREW スケジューラー 〜 BREW C++ vCalendar プログラミング 〜

アプリケーションの概要

SyncScheduler アプリクラス

SyncScheduler アプリクラスは TempleteApp クラスVCalCollection オブジェクトを加えたものです。

SFMTYPEDEFCLASS(SyncScheduler)
class SyncScheduler : public SFRApplication {
    SFMSEALCOPY(SyncScheduler)
private:
    VCalCollection _vcalCollection; // VCalCollection オブジェクト
public:
    static SFCInvokerPtr Factory(Void);
    
    /* ↓以下は TempleteApp クラスからそのままコピーした関数 */
    /*   主にダイアログやメニューの処理 */
   
    static SFXRectangle CalculateWindowPosition(Void);
    static SFXRectangle CalculateDialogPosition(SFXMarginConstRef margin,
        SInt16 height);
    static SFXRectangle CalculateMenuPosition(SInt16 limit);
    static SFCError OpenStandardDialog(SFRDialogPtr dialog,
        SFRHandlerSPP procedure, VoidPtr reference);
    static Void CloseStandardDialog(SFRDialogPtr dialog);
    static SFCError OpenCustomDialog(SFRDialogPtr dialog,
        SFRHandlerSPP procedure, VoidPtr reference);
    static Void CloseCustomDialog(SFRDialogPtr dialog);
    static SFCError OpenStandardMenu(SFRMenuPtr menu,
        SFRHandlerSPP procedure, VoidPtr reference);
    static Void CloseStandardMenu(SFRMenuPtr menu);
    
    /* ↑ここまで */
    
    // VCalCollection のインスタンスを取得
    static VCalCollectionPtr GetVCalCollection(Void);
private:
    explicit SyncScheduler(Void) static_throws;
    virtual ~SyncScheduler(Void);
    HANDLER_DECLARE_VOIDSTART(OnAppStart)
    HANDLER_DECLARE_VOIDSTOP(OnAppStop)
    HANDLER_DECLARE_VOIDRESUME(OnAppResume)
    HANDLER_DECLARE_VOIDSUSPEND(OnAppSuspend)
    
    // TempleteApp クラスからそのままコピーしたソフトキー処理用のハンドラ
    static Bool OnSoftkeySHP(SFXEventConstRef event, VoidPtr reference);
};