// -*- C++ -*-
#ifndef _convdisp_h_included_
#define _convdisp_h_included_

// 
#define CAND_WIN_WIDTH 300
#define CAND_WIN_HEIGHT 300

#define CAND_COUNT 12

#include "jmode.h"

class KKContext;
class icxatr;
class CandidateWin;

class Convdisp {
public:
    Convdisp(KKContext *,icxatr *);
    virtual ~Convdisp();
    void set_pe(pe_stat *);
    virtual void update_preedit()=0;
    virtual void candidate_selected(int );
    virtual void update_icxatr()=0;
    virtual void set_focus(){};
    virtual void unset_focus(){};

    // methods for OnTheSpot
protected:
    // ownerはXimIC,生成時にセットされ、KKContextはconvdispより
    // あとからXimICによって破棄される。
    KKContext *mKkContext;
    icxatr *m_atr;
    // 最初は0
    pe_stat *m_pe;
    CandidateWin *m_cands_win;
};

Convdisp *create_convdisp(int style, KKContext *, icxatr *, Connection *);

#endif
/*
 * Local variables:
 *  c-indent-level: 4
 *  c-basic-offset: 4
 * End:
 */
