summaryrefslogtreecommitdiff
path: root/plugins/Watrack/kolframe/frm_vars.inc
blob: f4d9372002306c588aa9802d2d25fc3222a5c86d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
{Frame variables}
var
  HiddenByMe:bool;

  FrameHeight:dword;

type
  PWATFrameData = ^TWATFrameData;
  TWATFrameData = record
    BkDC        :HDC;       // "buffer" DC and associated bitmap
    BkBitmap    :HBITMAP;   // original bitmap
    BkFile      :PAnsiChar; // original bitmap filename
    BkDefFile   :PAnsiChar; // default background picture filename
    BkMode      :cardinal;
    BkTimer     :cardinal;  // timer to free original picture buffer
    BkColor     :TCOLORREF;
    padding     :TRect;

    ShowControls:dword;
    UseBkPicture:bool;
    UseCover    :bool;
    HideNoMusic :bool;
    HideNoPlayer:bool;

    WasHidden   :bool;
    // not sure what will keep here
    FrameId     :integer;
    FrmAlpha    :integer;
    UpdInterval :cardinal;
    UpdTimer    :cardinal;

    Template :PWideChar;

    Trackbar :PTrackbar;
    TextBlock:PTextBlock;

    // Designer section
    Designer :PDesigner;
    ManualPlacement:bool;
    Loaded   :dword;

    btnarray:array [0..numbuttons-1] of pIcoButton;
  end;

  PWATFrame = ^TWATFrame;
  TWATFrame = object(TControl)
    procedure Paint(Sender: PControl; DC: HDC);
    procedure FrameResize(Sender: PObj);
    procedure RefreshAllFrameIcons;
    procedure ResetFrame;

    procedure CreateDesigner(Sender:PControl;var Mouse:TMouseEventData);
    procedure DesignerSaveSettings;
    procedure DesignerLoadSettings;

    procedure PreparePicture(dc:HDC;rc:TRECT);
    function LoadBkPicture(CoverFName:PAnsiChar;check:boolean=false;
             BackFName:PAnsiChar=nil):integer;
    procedure SaveSettings;
    procedure LoadSettings;
    procedure CheckControls;
    procedure SetAlpha(value:integer);
    procedure RefreshPicture(cover:PAnsiChar=nil);
    procedure ClearBitmapData;
    procedure AdjustFrame;
    procedure MyDestroy(Sender:PObj);

    procedure AdjustButtons(atop:integer);
    procedure RefreshButtonIcons;
    procedure FreeButtonsDesigner;
    procedure MakeButtonsDesigner;
    procedure FreeButtons;
    procedure MakeNewButtonGroup;
 end;

var
  FrameCtrl:PWATFrame;