Module SigCjC_ImageManager.pkg

     1//==============================================================================
     2// Project      : SigCj - VDF Classes for Codejock
     3// File         : SigCjC_ImageManager.pkg
     4// Description  : VDF Class for Codejock control
     5//
     6// Created by   : Ian Smith
     7// Revision     : $Rev: $
     8//                $Date: $
     9//                $Author: $
    10//
    11// Requirements : Visual DataFlex 14.1
    12//                Codejock SuitePro - Version 13.4.2
    13//
    14// Copyright    : (c) 2009 VDF SIG UK
    15//                Visual DataFlex Special Interest Group UK.
    16//                http://www.vdfsig.co.uk/
    17//                dev@vdfsig.co.uk
    18//
    19//                This file is part of SigCj.
    20//
    21//                SigCj is free software: you can redistribute it and/or modify
    22//                it under the terms of the GNU Lesser General Public License
    23//                as published by the Free Software Foundation, either version
    24//                2.1 of the License, or (at your option) any later version.
    25//
    26//                SigCj is distributed in the hope that it will be useful, but
    27//                WITHOUT ANY WARRANTY; without even the implied warranty of
    28//                MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    29//                GNU Lesser General Public License for more details.
    30//
    31//                If you have the complete SigCj workspace then a copy of the
    32//                GNU Lesser General Public License is in the Docs folder. If
    33//                not, see <http://www.gnu.org/licenses/>.
    34//
    35//==============================================================================
    36
    37Use FlexCOM20.pkg
    38
    39// Image State
    40Define OLEXTPImageState for Integer
    41    Define OLExtpImageNormal for 0
    42    Define OLExtpImageDisabled for 1
    43    Define OLExtpImageHot for 2
    44    Define OLExtpImageChecked for 3
    45    Define OLExtpImagePressed for 4
    46
    47Class cSigCjComIImageManagerIcons is a Mixin
    48
    49    { MethodType=Property DesignTime=False }
    50    Function ComDrawReverted Returns Boolean
    51        Boolean retVal
    52        Get ComProperty of (phDispatchDriver(Self)) 6 OLE_VT_BOOL to retVal
    53        Function_Return retVal
    54    End_Function
    55
    56    { MethodType=Property DesignTime=False }
    57    Procedure Set ComDrawReverted Boolean value
    58        Set ComProperty of (phDispatchDriver(Self)) 6 OLE_VT_BOOL to value
    59    End_Procedure
    60
    61    { MethodType=Property DesignTime=False }
    62    Function ComMaskColor Returns OLE_COLOR
    63        OLE_COLOR retVal
    64        Get ComProperty of (phDispatchDriver(Self)) 9 OLE_VT_I4 to retVal
    65        Function_Return retVal
    66    End_Function
    67
    68    { MethodType=Property DesignTime=False }
    69    Procedure Set ComMaskColor OLE_COLOR value
    70        Set ComProperty of (phDispatchDriver(Self)) 9 OLE_VT_I4 to value
    71    End_Procedure
    72
    73    { MethodType=Property DesignTime=False }
    74    Function ComCount Returns Integer
    75        Handle hDispatchDriver
    76        Integer retVal
    77        Get phDispatchDriver to hDispatchDriver
    78        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
    79        Function_Return retVal
    80    End_Function
    81
    82    Procedure ComAddIcon Integer llHandle Integer llCommand OLEXTPImageState llimageState
    83        Handle hDispatchDriver
    84        Get phDispatchDriver to hDispatchDriver
    85        Send PrepareParams to hDispatchDriver 3
    86        Send DefineParam to hDispatchDriver OLE_VT_I4 llHandle
    87        Send DefineParam to hDispatchDriver OLE_VT_I4 llCommand
    88        Send DefineParam to hDispatchDriver OLE_VT_I4 llimageState
    89        Send InvokeComMethod to hDispatchDriver 2 OLE_VT_VOID
    90    End_Procedure
    91
    92    Procedure ComLoadIcon String llPath Integer llCommand OLEXTPImageState llimageState
    93        Handle hDispatchDriver
    94        Get phDispatchDriver to hDispatchDriver
    95        Send PrepareParams to hDispatchDriver 3
    96        Send DefineParam to hDispatchDriver OLE_VT_BSTR llPath
    97        Send DefineParam to hDispatchDriver OLE_VT_I4 llCommand
    98        Send DefineParam to hDispatchDriver OLE_VT_I4 llimageState
    99        Send InvokeComMethod to hDispatchDriver 3 OLE_VT_VOID
   100    End_Procedure
   101
   102    Procedure ComAddBitmap Integer llHandle Variant llCommands OLEXTPImageState llimageState Boolean llAlpha
   103        Handle hDispatchDriver
   104        Get phDispatchDriver to hDispatchDriver
   105        Send PrepareParams to hDispatchDriver 4
   106        Send DefineParam to hDispatchDriver OLE_VT_I4 llHandle
   107        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llCommands
   108        Send DefineParam to hDispatchDriver OLE_VT_I4 llimageState
   109        Send DefineParam to hDispatchDriver OLE_VT_BOOL llAlpha
   110        Send InvokeComMethod to hDispatchDriver 8 OLE_VT_VOID
   111    End_Procedure
   112
   113    Procedure ComLoadBitmap String llPath Variant llCommands OLEXTPImageState llimageState
   114        Handle hDispatchDriver
   115        Get phDispatchDriver to hDispatchDriver
   116        Send PrepareParams to hDispatchDriver 3
   117        Send DefineParam to hDispatchDriver OLE_VT_BSTR llPath
   118        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llCommands
   119        Send DefineParam to hDispatchDriver OLE_VT_I4 llimageState
   120        Send InvokeComMethod to hDispatchDriver 4 OLE_VT_VOID
   121    End_Procedure
   122
   123    Procedure ComLoadBitmapFromResource Integer llModule Integer llResource Variant llCommands OLEXTPImageState llimageState
   124        Handle hDispatchDriver
   125        Get phDispatchDriver to hDispatchDriver
   126        Send PrepareParams to hDispatchDriver 4
   127        Send DefineParam to hDispatchDriver OLE_VT_I4 llModule
   128        Send DefineParam to hDispatchDriver OLE_VT_I4 llResource
   129        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llCommands
   130        Send DefineParam to hDispatchDriver OLE_VT_I4 llimageState
   131        Send InvokeComMethod to hDispatchDriver 14 OLE_VT_VOID
   132    End_Procedure
   133
   134    Procedure ComLoadIconFromResource Integer llModule Integer llResource Integer llCommand OLEXTPImageState llimageState
   135        Handle hDispatchDriver
   136        Get phDispatchDriver to hDispatchDriver
   137        Send PrepareParams to hDispatchDriver 4
   138        Send DefineParam to hDispatchDriver OLE_VT_I4 llModule
   139        Send DefineParam to hDispatchDriver OLE_VT_I4 llResource
   140        Send DefineParam to hDispatchDriver OLE_VT_I4 llCommand
   141        Send DefineParam to hDispatchDriver OLE_VT_I4 llimageState
   142        Send InvokeComMethod to hDispatchDriver 16 OLE_VT_VOID
   143    End_Procedure
   144
   145    Procedure ComRemoveAll
   146        Handle hDispatchDriver
   147        Get phDispatchDriver to hDispatchDriver
   148        Send InvokeComMethod to hDispatchDriver 5 OLE_VT_VOID
   149    End_Procedure
   150
   151    Procedure ComAddIcons Variant llIcons
   152        Handle hDispatchDriver
   153        Get phDispatchDriver to hDispatchDriver
   154        Send PrepareParams to hDispatchDriver 1
   155        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llIcons
   156        Send InvokeComMethod to hDispatchDriver 7 OLE_VT_VOID
   157    End_Procedure
   158
   159    Procedure ComRemoveIcon Integer llCommand
   160        Handle hDispatchDriver
   161        Get phDispatchDriver to hDispatchDriver
   162        Send PrepareParams to hDispatchDriver 1
   163        Send DefineParam to hDispatchDriver OLE_VT_I4 llCommand
   164        Send InvokeComMethod to hDispatchDriver 10 OLE_VT_VOID
   165    End_Procedure
   166
   167    { MethodType=Property DesignTime=False }
   168    Function ComIsAlphaIconsSupported Returns Boolean
   169        Handle hDispatchDriver
   170        Boolean retVal
   171        Get phDispatchDriver to hDispatchDriver
   172        Get InvokeComMethod of hDispatchDriver 11 OLE_VT_BOOL to retVal
   173        Function_Return retVal
   174    End_Function
   175
   176    Procedure ComRefreshAll
   177        Handle hDispatchDriver
   178        Get phDispatchDriver to hDispatchDriver
   179        Send InvokeComMethod to hDispatchDriver 12 OLE_VT_VOID
   180    End_Procedure
   181
   182    Function ComGetImage Integer llCommand Integer llWidth Returns Variant
   183        Handle hDispatchDriver
   184        Variant retVal
   185        Get phDispatchDriver to hDispatchDriver
   186        Send PrepareParams to hDispatchDriver 2
   187        Send DefineParam to hDispatchDriver OLE_VT_I4 llCommand
   188        Send DefineParam to hDispatchDriver OLE_VT_I4 llWidth
   189        Get InvokeComMethod of hDispatchDriver 13 OLE_VT_DISPATCH to retVal
   190        Function_Return retVal
   191    End_Function
   192
   193    { MethodType=Property DesignTime=False }
   194    Function Com_NewEnum Returns Variant
   195        Handle hDispatchDriver
   196        Variant retVal
   197        Get phDispatchDriver to hDispatchDriver
   198        Get InvokeComMethod of hDispatchDriver -4 OLE_VT_UNKNOWN to retVal
   199        Function_Return retVal
   200    End_Function
   201
   202    Procedure ComDoPropExchange Variant llpPX
   203        Handle hDispatchDriver
   204        Get phDispatchDriver to hDispatchDriver
   205        Send PrepareParams to hDispatchDriver 1
   206        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llpPX
   207        Send InvokeComMethod to hDispatchDriver 15 OLE_VT_VOID
   208    End_Procedure
   209End_Class
   210
   211// CoClass
   212Class cSigCjComImageManagerIcons is a cComAutomationObject
   213    Import_Class_Protocol cSigCjComIImageManagerIcons
   214
   215    Procedure Construct_Object
   216        Forward Send Construct_Object
   217        Set peAutoCreate to acNoAutoCreate
   218    End_Procedure
   219End_Class
   220
   221Class cSigCjComImageManagerIcon is a cComAutomationObject
   222
   223    { MethodType=Property DesignTime=False }
   224    Function ComId Returns Integer
   225        Handle hDispatchDriver
   226        Integer retVal
   227        Get phDispatchDriver to hDispatchDriver
   228        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
   229        Function_Return retVal
   230    End_Function
   231
   232    { MethodType=Property DesignTime=False }
   233    Function ComWidth Returns Integer
   234        Handle hDispatchDriver
   235        Integer retVal
   236        Get phDispatchDriver to hDispatchDriver
   237        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_I4 to retVal
   238        Function_Return retVal
   239    End_Function
   240
   241    { MethodType=Property DesignTime=False }
   242    Function ComHeight Returns Integer
   243        Handle hDispatchDriver
   244        Integer retVal
   245        Get phDispatchDriver to hDispatchDriver
   246        Get InvokeComMethod of hDispatchDriver 3 OLE_VT_I4 to retVal
   247        Function_Return retVal
   248    End_Function
   249
   250    { MethodType=Property DesignTime=False }
   251    Function ComScaled Returns Boolean
   252        Handle hDispatchDriver
   253        Boolean retVal
   254        Get phDispatchDriver to hDispatchDriver
   255        Get InvokeComMethod of hDispatchDriver 4 OLE_VT_BOOL to retVal
   256        Function_Return retVal
   257    End_Function
   258
   259    { MethodType=Property DesignTime=False }
   260    Function ComAlpha Returns Boolean
   261        Handle hDispatchDriver
   262        Boolean retVal
   263        Get phDispatchDriver to hDispatchDriver
   264        Get InvokeComMethod of hDispatchDriver 5 OLE_VT_BOOL to retVal
   265        Function_Return retVal
   266    End_Function
   267
   268    { MethodType=Property DesignTime=False }
   269    Function ComHandle Returns OLE_HANDLE
   270        Handle hDispatchDriver
   271        OLE_HANDLE retVal
   272        Get phDispatchDriver to hDispatchDriver
   273        Get InvokeComMethod of hDispatchDriver 6 OLE_VT_I4 to retVal
   274        Function_Return retVal
   275    End_Function
   276
   277    Procedure ComDraw OLE_HANDLE llhDC Integer llx Integer lly Integer llcx Integer llcy OLEXTPImageState llstate
   278        Handle hDispatchDriver
   279        Get phDispatchDriver to hDispatchDriver
   280        Send PrepareParams to hDispatchDriver 6
   281        Send DefineParam to hDispatchDriver OLE_VT_I4 llhDC
   282        Send DefineParam to hDispatchDriver OLE_VT_I4 llx
   283        Send DefineParam to hDispatchDriver OLE_VT_I4 lly
   284        Send DefineParam to hDispatchDriver OLE_VT_I4 llcx
   285        Send DefineParam to hDispatchDriver OLE_VT_I4 llcy
   286        Send DefineParam to hDispatchDriver OLE_VT_I4 llstate
   287        Send InvokeComMethod to hDispatchDriver 7 OLE_VT_VOID
   288    End_Procedure
   289
   290    Function ComCreatePicture OLEXTPImageState llstate Returns Variant
   291        Handle hDispatchDriver
   292        Variant retVal
   293        Get phDispatchDriver to hDispatchDriver
   294        Send PrepareParams to hDispatchDriver 1
   295        Send DefineParam to hDispatchDriver OLE_VT_I4 llstate
   296        Get InvokeComMethod of hDispatchDriver 8 OLE_VT_DISPATCH to retVal
   297        Function_Return retVal
   298    End_Function
   299
   300    Function ComScale Integer llWidth Returns Variant
   301        Handle hDispatchDriver
   302        Variant retVal
   303        Get phDispatchDriver to hDispatchDriver
   304        Send PrepareParams to hDispatchDriver 1
   305        Send DefineParam to hDispatchDriver OLE_VT_I4 llWidth
   306        Get InvokeComMethod of hDispatchDriver 9 OLE_VT_DISPATCH to retVal
   307        Function_Return retVal
   308    End_Function
   309End_Class
   310
   311Class cSigCjComImageManagerIconSet is a cComAutomationObject
   312
   313    { MethodType=Property DesignTime=False }
   314    Function ComId Returns Integer
   315        Handle hDispatchDriver
   316        Integer retVal
   317        Get phDispatchDriver to hDispatchDriver
   318        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
   319        Function_Return retVal
   320    End_Function
   321
   322    { MethodType=Property DesignTime=False }
   323    Function ComCount Returns Integer
   324        Handle hDispatchDriver
   325        Integer retVal
   326        Get phDispatchDriver to hDispatchDriver
   327        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_I4 to retVal
   328        Function_Return retVal
   329    End_Function
   330
   331    Function ComGetImage Integer llWidth Returns Variant
   332        Handle hDispatchDriver
   333        Variant retVal
   334        Get phDispatchDriver to hDispatchDriver
   335        Send PrepareParams to hDispatchDriver 1
   336        Send DefineParam to hDispatchDriver OLE_VT_I4 llWidth
   337        Get InvokeComMethod of hDispatchDriver 13 OLE_VT_DISPATCH to retVal
   338        Function_Return retVal
   339    End_Function
   340
   341    { MethodType=Property DesignTime=False }
   342    Function Com_NewEnum Returns Variant
   343        Handle hDispatchDriver
   344        Variant retVal
   345        Get phDispatchDriver to hDispatchDriver
   346        Get InvokeComMethod of hDispatchDriver -4 OLE_VT_UNKNOWN to retVal
   347        Function_Return retVal
   348    End_Function
   349End_Class
   350
   351//==============================================================================
   352//End of package - SigCjC_ImageManager.pkg
   353//==============================================================================
   354