with gb; package MSComCtl2_FlatScrollBar is -- ###### OLEDropConstants{D8898461-742F-11CF-8AEA-00AA00C00905} ###### -- Accepts no OLE drag/drop operations. cc2OLEDropNone : constant := 0; -- Accepts an OLE drag/drop under programmatic control only. cc2OLEDropManual : constant := 1; -- ###### DragOverConstants{D8898464-742F-11CF-8AEA-00AA00C00905} ###### -- Source control dragged into target. cc2Enter : constant := 0; -- Source control dragged out of target. cc2Leave : constant := 1; -- Source control dragged from one position in target to another. cc2Over : constant := 2; -- ###### ClipBoardConstants{D8898462-742F-11CF-8AEA-00AA00C00905} ###### -- Text (.txt file). cc2CFText : constant := 1; -- Bitmap (.bmp file). cc2CFBitmap : constant := 2; -- Metafile (.wmf file). cc2CFMetafile : constant := 3; -- Device-independent bitmap. cc2CFDIB : constant := 8; -- Color palette. cc2CFPalette : constant := 9; -- Enhanced metafile (.emf file). cc2CFEMetafile : constant := 14; -- Filename list (Microsoft Windows Explorer) cc2CFFiles : constant := 15; -- Rich Text Format (.rtf file). cc2CFRTF : constant := -16639; -- ###### OLEDropEffectConstants{D8898463-742F-11CF-8AEA-00AA00C00905} ###### -- No OLE drag/drop operation has taken place/would take place. cc2OLEDropEffectNone : constant := 0; -- A mask to indicate that a copy has taken place/would take place. cc2OLEDropEffectCopy : constant := 1; -- A mask to indicate that a move has take place/would take place. cc2OLEDropEffectMove : constant := 2; -- A mask to indicate that the drop target window has scrolled/would scroll. cc2OLEDropEffectScroll : constant := -2147483648; -- ###### ErrorConstants{79311D2C-87C0-11D1-8BE3-0000F8754DA1} ###### -- Bad file name or number cc2BadFileNameOrNumber : constant := 52; -- File not found cc2FileNotFound : constant := 53; -- Invalid property value cc2InvalidPropertyValue : constant := 380; -- Property cannot be set at run time cc2SetNotSupportedAtRuntime : constant := 382; -- Property is read-only cc2SetNotSupported : constant := 383; -- Property is write-only cc2GetNotSupported : constant := 394; -- DataObject formats list may not be cleared or expanded outside of the OLEStartDrag event cc2DataObjectLocked : constant := 672; -- Expected at least one argument. cc2ExpectedAnArgument : constant := 673; -- Invalid procedure call cc2InvalidProcedureCall : constant := 5; -- Invalid object use cc2InvalidObjectUse : constant := 425; -- Specified format doesn't match format of data cc2WrongClipboardFormat : constant := 461; -- Illegal recursive invocation of OLE drag and drop cc2RecursiveOleDrag : constant := 674; -- Non-intrinsic OLE drag and drop formats used with SetData require Byte -- array data. GetData may return more bytes than were given to SetData. cc2FormatNotByteArray : constant := 675; -- Requested data was not supplied to the DataObject during the OLESetData event. cc2DataNotSetForFormat : constant := 676; -- Internal state of the control has become corrupted cc2InconsistentObject : constant := 35750; -- Unable to set property cc2ErrorDuringSet : constant := 35751; -- Unable to open AVI file cc2ErrorOpeningVideo : constant := 35752; -- Unable to play AVI file cc2ErrorPlayingVideo : constant := 35753; -- Must open AVI file first cc2VideoNotOpen : constant := 35755; -- Error trying to stop playing AVI file cc2ErrorStoppingVideo : constant := 35757; -- Error closing open AVI file cc2ErrorClosingVideo : constant := 35758; -- Stop method does not effect AutoPlay property cc2CantStopAutoPlay : constant := 35759; -- BuddyControl property must be set first cc2NoValidBuddyCtl : constant := 35754; -- AutoBuddy not set, no potential buddy controls found cc2AutoBuddyNotSet : constant := 35756; -- BuddyControl must be a separate control within the same container cc2BuddyNotASibling : constant := 35760; -- An UpDown control cannot be buddied with another UpDown control cc2NoUpDownAsBuddy : constant := 35761; -- An invalid date range was specified. cc2InvalidRange : constant := 35770; -- An invalid date was specified for the MaxDate property. cc2InvalidMaxDate : constant := 35771; -- An invalid date was specified for the MinDate property. cc2InvalidMinDate : constant := 35772; -- A date was specified that does not fall within the MinDate and MaxDate properties. cc2DateOutOfRange : constant := 35773; -- A value was specified for the MaxDate property that is lower than the current -- value of MinDate. cc2InvalidMaxDateMin : constant := 35774; -- A value was specified for the MinDate property that is higher than the -- current value of MaxDate. cc2InvalidMinDateMax : constant := 35775; -- A value was specified for MonthRows or MonthColumns that is not between 1 and 12. cc2InvalidRowColValue : constant := 35776; -- A value was specified for MonthRows or MonthColumns that would cause the -- total number of months (i.e. MonthRows * MonthCols) to be greater than 12. cc2InvalidRowColTotal : constant := 35777; -- An error occurred in a call to the Windows MonthView control. cc2MonthViewError : constant := 35778; -- Can't set Day property when MultiSelect = True. cc2SetDayMultiSelectOn : constant := 35779; -- Can't set DayOfWeek property when MultiSelect = True. cc2SetDayOfWeekMultiSelectOn : constant := 35780; -- Can't set Month property when MultiSelect = True. cc2SetMonthMultiSelectOn : constant := 35781; -- Can't set Week property when MultiSelect = True. cc2SetWeekMultiSelectOn : constant := 35782; -- Can't set Year property when MultiSelect = True. cc2SetYearMultiSelectOn : constant := 35783; -- Can't set MaxSelCount property when MultiSelect = False. cc2SetMaxSelCountMultiSelectOff : constant := 35784; -- Can't set SelEnd property when MultiSelect = False. cc2SetSelEndMultiSelectOff : constant := 35785; -- Can't set SelStart property when MultiSelect = False. cc2SetSelStartMultiSelectOff : constant := 35786; -- Can't set Value to NULL when CheckBox property = FALSE. cc2NullValueNotAllowed : constant := 35787; -- An error occurred in a call to the Windows Date and Time Picker control. cc2DTPickerError : constant := 35788; -- Scroll value is out of range. cc2ScrollValueOutOfRange : constant := 35789; -- ###### AppearanceConstants{79311D2D-87C0-11D1-8BE3-0000F8754DA1} ###### -- Flat cc2Flat : constant := 0; -- 3D cc23D : constant := 1; -- ###### BorderStyleConstants{79311D2E-87C0-11D1-8BE3-0000F8754DA1} ###### -- None cc2None : constant := 0; -- Fixed Single cc2FixedSingle : constant := 1; -- ###### MousePointerConstants{79311D2F-87C0-11D1-8BE3-0000F8754DA1} ###### -- Default cc2Default : constant := 0; -- Arrow mouse pointer cc2Arrow : constant := 1; -- Cross mouse pointer cc2Cross : constant := 2; -- I-Beam mouse pointer cc2IBeam : constant := 3; -- Icon mouse pointer cc2Icon : constant := 4; -- Size mouse pointer cc2Size : constant := 5; -- Size NE SW mouse pointer cc2SizeNESW : constant := 6; -- Size N S mouse pointer cc2SizeNS : constant := 7; -- Size NW SE mouse pointer cc2SizeNWSE : constant := 8; -- Size W E mouse pointer cc2SizeEW : constant := 9; -- Up arrow mouse pointer cc2UpArrow : constant := 10; -- Hourglass mouse pointer cc2Hourglass : constant := 11; -- No drop mouse pointer cc2NoDrop : constant := 12; -- Arrow and Hourglass mouse pointer cc2ArrowHourglass : constant := 13; -- Arrow and Question mark mouse pointer cc2ArrowQuestion : constant := 14; -- Size all mouse pointer cc2SizeAll : constant := 15; -- Custom mouse pointer icon specified by the MouseIcon property cc2Custom : constant := 99; -- ###### OrientationConstants{603C7E7D-87C2-11D1-8BE3-0000F8754DA1} ###### -- Vertical cc2OrientationVertical : constant := 0; -- Horizontal cc2OrientationHorizontal : constant := 1; -- ###### BackStyleConstants{B09DE712-87C1-11D1-8BE3-0000F8754DA1} ###### -- Transparent cc2BackstyleTransparent : constant := 0; -- Opaque cc2BackstyleOpaque : constant := 1; -- ###### AlignmentConstants{603C7E7C-87C2-11D1-8BE3-0000F8754DA1} ###### -- Left Align cc2AlignmentLeft : constant := 0; -- Right Align cc2AlignmentRight : constant := 1; -- ###### DayConstants{232E4566-87C3-11D1-8BE3-0000F8754DA1} ###### -- Sunday mvwSunday : constant := 1; -- Monday mvwMonday : constant := 2; -- Tuesday mvwTuesday : constant := 3; -- Wednesday mvwWednesday : constant := 4; -- Thursday mvwThursday : constant := 5; -- Friday mvwFriday : constant := 6; -- Saturday mvwSaturday : constant := 7; -- ###### MonthConstants{232E4567-87C3-11D1-8BE3-0000F8754DA1} ###### -- January mvwJanuary : constant := 1; -- February mvwFebruary : constant := 2; -- March mvwMarch : constant := 3; -- April mvwApril : constant := 4; -- May mvwMay : constant := 5; -- June mvwJune : constant := 6; -- July mvwJuly : constant := 7; -- August mvwAugust : constant := 8; -- September mvwSeptember : constant := 9; -- October mvwOctober : constant := 10; -- November mvwNovember : constant := 11; -- December mvwDecember : constant := 12; -- ###### MonthViewHitTestAreas{232E4568-87C3-11D1-8BE3-0000F8754DA1} ###### -- Calendar Background mvwCalendarBack : constant := 0; -- Calendar Date mvwCalendarDate : constant := 1; -- Calendar Date Next Month mvwCalendarDateNext : constant := 2; -- Calendar Date Previous Month mvwCalendarDatePrev : constant := 3; -- Calendar Day mvwCalendarDay : constant := 4; -- Calendar Week Number mvwCalendarWeekNum : constant := 5; -- Nowhere mvwNoWhere : constant := 6; -- Title Background mvwTitleBack : constant := 7; -- Title Button Next mvwTitleBtnNext : constant := 8; -- Title Button Previous mvwTitleBtnPrev : constant := 9; -- Title Month mvwTitleMonth : constant := 10; -- Title Year mvwTitleYear : constant := 11; -- Today Link mvwTodayLink : constant := 12; -- ###### FormatConstants{20DD1B9C-87C4-11D1-8BE3-0000F8754DA1} ###### -- Display date in long format, e.g. 'Friday, Sept 2, 1974'. dtpLongDate : constant := 0; -- Display date in short format, e.g. '9/2/74'. dtpShortDate : constant := 1; -- Display time in standard format, e.g. '5:31:42 PM'. dtpTime : constant := 2; -- Display date and time using the format string specified in the 'CustomFormat' property. dtpCustom : constant := 3; -- ###### FlatScrollBarAppearanceConstants{FE387535-44A3-11D1-B5B7-0000C09000C4} ###### -- A normal, non-flat scrollbar is displayed. No special visual effects are applied. fsb3D : constant := 0; -- A standard flat scrollbar is displayed. When the mouse moves over a direction -- button or the thumb, that portion of the scrollbar will be displayed in -- inverted colors. fsbFlat : constant := 1; -- A flat scrollbar is displayed. When the mouse moves over a direction button -- or the thumb, that portion of the scrollbar will be displayed in 3D. fsbTrack3D : constant := 2; -- ###### ArrowsConstants{FE387536-44A3-11D1-B5B7-0000C09000C4} ###### -- Enables both direction buttons. cc2Both : constant := 0; -- Enables only the left or up button, depending on whether the orientation -- is vertical or horizontal. cc2LeftUp : constant := 1; -- Enables only the right or down button, depending on whether the orientation -- is vertical or horizontal. cc2RightDown : constant := 2; -- ###### Events ###### -- Change: Occurs when the user causes the Value property of the scroll bar to change. procedure Change_Proc; type Change_Access is access procedure; -- Scroll: Occurs when the scroll box is being dragged by the user. procedure Scroll_Proc; type Scroll_Access is access procedure; -- ###### Object Declaration ###### type FlatScrollBarCtrl(Parent : access gb.Object'class) is new gb.OleControl(Parent) with record Change : Change_Access := Change_Proc'access; Scroll : Scroll_Access := Scroll_Proc'access; end record; type FlatScrollBarCtrlRef is access all FlatScrollBarCtrl'class; procedure Initialize(Obj : in out FlatScrollBarCtrl); -- ###### Methods ###### -- QueryInterface procedure QueryInterface(Obj : FlatScrollBarCtrl; riid : gb.LPDISPATCH; ppvObj : gb.PVOID); -- AddRef function AddRef(Obj : FlatScrollBarCtrl) return gb.ULONG; -- Release function Release(Obj : FlatScrollBarCtrl) return gb.ULONG; -- GetTypeInfoCount procedure GetTypeInfoCount(Obj : FlatScrollBarCtrl; pctinfo : gb.PUINT); -- GetTypeInfo procedure GetTypeInfo(Obj : FlatScrollBarCtrl; itinfo : gb.UINT; lcid : gb.ULONG; pptinfo : gb.PVOID); -- GetIDsOfNames procedure GetIDsOfNames(Obj : FlatScrollBarCtrl; riid : gb.LPDISPATCH; rgszNames : gb.PCHAR; cNames : gb.UINT; lcid : gb.ULONG; rgdispid : gb.PLONG); -- Invoke procedure Invoke(Obj : FlatScrollBarCtrl; dispidMember : gb.LONG; riid : gb.LPDISPATCH; lcid : gb.ULONG; wFlags : gb.USHORT; pdispparams : gb.LPDISPATCH; pvarResult : gb.LPVARIANT; pexcepinfo : gb.LPDISPATCH; puArgErr : gb.PUINT); -- Appearance: Returns/sets whether or not controls, Forms or an MDIForm -- are painted at run time with 3-D effects. function Appearance(Obj : FlatScrollBarCtrl) return gb.INT; -- Appearance: Returns/sets whether or not controls, Forms or an MDIForm -- are painted at run time with 3-D effects. procedure Appearance(Obj : FlatScrollBarCtrl; Param1 : gb.INT); -- Arrows: Returns/sets which direction buttons will be enabled. function Arrows(Obj : FlatScrollBarCtrl) return gb.INT; -- Arrows: Returns/sets which direction buttons will be enabled. procedure Arrows(Obj : FlatScrollBarCtrl; Param1 : gb.INT); -- Enabled: Returns/sets a value that determines whether a form or control -- can respond to user-generated events. function Enabled(Obj : FlatScrollBarCtrl) return gb.BOOL; -- Enabled: Returns/sets a value that determines whether a form or control -- can respond to user-generated events. procedure Enabled(Obj : FlatScrollBarCtrl; Param1 : gb.BOOL); -- hWnd: Returns a handle to a form or control. function hWnd(Obj : FlatScrollBarCtrl) return gb.INT; -- hWnd: Returns a handle to a form or control. procedure hWnd(Obj : FlatScrollBarCtrl; Param1 : gb.INT); -- LargeChange: Returns/sets a value that determines the amount of change -- to the Value property when the user clicks the area between the scroll -- box and the scroll arrow. function LargeChange(Obj : FlatScrollBarCtrl) return gb.SHORT; -- LargeChange: Returns/sets a value that determines the amount of change -- to the Value property when the user clicks the area between the scroll -- box and the scroll arrow. procedure LargeChange(Obj : FlatScrollBarCtrl; Param1 : gb.SHORT); -- Min: Returns/sets the scrollbar's minimum Value property setting. function Min(Obj : FlatScrollBarCtrl) return gb.SHORT; -- Min: Returns/sets the scrollbar's minimum Value property setting. procedure Min(Obj : FlatScrollBarCtrl; Param1 : gb.SHORT); -- Max: Returns/sets the scrollbar's maximum Value property setting. function Max(Obj : FlatScrollBarCtrl) return gb.SHORT; -- Max: Returns/sets the scrollbar's maximum Value property setting. procedure Max(Obj : FlatScrollBarCtrl; Param1 : gb.SHORT); -- MouseIcon: Sets a custom mouse icon. function MouseIcon(Obj : FlatScrollBarCtrl) return gb.LPDISPATCH; -- MouseIcon: Sets a custom mouse icon. procedure MouseIcon(Obj : FlatScrollBarCtrl; Param1 : gb.LPDISPATCH); -- MousePointer: Returns/sets the type of mouse pointer displayed when over -- part of an object. function MousePointer(Obj : FlatScrollBarCtrl) return gb.INT; -- MousePointer: Returns/sets the type of mouse pointer displayed when over -- part of an object. procedure MousePointer(Obj : FlatScrollBarCtrl; Param1 : gb.INT); -- Orientation: Returns/sets a value that determines whether the scrollbar -- is vertical or horizontal. function Orientation(Obj : FlatScrollBarCtrl) return gb.INT; -- Orientation: Returns/sets a value that determines whether the scrollbar -- is vertical or horizontal. procedure Orientation(Obj : FlatScrollBarCtrl; Param1 : gb.INT); -- SmallChange: Returns/sets a value that determines the amount of change -- to the Value property when the user clicks a scroll arrow. function SmallChange(Obj : FlatScrollBarCtrl) return gb.SHORT; -- SmallChange: Returns/sets a value that determines the amount of change -- to the Value property when the user clicks a scroll arrow. procedure SmallChange(Obj : FlatScrollBarCtrl; Param1 : gb.SHORT); -- Value: Returns/sets the current position of the scroll bar. function Value(Obj : FlatScrollBarCtrl) return gb.SHORT; -- Value: Returns/sets the current position of the scroll bar. procedure Value(Obj : FlatScrollBarCtrl; Param1 : gb.SHORT); -- AboutBox procedure AboutBox(Obj : FlatScrollBarCtrl); -- Refresh: Forces a complete repaint of a form or control. procedure Refresh(Obj : FlatScrollBarCtrl); end MSComCtl2_FlatScrollBar; package body MSComCtl2_FlatScrollBar is pragma Suppress(Discriminant_Check); use type gb.DISPID; use type gb.VARTYPE; -- ###### Methods ###### procedure QueryInterface(Obj : FlatScrollBarCtrl; riid : gb.LPDISPATCH; ppvObj : gb.PVOID) is myVariants : array (1..2) of gb.Variant; begin myVariants(2) := (gb.VT_DISPATCH, 0, 0, 0, (gb.VT_DISPATCH, riid)); myVariants(1) := (gb.VT_BYREF or gb.VT_VOID, 0, 0, 0, (gb.VT_BYREF or gb.VT_VOID, ppvObj)); gb.DoMethod(Obj, 1610612736, 1, 2, gb.Convert(myVariants'address)); end QueryInterface; function AddRef(Obj : FlatScrollBarCtrl) return gb.ULONG is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 1610612737, 1, 0, null, myResult'unchecked_access); return myResult.u.ulVal; end AddRef; function Release(Obj : FlatScrollBarCtrl) return gb.ULONG is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 1610612738, 1, 0, null, myResult'unchecked_access); return myResult.u.ulVal; end Release; procedure GetTypeInfoCount(Obj : FlatScrollBarCtrl; pctinfo : gb.PUINT) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_BYREF or gb.VT_UINT, 0, 0, 0, (gb.VT_BYREF or gb.VT_UINT, pctinfo)); gb.DoMethod(Obj, 1610678272, 1, 1, gb.Convert(myVariants'address)); end GetTypeInfoCount; procedure GetTypeInfo(Obj : FlatScrollBarCtrl; itinfo : gb.UINT; lcid : gb.ULONG; pptinfo : gb.PVOID) is myVariants : array (1..3) of gb.Variant; begin myVariants(3) := (gb.VT_UINT, 0, 0, 0, (gb.VT_UINT, itinfo)); myVariants(2) := (gb.VT_UI4, 0, 0, 0, (gb.VT_UI4, lcid)); myVariants(1) := (gb.VT_BYREF or gb.VT_VOID, 0, 0, 0, (gb.VT_BYREF or gb.VT_VOID, pptinfo)); gb.DoMethod(Obj, 1610678273, 1, 3, gb.Convert(myVariants'address)); end GetTypeInfo; procedure GetIDsOfNames(Obj : FlatScrollBarCtrl; riid : gb.LPDISPATCH; rgszNames : gb.PCHAR; cNames : gb.UINT; lcid : gb.ULONG; rgdispid : gb.PLONG) is myVariants : array (1..5) of gb.Variant; begin myVariants(5) := (gb.VT_DISPATCH, 0, 0, 0, (gb.VT_DISPATCH, riid)); myVariants(4) := (gb.VT_BYREF or gb.VT_I1, 0, 0, 0, (gb.VT_BYREF or gb.VT_I1, rgszNames)); myVariants(3) := (gb.VT_UINT, 0, 0, 0, (gb.VT_UINT, cNames)); myVariants(2) := (gb.VT_UI4, 0, 0, 0, (gb.VT_UI4, lcid)); myVariants(1) := (gb.VT_BYREF or gb.VT_I4, 0, 0, 0, (gb.VT_BYREF or gb.VT_I4, rgdispid)); gb.DoMethod(Obj, 1610678274, 1, 5, gb.Convert(myVariants'address)); end GetIDsOfNames; procedure Invoke(Obj : FlatScrollBarCtrl; dispidMember : gb.LONG; riid : gb.LPDISPATCH; lcid : gb.ULONG; wFlags : gb.USHORT; pdispparams : gb.LPDISPATCH; pvarResult : gb.LPVARIANT; pexcepinfo : gb.LPDISPATCH; puArgErr : gb.PUINT) is myVariants : array (1..8) of gb.Variant; begin myVariants(8) := (gb.VT_I4, 0, 0, 0, (gb.VT_I4, dispidMember)); myVariants(7) := (gb.VT_DISPATCH, 0, 0, 0, (gb.VT_DISPATCH, riid)); myVariants(6) := (gb.VT_UI4, 0, 0, 0, (gb.VT_UI4, lcid)); myVariants(5) := (gb.VT_UI2, 0, 0, 0, (gb.VT_UI2, wFlags)); myVariants(4) := (gb.VT_DISPATCH, 0, 0, 0, (gb.VT_DISPATCH, pdispparams)); myVariants(3) := pvarResult.all; myVariants(2) := (gb.VT_DISPATCH, 0, 0, 0, (gb.VT_DISPATCH, pexcepinfo)); myVariants(1) := (gb.VT_BYREF or gb.VT_UINT, 0, 0, 0, (gb.VT_BYREF or gb.VT_UINT, puArgErr)); gb.DoMethod(Obj, 1610678275, 1, 8, gb.Convert(myVariants'address)); end Invoke; function Appearance(Obj : FlatScrollBarCtrl) return gb.INT is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 1, 2, 0, null, myResult'unchecked_access); return myResult.u.intVal; end Appearance; procedure Appearance(Obj : FlatScrollBarCtrl; Param1 : gb.INT) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_INT, 0, 0, 0, (gb.VT_INT, Param1)); gb.DoMethod(Obj, 1, 4, 1, gb.Convert(myVariants'address)); end Appearance; function Arrows(Obj : FlatScrollBarCtrl) return gb.INT is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 2, 2, 0, null, myResult'unchecked_access); return myResult.u.intVal; end Arrows; procedure Arrows(Obj : FlatScrollBarCtrl; Param1 : gb.INT) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_INT, 0, 0, 0, (gb.VT_INT, Param1)); gb.DoMethod(Obj, 2, 4, 1, gb.Convert(myVariants'address)); end Arrows; function Enabled(Obj : FlatScrollBarCtrl) return gb.BOOL is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, -514, 2, 0, null, myResult'unchecked_access); return gb.Convert(myResult.u.bool); end Enabled; procedure Enabled(Obj : FlatScrollBarCtrl; Param1 : gb.BOOL) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_BOOL, 0, 0, 0, (gb.VT_BOOL, gb.Convert(Param1))); gb.DoMethod(Obj, -514, 4, 1, gb.Convert(myVariants'address)); end Enabled; function hWnd(Obj : FlatScrollBarCtrl) return gb.INT is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, -515, 2, 0, null, myResult'unchecked_access); return myResult.u.intVal; end hWnd; procedure hWnd(Obj : FlatScrollBarCtrl; Param1 : gb.INT) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_INT, 0, 0, 0, (gb.VT_INT, Param1)); gb.DoMethod(Obj, -515, 4, 1, gb.Convert(myVariants'address)); end hWnd; function LargeChange(Obj : FlatScrollBarCtrl) return gb.SHORT is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 3, 2, 0, null, myResult'unchecked_access); return myResult.u.iVal; end LargeChange; procedure LargeChange(Obj : FlatScrollBarCtrl; Param1 : gb.SHORT) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_I2, 0, 0, 0, (gb.VT_I2, Param1)); gb.DoMethod(Obj, 3, 4, 1, gb.Convert(myVariants'address)); end LargeChange; function Min(Obj : FlatScrollBarCtrl) return gb.SHORT is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 4, 2, 0, null, myResult'unchecked_access); return myResult.u.iVal; end Min; procedure Min(Obj : FlatScrollBarCtrl; Param1 : gb.SHORT) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_I2, 0, 0, 0, (gb.VT_I2, Param1)); gb.DoMethod(Obj, 4, 4, 1, gb.Convert(myVariants'address)); end Min; function Max(Obj : FlatScrollBarCtrl) return gb.SHORT is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 5, 2, 0, null, myResult'unchecked_access); return myResult.u.iVal; end Max; procedure Max(Obj : FlatScrollBarCtrl; Param1 : gb.SHORT) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_I2, 0, 0, 0, (gb.VT_I2, Param1)); gb.DoMethod(Obj, 5, 4, 1, gb.Convert(myVariants'address)); end Max; function MouseIcon(Obj : FlatScrollBarCtrl) return gb.LPDISPATCH is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 6, 2, 0, null, myResult'unchecked_access); return myResult.u.pdispVal; end MouseIcon; procedure MouseIcon(Obj : FlatScrollBarCtrl; Param1 : gb.LPDISPATCH) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_DISPATCH, 0, 0, 0, (gb.VT_DISPATCH, Param1)); gb.DoMethod(Obj, 6, 4, 1, gb.Convert(myVariants'address)); end MouseIcon; function MousePointer(Obj : FlatScrollBarCtrl) return gb.INT is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 7, 2, 0, null, myResult'unchecked_access); return myResult.u.intVal; end MousePointer; procedure MousePointer(Obj : FlatScrollBarCtrl; Param1 : gb.INT) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_INT, 0, 0, 0, (gb.VT_INT, Param1)); gb.DoMethod(Obj, 7, 4, 1, gb.Convert(myVariants'address)); end MousePointer; function Orientation(Obj : FlatScrollBarCtrl) return gb.INT is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 8, 2, 0, null, myResult'unchecked_access); return myResult.u.intVal; end Orientation; procedure Orientation(Obj : FlatScrollBarCtrl; Param1 : gb.INT) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_INT, 0, 0, 0, (gb.VT_INT, Param1)); gb.DoMethod(Obj, 8, 4, 1, gb.Convert(myVariants'address)); end Orientation; function SmallChange(Obj : FlatScrollBarCtrl) return gb.SHORT is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 9, 2, 0, null, myResult'unchecked_access); return myResult.u.iVal; end SmallChange; procedure SmallChange(Obj : FlatScrollBarCtrl; Param1 : gb.SHORT) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_I2, 0, 0, 0, (gb.VT_I2, Param1)); gb.DoMethod(Obj, 9, 4, 1, gb.Convert(myVariants'address)); end SmallChange; function Value(Obj : FlatScrollBarCtrl) return gb.SHORT is myResult : aliased gb.Variant; begin gb.DoMethod(Obj, 10, 2, 0, null, myResult'unchecked_access); return myResult.u.iVal; end Value; procedure Value(Obj : FlatScrollBarCtrl; Param1 : gb.SHORT) is myVariants : array (1..1) of gb.Variant; begin myVariants(1) := (gb.VT_I2, 0, 0, 0, (gb.VT_I2, Param1)); gb.DoMethod(Obj, 10, 4, 1, gb.Convert(myVariants'address)); end Value; procedure AboutBox(Obj : FlatScrollBarCtrl) is begin gb.DoMethod(Obj, -552, 1); end AboutBox; procedure Refresh(Obj : FlatScrollBarCtrl) is begin gb.DoMethod(Obj, -550, 1); end Refresh; -- ###### Event Dispatch ###### procedure DispatchEvent_Proc(Obj : gb.OleControlRef; dispidMember : gb.DISPID; pdispparams : access gb.DISPPARAMS) is hr : gb.HRESULT; u : aliased gb.UINT; begin if dispidMember = 1 then FlatScrollBarCtrl(Obj.all).Change.all; elsif dispidMember = 2 then FlatScrollBarCtrl(Obj.all).Scroll.all; end if; end DispatchEvent_Proc; procedure Initialize(Obj : in out FlatScrollBarCtrl) is begin Obj.i_DispatchEvent := DispatchEvent_Proc'access; Obj.i_ProgID(1..26) := gb.To_OleChar("MSComCtl2.FlatScrollBar.2"); Obj.i_EventDispatchIID(1..39) := gb.To_OleChar("{FE387539-44A3-11D1-B5B7-0000C09000C4}"); end Initialize; -- ###### Events ###### procedure Change_Proc is begin null; end Change_Proc; procedure Scroll_Proc is begin null; end Scroll_Proc; end MSComCtl2_FlatScrollBar;