コード例 #1
0
ファイル: dynamic_input_area.c プロジェクト: kjk/noah-palm
/**
 * Performs detection and initialization of Sony CLIE-specific features.
 * @param diaSettings structure used to store detected configuration.
 * @return error code.
 */
static Err SonySilkLibInit(DIA_Settings* diaSettings) 
{
    UInt32  vskVersion=0;
    Err     error=SysLibFind(sonySysLibNameSilk, &diaSettings->sonySilkLibRefNum);

    if (sysErrLibNotFound==error) {
        error=SysLibLoad('libr', sonySysFileCSilkLib, &diaSettings->sonySilkLibRefNum);
        if (!error) DIA_SetFlag(diaSettings, diaLoadedSonySilkLib);
    }
    if (!error) {
        DIA_SetFlag(diaSettings, diaHasSonySilkLib);
        error = FtrGet(sonySysFtrCreator, sonySysFtrNumVskVersion, &vskVersion);
        if (error) {
            error=SilkLibOpen(diaSettings->sonySilkLibRefNum);
            if (error) goto OnError;
            SilkLibEnableResize(diaSettings->sonySilkLibRefNum);
        }
        else if (vskVersionNum2==vskVersion) {
            error=VskOpen(diaSettings->sonySilkLibRefNum);
            if (error) goto OnError;
            VskSetState(diaSettings->sonySilkLibRefNum, vskStateEnable, vskResizeVertically);			
        }
        else {
            error=VskOpen(diaSettings->sonySilkLibRefNum);
            if (error) goto OnError;
            VskSetState(diaSettings->sonySilkLibRefNum, vskStateEnable, vskResizeHorizontally);			
        }
    }
    else error=errNone;
OnError:
    return error;
}
コード例 #2
0
ファイル: DIA.c プロジェクト: TimofonicJunkRoom/plucker-1
void SetDIAAllowResize( Boolean allow )
{
    switch ( hardware ) {
#ifdef SUPPORT_DIA_SONY
        case DIA_HARDWARE_SONY2:
            if ( allow ) {
                /* If available, enable horizontal resize */
                if ( 0x03 <= VskGetAPIVersion( sonyRefNum ) )
                    VskSetState( sonyRefNum, vskStateEnable,
                        vskResizeHorizontally );
                /* Enable vertical resize */
                VskSetState( sonyRefNum, vskStateEnable,
                    vskResizeVertically );
            }
            else {
                VskSetState( sonyRefNum, vskStateEnable, 0 );
            }
            break;
        case DIA_HARDWARE_SONY1:
            if ( allow )
                SilkLibEnableResize( sonyRefNum );
            else
                SilkLibDisableResize( sonyRefNum );

            sony1AllowResize = allow;

            break;
#endif
#ifdef HAVE_PALM_DIA_SDK
        case DIA_HARDWARE_PALM11:
        case DIA_HARDWARE_PALM10:
            PINSetInputTriggerState( allow ? pinInputTriggerEnabled :
                                                 pinInputTriggerDisabled );
            SysSetOrientationTriggerState( allow ?
                sysOrientationTriggerEnabled : sysOrientationTriggerDisabled );
            break;
#endif
        /* Note: On Handera, resizing is always enabled */
        default:
            break;
    }
}
コード例 #3
0
ファイル: sony_support.c プロジェクト: petesh/pocketcity
void
SonySetSilkResizable(UInt8 state)
{
	if (silk_ver == -1)
		return;
	if (silk_ver == 0) {
		if (state) {
			SilkLibEnableResize(silk_ref);
		} else {
			SilkLibResizeDispWin(silk_ref, silkResizeNormal);
			SilkLibDisableResize(silk_ref);
		}
	} else {
		if (!state)
			VskSetState(silk_ref, vskStateEnable, state);
		else if (silk_ver >= 0x03)
			VskSetState(silk_ref, vskStateEnable,
			    vskResizeVertically | vskResizeHorizontally);
		else
			VskSetState(silk_ref, vskStateEnable, 1);
	}
}
コード例 #4
0
ファイル: DIA.c プロジェクト: TimofonicJunkRoom/plucker
void SetDIAState( DIAStateType state )
{
    if ( DIA_HARDWARE_HANDERA == hardware && GetDIAState() == state )
        return;
    switch ( hardware ) {
#ifdef SUPPORT_DIA_SONY
        case DIA_HARDWARE_SONY1:
            switch ( state ) {
                case DIA_STATE_MAX:
                    SilkLibResizeDispWin( sonyRefNum, silkResizeNormal );
                    break;
                case DIA_STATE_MIN:
                    SilkLibResizeDispWin( sonyRefNum, silkResizeToStatus );
                    break;
                case DIA_STATE_NO_STATUS_BAR:
                    SilkLibResizeDispWin( sonyRefNum, silkResizeMax );
                    break;
                default:
                    break;
            }
            break;
        case DIA_HARDWARE_SONY2:
            switch ( state ) {
                case DIA_STATE_MAX:
                    VskSetState( sonyRefNum, vskStateResize, vskResizeMax );
                    break;
                case DIA_STATE_MIN:
                    VskSetState( sonyRefNum, vskStateResize, vskResizeMin );
                    break;
                case DIA_STATE_NO_STATUS_BAR:
                    VskSetState( sonyRefNum, vskStateResize, vskResizeNone );
                    break;
                default:
                    break;
            }
            break;
#endif
#ifdef SUPPORT_DIA_HANDERA
        case DIA_HARDWARE_HANDERA:
            switch ( state ) {
                case DIA_STATE_MAX:
                    SilkMaximizeWindow();
                    break;
                case DIA_STATE_MIN:
                case DIA_STATE_NO_STATUS_BAR:
                    SilkMinimizeWindow();
                    break;
                default:
                    break;
            }
            break;
#endif
#ifdef HAVE_PALM_DIA_SDK
        case DIA_HARDWARE_PALM10:
        case DIA_HARDWARE_PALM11:
            switch ( state ) {
                case DIA_STATE_MAX:
                    PINSetInputAreaState( pinInputAreaOpen );
                    break;
                case DIA_STATE_MIN:
                case DIA_STATE_NO_STATUS_BAR:
                    PINSetInputAreaState( pinInputAreaClosed );
                    break;
                default:
                    break;
            }
            break;
#endif
        default:
            break;
    }
}
コード例 #5
0
ファイル: DIA.c プロジェクト: TimofonicJunkRoom/plucker-1
void SetDIAState( DIAStateType state )
{
    if ( DIA_HARDWARE_HANDERA == hardware && GetDIAState() == state )
        return;

    switch ( hardware ) {
#ifdef SUPPORT_DIA_SONY
        case DIA_HARDWARE_SONY1: {
            Boolean oldAllow;

            oldAllow = sony1AllowResize;

            if ( ! oldAllow )
                SetDIAAllowResize( true );

            switch ( state ) {
                case DIA_STATE_MAX:
                    SilkLibResizeDispWin( sonyRefNum, silkResizeNormal );
                    break;
                case DIA_STATE_MIN:
                    SilkLibResizeDispWin( sonyRefNum, silkResizeToStatus );
                    break;
                case DIA_STATE_NO_STATUS_BAR:
                    SilkLibResizeDispWin( sonyRefNum, silkResizeMax );
                    break;
                default:
                    break;
            }
            break;

            if ( ! oldAllow )
                SetDIAAllowResize( false );
        }

        case DIA_HARDWARE_SONY2: {
            Boolean oldAllow;
            UInt16  allowState;

            if ( errNone == VskGetState( sonyRefNum, vskStateEnable,
                               &allowState ) )
                oldAllow = ( allowState != 0 );
            else
                oldAllow = false;

            if ( ! oldAllow ) {
                SetDIAAllowResize( true );
            }

            switch ( state ) {
                case DIA_STATE_MAX:
                    VskSetState( sonyRefNum, vskStateResize, vskResizeMax );
                    break;
                case DIA_STATE_MIN:
                    VskSetState( sonyRefNum, vskStateResize, vskResizeMin );
                    break;
                case DIA_STATE_NO_STATUS_BAR:
                    VskSetState( sonyRefNum, vskStateResize, vskResizeNone );
                    break;
                default:
                    break;
            }
            break;

            if ( ! oldAllow )
                SetDIAAllowResize( false );
        }
#endif
#ifdef SUPPORT_DIA_HANDERA
        case DIA_HARDWARE_HANDERA:
            switch ( state ) {
                case DIA_STATE_MAX:
                    SilkMaximizeWindow();
                    break;
                case DIA_STATE_MIN:
                case DIA_STATE_NO_STATUS_BAR:
                    SilkMinimizeWindow();
                    break;
                default:
                    break;
            }
            break;
#endif
#ifdef HAVE_PALM_DIA_SDK
        case DIA_HARDWARE_PALM10:
        case DIA_HARDWARE_PALM11:
            switch ( state ) {
                case DIA_STATE_MAX:
                    StatShow();
                    PINSetInputAreaState( pinInputAreaOpen );
                    break;
                case DIA_STATE_MIN:
                    StatShow();
                    PINSetInputAreaState( pinInputAreaClosed );
                    break;
                case DIA_STATE_NO_STATUS_BAR:
                    StatHide();
                    if ( pinInputAreaOpen == PINGetInputAreaState() )
                        PINSetInputAreaState( pinInputAreaClosed );
                    /* extra hide for some devices */
                    if ( GetDIAState() != DIA_STATE_NO_STATUS_BAR )
                        StatHide();
                    break;
                default:
                    break;
            }
            break;
#endif
        default:
            break;
    }
}