Check-in [b0cbac6608]
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Added project "ProjectIt", which provides a UI to easily keep track of what the user is currently working on (first version of rewrite using the FireMonkey framework).
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: b0cbac660809b894252ec23a46ecc830c3d1e70b
User & Date: MCO 2013-07-25 13:30:08.399
Context
2013-07-25
20:22
Added popup menu. Added list of projects (in VCL form). check-in: fc3eeca3d7 user: Martijn tags: trunk
13:30
Added project "ProjectIt", which provides a UI to easily keep track of what the user is currently working on (first version of rewrite using the FireMonkey framework). check-in: b0cbac6608 user: MCO tags: trunk
2012-06-11
16:09
Keep track of current project, and publish what's been spent on it so far. check-in: b9e83e2b17 user: MCO tags: trunk
Changes
Unified Diff Ignore Whitespace Patch
Added ProjectIt/img/PAUSE.png.

cannot compute difference between binary files

Added ProjectIt/img/PAUSE_DISABLED.png.

cannot compute difference between binary files

Added ProjectIt/img/PROJECT.png.

cannot compute difference between binary files

Added ProjectIt/img/PROJECT_DISABLED.png.

cannot compute difference between binary files

Added ProjectIt/img/PROJECT_PAID.png.

cannot compute difference between binary files

Added ProjectIt/img/PROJECT_PAID_DISABLED.png.

cannot compute difference between binary files

Added ProjectIt/img/app.ico.

cannot compute difference between binary files

Added ProjectIt/img/mainicon.ico.

cannot compute difference between binary files

Added ProjectIt/img/pause.ico.

cannot compute difference between binary files

Added ProjectIt/img/project.ico.

cannot compute difference between binary files

Added ProjectIt/img/project_paid.ico.

cannot compute difference between binary files

Added ProjectIt/img/tray_earning.ico.

cannot compute difference between binary files

Added ProjectIt/img/tray_paused.ico.

cannot compute difference between binary files

Added ProjectIt/img/tray_running.ico.

cannot compute difference between binary files

Added ProjectIt/src/F_ActiveProject.fmx.










































































































































































































































































































































































































































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
object Form4: TForm4
  Left = 0
  Top = 0
  Caption = 'Projects'
  ClientHeight = 480
  ClientWidth = 325
  Position = poScreenCenter
  Transparency = True
  FormFactor.Width = 320
  FormFactor.Height = 480
  FormFactor.Devices = [dkDesktop, dkiPhone, dkiPad]
  OnCreate = FormCreate
  DesignerMobile = False
  DesignerWidth = 0
  DesignerHeight = 0
  DesignerDeviceName = ''
  DesignerOrientation = 0
  object lytProjects: TLayout
    Align = alClient
    Height = 480.000000000000000000
    Width = 325.000000000000000000
    object btnProject: TCornerButton
      DisableFocusEffect = True
      Font.Size = 30.000000000000000000
      Font.Style = [fsBold]
      StyledSettings = [ssFamily, ssFontColor]
      Height = 65.000000000000000000
      Position.X = 8.000000000000000000
      Position.Y = 8.000000000000000000
      Sides = [sdTop, sdLeft, sdBottom, sdRight]
      TabOrder = 0
      Text = 'Pauze'
      Width = 305.000000000000000000
      XRadius = 15.000000000000000000
      YRadius = 15.000000000000000000
      OnClick = btnProjectClick
      OnMouseDown = ControlDragMouseDown
      object rndrctTime: TRoundRect
        Fill.Kind = bkGradient
        Fill.Gradient.Points = <
          item
            Color = claDarkgreen
            Offset = 0.000000000000000000
          end
          item
            Color = claLightgreen
            Offset = 1.000000000000000000
          end>
        Fill.Gradient.Style = gsRadial
        Height = 25.000000000000000000
        Position.X = 232.000000000000000000
        Position.Y = -8.000000000000000000
        Stroke.Color = claLightgray
        Width = 81.000000000000000000
        OnMouseDown = ControlDragMouseDown
        object txtTime: TText
          Align = alClient
          Color = claWhite
          Height = 25.000000000000000000
          HitTest = False
          Text = '00:00 '#183' 00:00'
          Width = 81.000000000000000000
        end
      end
      object imgIcon: TImage
        Height = 50.000000000000000000
        HitTest = False
        Position.X = 8.000000000000000000
        Position.Y = 7.000000000000000000
        Width = 50.000000000000000000
        object anmProjectIcon: TBitmapAnimation
          Duration = 0.200000002980232200
          PropertyName = 'Bitmap'
          StartValue.PNG = {
            89504E470D0A1A0A0000000D4948445200000020000000200806000000737A7A
            F4000000017352474200AECE1CE90000000467414D410000B18F0BFC61050000
            02EE494441545847E5973F68144114C6BF9DDD93BB4B0CD14282859DA0B5F682
            ADBD8D588B458A808DAD206823D808A6B1504867A7ADB5959501054B0917EE5F
            2EDEBFDCFEF17BB37361676E63F12CF3C1BB99B97BBF8F376F67371B9C7B456E
            2C75EB6D03B3F425F2FC21E2780D455EC9E0A428C6C8D33D44579F60FFFE89FB
            A194924DDC586AB67871E3E6959D77CFEE629115989FE448F30269213C102749
            EBCDDEB7ED4F9FBF67CCDE29212725EB77E0FAEB83DD57F7B6DACD0447938535
            5A7023198D72A6C67184CDCD361E3DFED8C1CFED2D479552B2C68DA5A2A8D59F
            E5E88CE6E88F53F4FE2C23B3636794E2F760C1C462A3042A52B27E01287034CE
            D077504F8C4E83DF31BAFC1E49ECF2ABD2B141070C06F314FD098D6CE476EC71
            ECD931C321A3B600251B14000C67856DE1604A83A933E0DC06E7DD312F6C1C34
            4EA464FD150FCA8826035ECBD284868CD244C6028753E625FED9B552B2413906
            C7BC4307B2936A3883DE0CE8722792B722251B7420C6110FEA90C9C37969D693
            E0BC4BF33EA33BE70E98B72225EB17C003722C264CB6B18830CD0DD288904950
            98183903A6E61228D9A003062382231A4D080B84840F4B09A97C39A7E18A946C
            70410CC699C11C04AA5075DE6830AFA6034A362820C24C0C96405DC86D547B08
            756CE0E4AA3F6B07366417FC6E453AD62F40EE510F08420C1B1CEB3AA064FD15
            1FA72B50756D83BB081B2752B2C1AA0E725135AC3D843AD62F808F537B5243A8
            3AB727B9A6034A365871B934392BC4B051538092F5571177214667EDC086B4D0
            6FA395920DCAE1F25FBBB0862E2F9492F5573CC991DC2A1E54994B0851770895
            6C508E418B2F95A7A0C4F2E0C8534CDA2C927928251BAC0C2EB6412382310D04
            1609CC57EB5389792825EB1710C5934B4DE0723BC2C605E686AD966CBE537032
            924F4F4AD62FA01D7FE87CFD8182060DEEA6B9CE5863528BFE34B78768FF97EC
            F0BDCDAF4AC9FA65DEF992E09A79CE7F691E105D2FCBE387911EDAD4315BBA87
            66F329766FF32F7F45FFC39E63017F015D8C30C2DF904E900000000049454E44
            AE426082}
          StopValue.PNG = {
            89504E470D0A1A0A0000000D4948445200000020000000200806000000737A7A
            F4000000017352474200AECE1CE90000000467414D410000B18F0BFC61050000
            022A494441545847E597498A1B411045530378586A2B04DAEB085A7A3880C157
            B0CFA143182FEC13E80836ED5B4868A985B6020D609766E70FF28BC8CA2883C2
            CBFE10444666BCAFC8AA6E351D9EBD5A298BA6D36967369B7D8ECBF7315ECA66
            AEEA76BB3DB55AADAF93C9E49CF6445EB69BB2683E9F7FEAF57A1FC7E371B85C
            2E2102E17ABD4A8622FC62B1587C582E97D7587E91CD242FDB4E5914C1B7A3D1
            28EC76BBB0D96CC276BB953532D7C3E110AD6F0450F2B2D90098F2783C06C4F9
            7C0E87C341E2743A49605D55155A5F0BA0E465B3012034C3A40E6BC3F861A93B
            9787AD3F01999E300286BA86913580972D9E004D906980350375BB5D60220F6B
            0E00B80EEAB09E00E461CD0134C89AC6C84DF2B0D900980EBFC3041130D2B742
            6DC9CB6603E0FDE0CB03CD3043A0E619840FB27E06BC6CE144101902D0E97404
            A601B2250F9B0D80430BA66864C9CB660300C477B76EE61A86D60D282F5BBC82
            3A0C9030EB2679D8E215F0D1A1996B04CF75AD853D0F6B5E87308535F6781BEB
            26D4A36CE14418B90EB36E9287FDE72BD030CF75D6C29E87359F008D3484A069
            9370F6289B0D80262D0DEBDB59F2B2C50E9B91354CD1D892872D06400360DDCC
            35EB26E1FC51361B004D7A6AD6108C115CD7E5650BA76EB72B4123C8FA404B1E
            363B8D60451344131CF77FA7E55D5E36EB8A873FD7EBF5FDF1D1083563BFDF23
            FF48C85D5E36FBCF6830187C5FAD56B7D8F82EC2AFD2B60806517FE25FBC5FFD
            7EFF9B6C2AFD0FFB9C15C25F669658EE3967D58C0000000049454E44AE426082}
        end
      end
      object efctGlow: TInnerGlowEffect
        Softness = 0.400000005960464500
        GlowColor = claWhite
        Opacity = 0.899999976158142100
        Trigger = 'IsMouseOver=true'
        Enabled = False
      end
    end
    object btnProject2: TCornerButton
      DisableFocusEffect = True
      Font.Size = 30.000000000000000000
      StyledSettings = [ssFamily, ssFontColor]
      Height = 65.000000000000000000
      Opacity = 0.750000000000000000
      Position.X = 8.000000000000000000
      Position.Y = 80.000000000000000000
      Sides = [sdTop, sdLeft, sdBottom, sdRight]
      TabOrder = 1
      Text = 'Project'
      Width = 305.000000000000000000
      XRadius = 15.000000000000000000
      YRadius = 15.000000000000000000
      OnClick = btnProjectClick
      OnMouseDown = ControlDragMouseDown
      object rndrctTime2: TRoundRect
        Fill.Kind = bkGradient
        Fill.Gradient.Points = <
          item
            Color = claBlue
            Offset = 0.000000000000000000
          end
          item
            Color = claLightblue
            Offset = 1.000000000000000000
          end>
        Fill.Gradient.Style = gsRadial
        Height = 25.000000000000000000
        Position.X = 232.000000000000000000
        Position.Y = -8.000000000000000000
        Stroke.Color = claLightgray
        Width = 81.000000000000000000
        OnMouseDown = ControlDragMouseDown
        object txtTime2: TText
          Align = alClient
          Color = claWhite
          Height = 25.000000000000000000
          HitTest = False
          Text = '00:00 '#183' 00:00'
          Width = 81.000000000000000000
        end
      end
      object imgIcon2: TImage
        Height = 50.000000000000000000
        HitTest = False
        Position.X = 8.000000000000000000
        Position.Y = 7.000000000000000000
        Width = 50.000000000000000000
        object anmProject2Icon: TBitmapAnimation
          Duration = 0.200000002980232200
          PropertyName = 'Bitmap'
          StartValue.PNG = {
            89504E470D0A1A0A0000000D4948445200000020000000200806000000737A7A
            F4000000017352474200AECE1CE90000000467414D410000B18F0BFC61050000
            0685494441545847D5565B6C145518FE7677DA6EB7DDDE2F945E81B614D0AE04
            686981700B11096A498C4A5292C6607C90073546E283313E1B1330C154898404
            25520452F44191962E41B104B0E1525AA805B657A8740BBDECCEECCE8CDF99DD
            2DDBB205561F8C5F7B7276CECC39DF77FEDB39F8AF610AF6FF0AB5B5B509A3A3
            A31B636363B7F8FDFE6AB3D9FCFE9123478E065F3F16FF58C0B66DDBD2D96DF6
            F97C5BBC5EEF0640B7B1A1B2B21AA9A9294EBBDDB64B92E2DC8D8D8DC3494949
            EFF1DB2BF5F5F59F1993C3109580BABABA7C59965F16A48AA2ACE2508C892B14
            1414A0AA6A15CACBAB91939307B7BB8F6D10E3E31E7DEFDE7A3D3E3EDECC79FD
            070E1CC80DACF4104F14B075EBD6324EDEC29F35245D4A42B318CFCACAC48A15
            ABB164C92A9216C1EF9739AAC16A956036C7C0E5FA0B4D4DC770EDDA05BE5341
            2BDD3C78F0E05C31371C9105BCED7A76E9F0BEDAC2D1B32FCABA54A6F33BB153
            BBDD8E952B57A3A2621572734BA1AA2A74DD074D5361B3C51AC45D5D83B878F1
            34DADA9CB4C03818179C6C16023A2860419061129105D49D1F9C953192BDB4FF
            1B64ABC386799755AD437ED1224C7855883F45F1915CA7BF6DEC2DE8E8E8C7F5
            EBE70DE2A1A13B888BB3529025B820E0F178DA0E1D3AB438F83889C8026ACFB8
            B176458AF8991C07AC61B8954BE328CD30A3501B456992092999097830AEE152
            FB007A7AAFE1EAD5169ABD079214038B450A988C08F51470B6A1A1A1DA780843
            6401AF3B070AD63B66ED2E1FC377B7349C188C857B220531C91624C50285893A
            AAEC32E2EFDD457C473DDA3BFF0C125B0CC2501310BDB0145DD072F8F0E1B5C6
            60188C807A041ABC8AACA0A6340BFB37E4A3E7D564DCAC19C21725B7B1CE7C03
            AE9E7EECF983793528A3F3CA25C4C408FF9B0DA2999AA669DEE0EA5310598049
            9327140D13B20F6E4E1B51AD884BCA43CDA279D8BF79011AAB3D80AA2156624A
            70D79108C39B08D6E804689A2C2B7E4E04EED1CC02E483C70F43904FA37935CD
            78D622104E6F02D10AF0FA7C1A34D56FE4707BFB39E6732B83EC3A7C248D118B
            5290AA53489084045348C39F03E9AA472100AA5753742864CBCCCC41595905E6
            CFAF4472720EC6C61E80314E62151E1F09F8758870BA08D142E0EF682CC08FFD
            010B0C0CF4308544B1011212EC48B427C16CE283E6A72BCCC6EE589A590F5259
            159784763BA5893136512A1F4164012A64AE0E9916484CCC422FF3BCA3A39585
            E61C2D30018BCE693ADF334EAC2C38CF391CAC8CB97455BB317DBA2504D83372
            1F45640126060C05886A176F8D435151394A4A2A31674E05D3CD1A281EC2028C
            81B48C2C0CBBDD2CBF17296ECC982E102E20FA18503559B84061E80F0CF6D00D
            B7B98858142C369C626289E519E06740BA6EDF6270BA8C2224104E1C6AC1F888
            C2053A2DC003466106CCCACEE7819288EEEE0B3C68CEF1981DE27B8916101A69
            0B93348528BC0F1F678BCA02FC58C34F3778A6DF71213F3D1D0B4B96A0A4B882
            2762264CAC7AC2058A411008565172CBCACA220661504414024CF41783F6C3CE
            623C734CC19AAF9BF1F98933E8EDBE8404CE4888B552242DE0D721D35559D9D9
            58BC78314646468CE911C8C5701402FC5C9DBB82998E97ACE8B23AD0E2CBC3FA
            D369A8F8F2677CFA8B93870F53902ECACFCD437171318FE136664B6F4472D168
            992804806928A24E2837C560A7BC1B39475FC107967D18B239F095BB027E732A
            B355474F7F3F4E3B9DE0AD69F2E40B35013126DC421151A4A1F0971040133B32
            64DCBAFC1B1273E6C17DFB325E48EF36FC2F9AC6F7A498BC784C2717FDFDFBF7
            E92AFFEF3C2D9DC6E034CC2040C480C83B712EAB4861954B4E664BCF429E7E47
            BC172219ABCC7116251188824C983A444E5211133A2DB087AE59E3743A030132
            0D9105584C2CC5DC2533A173C882A285CB60E7657376662ADC960C0E531CE117
            42C47F70D721725E5EC5CEC72449DA76F2E4C91D5D5D5D116B80C00C3160EFC6
            D8B8B8C6D0C21A768D6E42C65C07C6D21CF8BE3B8D8C1427FC4A17181A82C402
            BC7A89CB6807C9AB9A9A9ABE0D0ECF08A3AA46C4C653EFC0D3F72E6B7101D273
            80F4ECC0B81EB87E8B9D5BC664AC747D04ABC478E03303915AF4C33C98B61F3F
            7E7C3430E1F198598081060B365837C1A3BC05D5F33CD253249646F084322C80
            112F56F77F0C89E78CC72B2B56AB75677373F36E4E7C689227E00902C2B0F6C7
            42C8E3DB21DF7F0336EB6CCCA255A4042CEFFB0492CFDD27C5D95E6B6969F935
            F8F553E3E90584B0FA9484079D2FB15ABE09CDB2C866BEDBBA3CE5871DCDCDAD
            4C8FFF1D80BF01759E4AD36158EBC90000000049454E44AE426082}
          StopValue.PNG = {
            89504E470D0A1A0A0000000D4948445200000020000000200806000000737A7A
            F4000000017352474200AECE1CE90000000467414D410000B18F0BFC61050000
            04C3494441545847D597BB4BEC4714C7C75D1F2B6AC4F7FBC65482C158844412
            BC658490902E29D2A44A158B808A9242B13058AA4DC0C65E2E217F8045309682
            5CD0A8A888A2AE8F15DFAF5D75EFF99CFDCD322EBFEBFD6D52847C6198F99D79
            7CBF73CE99995DF35F23C7ABFF15A6A6A622FBFBFB9F86C3E1978F8F8F1FE6E4
            E4FCD6DFDFFF97D7FD2CFEB180F1F1F1F784ECB3FBFBFB970F0F0F1F4B3B82BD
            B1B1D1141616BE2E28287825422E565656CE2391C877D2DEECEEEE9ED6C90EB2
            1220A4557777779DC964B253483F12532EF6D2D252D3D4D464EAEBEB4D494989
            B9BABA3237373746C425E7E7E793B9B9B92169C77A7A7ABE65BC8B770A181B1B
            7B218B758642A14E59A4454C21ECC5C5C54ADAD0D0A002441066236130B25B73
            7171613636368C8446ED32372A02BED70F07BE022627273F383F3FFF4276FBB9
            ECF6852CA8E3C4AD4A4A8154FA8CB85E6BD9A5929F9E9E9ADDDD5DB3B3B30369
            5A502291D8EEEDEDFD41091CF80A989898F85D2696E14AD9B91212DBB2B23225
            B405E4E7E76B7D7272628E8E8E949C7910532C44C07A5F5FDF8FDE671AEACE4C
            883BF3D82131851877135348589C1D4BA299BCBC3C255D5B5B338B8B8B667575
            55C7D95D6788BDD3C533E02B4026C459A0B9B9D948069B582C66B6B7B735A694
            F5F575B3B9B9A96DC825D3CDD9D99986C18B968AA4D8B6AC99D08F0CF80A9045
            E224556D6DAD696D6D351D1D1DA6BDBD5D130E974386AB49B4C3C343DD31A1B2
            842E1C5BDCAB9FC057804C4AE036928882185C8E80B6B636D3D2C26148653CC4
            9E8B156F1321252B01EA011626A69E4D8520C892D83180DAB66DBF0BE90B2EC0
            86C0921E1C1C68E1886123CE2E096DFBED8AC8B00517805A26435E5454646A6A
            6AB49090723778A3521E70E1125A2116D2979D07A859F0F2F232ED762E220A80
            001B052188ABABABD36F0B778C94E0A7402626DC8571BD0D433C9EDA88EDE7E8
            715A7803B8136C1FC5857C07BF070471EB46082A2A2A4C555595A9ACAC7C72BB
            41C2E92051A3D128B79DD79302FDD60B82E0219009690F70D639F7DE220A3709
            E5CDD07E5758263C11D95D44D490700DE385E3E363BD116F6F6FD3679F7EC400
            EB316C561C70BE837B4016D25340CCB9FB11515D5DAD21202700FD2E21A2E8C7
            66FB5D8837830BC0032C8480858505333737A7F73D8F113BE611B2C48489A34A
            22E21D9029C2ABB3CF01002121E0FCF3DACDCECE9AA5A525B533865793679A1F
            1EE48B9DE78AF0DAD979809AC91001C811C2EEAFAFAF35E9589804DCDADA524F
            585811C00A95B1C18F21F1B28BE05E42411E701FF00D31C58E21FE7E600C6191
            717FCB98D79EF9099ECD01C02D48E25138F3D623EE2E01DFAE8DB6842D29E3FF
            D8DBDBFB797878F8D2EB7A027FE9122FBB20970C2700F7B37B60896C6DC55A10
            0E21E719FD757070705C7E63FADE01C05780B82B2A8B246D5C71637979B97A80
            30586412036E437E804AAEFC24BB9EF1CC6F85EFF535333313EDEAEA922BE0EA
            7DB9FB8B21E20D20F95CD8181316DA8816F39F72327E191818483D0CEF80EFAF
            628BA1A1A190B8BD43F2E01B21F844761526170807203FAC4764D709391993B2
            EB576A08886705B8181919A991987F25BBFC52045422849D23406C31B109F7F0
            A2373C30020BB0989E9E0E2F2F2FF387E56BF96C967A59126E7C7474F42435E2
            7F0563DE00A0DDBB352FB8790C0000000049454E44AE426082}
        end
      end
      object efctGlow2: TInnerGlowEffect
        Softness = 0.400000005960464500
        GlowColor = claWhite
        Opacity = 0.899999976158142100
        Trigger = 'IsMouseOver=true'
        Enabled = False
      end
    end
    object btnProject3: TCornerButton
      DisableFocusEffect = True
      Font.Size = 30.000000000000000000
      StyledSettings = [ssFamily, ssFontColor]
      Height = 65.000000000000000000
      Opacity = 0.750000000000000000
      Position.X = 8.000000000000000000
      Position.Y = 152.000000000000000000
      Sides = [sdTop, sdLeft, sdBottom, sdRight]
      TabOrder = 2
      Text = 'Project'
      Width = 305.000000000000000000
      XRadius = 15.000000000000000000
      YRadius = 15.000000000000000000
      OnClick = btnProjectClick
      OnMouseDown = ControlDragMouseDown
      object rndrctTime3: TRoundRect
        Fill.Kind = bkGradient
        Fill.Gradient.Points = <
          item
            Color = claBlue
            Offset = 0.000000000000000000
          end
          item
            Color = claLightblue
            Offset = 1.000000000000000000
          end>
        Fill.Gradient.Style = gsRadial
        Height = 25.000000000000000000
        Position.X = 232.000000000000000000
        Position.Y = -8.000000000000000000
        Stroke.Color = claLightgray
        Width = 81.000000000000000000
        OnMouseDown = ControlDragMouseDown
        object txtTime3: TText
          Align = alClient
          Color = claWhite
          Height = 25.000000000000000000
          HitTest = False
          Text = '00:00 '#183' 00:00'
          Width = 81.000000000000000000
        end
      end
      object imgIcon3: TImage
        Height = 50.000000000000000000
        HitTest = False
        Position.X = 8.000000000000000000
        Position.Y = 7.000000000000000000
        Width = 50.000000000000000000
        object anmProject3Icon: TBitmapAnimation
          Duration = 0.200000002980232200
          PropertyName = 'Bitmap'
          StartValue.PNG = {
            89504E470D0A1A0A0000000D4948445200000020000000200806000000737A7A
            F4000000017352474200AECE1CE90000000467414D410000B18F0BFC61050000
            068C494441545847D5565B6C145518FE7676B6DDEEB6DBFB8D5E28D04201EDDA
            140A2D106E2122412D895189341283F1411ED418890FC6F86C4CC00453251212
            14040402FAA098962E41B1049070292DD4022DBD60A55BE86577666767FCCEEC
            6E5DCA16587D307EED9FB37366CEF9BEF3FFFFF9CFC17F0D4BB8FD57D8B06183
            73787878754242C23A4DD36A25497AF7E0C18387C2AF1F8A7F2CA0BEBE3E93CD
            DA4020B0CEEFF7AF020C070D0B16D4222D2DD5E37239B7CA72A2F7C89123832E
            97EB1D7E7BA9A1A1E113737014E212B071E3C62245519E5755751D6D89C562B1
            5938437171316A6A96A0A2A216F9F985F07A7B68FD1819193376EC68301C0E87
            C471BDBB77EF2E084F358E470A58BF7E7D3907AFE3CF3AB6F324C92289FE9C9C
            6C2C5AB41455554B485A024D53D8ABC36E972149367475FD89C6C6C3B872E52C
            DF05E1F3F9AEEFDDBB77BA181B8DD802DEEC7A72DEE0CE0D53874F3DAB1872B9
            C1EFC44A535252B078F15254572F4141C14C048341184600BA1E84C391601277
            74F4E3DCB913387FDE83D1D151302F385802C3D4B667CF9ED9618671C416F0EA
            99FEBCECA1DC79BD5F21373868BA777ECD0A1495CCC5983F08F1A7AA01921B48
            4F77B0B5A2ADAD1757AF9E318907066E2331D14E41D6F084101E38BF6FDFBECA
            F0E338620B78E5A4172B16A5899FA989C032A65B853C8A995912A6EAC398E9B2
            202DDB897BA33A2EB4F6A1FBD6155CBEDC4CB77743966DB05AE590CB88484B01
            A7F6EFDF5F6B3E4421B680973D7DC52BDD79DB2A46F0CD0D1DC7FA13E01D4B83
            2DD50A57023035D9404D8A82A43B7F20A9AD01ADEDBF8789AD2661C404442B3C
            C510341F387060B9D9190533A11E40107E555151373307BB5615A1FBC5545CAF
            1BC0676537B142BA86AEEE5E6CFF8DFBAA5F41FBA50BB0D944FC25936832D375
            DD1F9EFD3EC41620E9CA98AA634C09C0CB6143413B125D85A89B3B03BBD6CEC6
            915A1F45EA48902D90B8EA5884D12692353E01BAAE28AAC681C01DBA59807CF0
            6930050574BA57D7CD673D06E14413884F4030E80F0474E841CDDCC3ADADA7B9
            9F5B9864571120A94D4C4A41418342C22424B88F34FA39B45D8D380458827E5D
            35A0922D3B3B1FE5E5D598356B015253F359DDEE81394E6216970009F8798470
            A2086111F0773C21801F5AC8037D7DDDDC42A2D8004E670A92535C902C7CD035
            86423257C7F380F5209D55B12AB2DAFB4CF4D144A97C00B1056850383B147A20
            393907B7B8CFDBDA5A58684E8BFA0EABC16106DF334FEC2C384FB9DDAC8C050C
            55AB397CA22704D832731F446C011213860244B54BB227A2A4A40265650B306D
            5A35B79B3D543C8407980319593918F47A597ECF51DC88395C205A40FC3920DC
            C510A84CFDBEFE6E86E126BBC4A460B1E1100B4B2CCF008D09D975F30693B3CB
            2C4202D1C4110BE7471C21106A79C0A8DC0179B9453C5092D1D9799607CD691E
            B3037C2FD30342237D6191EF238A6EA3FB69F178407CACE3876BFD18BDDD85A2
            CC4CCC29AB425969354FC46C5858F5440854932094ACA2E496979747DCFD80C5
            27C0420F300AEFB797E289C32A967DD9844F8F9DC4ADCE0B70728433C14E91F4
            80664061A872727351595989A1A12173780C72D11D87008DB37355901878D98E
            0EBB1BCD8142AC3C9181EACF7FC4C73F7978F8700B3244450585282D2DE5317C
            9EBBE5564C7261F44C1C02C06D28B24E28B7D8B045D986FC432FE03DEB4E0C38
            DCF8C25B0D4D4AE79965A0BBB717273C1EF0B6347EF2454C40F489B050441CDB
            50C44B08A08BDD590A6E5CFC05C9F933E0BD7911CF64769AF117A6F33D29C62F
            1E13C9457BF7EE5D864AFB95A7A5C7EC9C804904881C10FB8E25510D228D552E
            359596998342E3B6782F443257B9C7599444220A32E1EA083949454E8887ED0C
            CD328FC7134A9009882DC06A6129E62AB913DA07AC2899331F29BC6C4EC94E87
            D79AC56E8A23342144FC87571D21E78D59908FC8B25CDFD8D8B8B9A3A323660D
            10982407523A59D6C435861ED6B175780DB2A6BB3192E1C6B79D1964A4381157
            86C0D4102616E0D54B5C46DB6C365B0DC9BF0E774F0AB3AAC6C4EAE36FC1D7F3
            366B713132F381CCDC50BF11BA7E8B955B47142CEEFA007699F9C06726A2C130
            1CC8C8C8D874F4E8D1E1D0808763720126F65BB1CABE8657A33710F43D8DAC74
            99A5113CA14C0F60C88FA5BD1F42E639E3F32BAADD6EDFD2D4D4B48D03FF76C9
            23F008015158FEFD5428A39BA00CBD0647D214E4D12BB2130B7B3E821C18EC91
            139D2F353737FF1CFEFAB1F1F80222587A5CC6BDF6E7981BAF43B7CE7548032D
            0BD3BEDBDCD4D4C2EDF1BF03F017709849D276E1B1230000000049454E44AE42
            6082}
          StopValue.PNG = {
            89504E470D0A1A0A0000000D4948445200000020000000200806000000737A7A
            F4000000017352474200AECE1CE90000000467414D410000B18F0BFC61050000
            0476494441545847D597CB4B644714C6CB6E1FED5BD1A0A00E66152538082191
            0467994548C86A924536596515170151778A0B83E046DD04DCB89721E40FC822
            A04B4106242A2AEAA08EA2E01BB57D74CEEFE49E9EF2E6B6733BB308F9A0A87B
            CFAD5BDF57DF3955B7DBFDD72808FA77C2F4F4746A6F6FEF936432F9ECFEFEFE
            C38282825F0606066683C78FE25F0B989898A812B24F6F6F6F9FDDDDDD7D242D
            45BCB9B9D9959595BD2C2929792142CE9697974F53A9D4B772BDD1D3D333A32F
            7BC84B8090BE777D7DDD9DC964BA85F8A9840A89D7D4D42871535393ABACAC74
            E7E7E7EEEAEACAC998CCFCFC7CA6B0B03021D787BDBDBDDF30DEC75B058C8F8F
            3FB9BCBCEC4E2412907E20A104F18A8A0A25A55557573B7180B093343859AD3B
            3B3B73EBEBEB4E52A37179F7B508F84E6F3C440A989A9A7AFFF4F4F47359C567
            B2DA2742AEE3C456D7D2D2A2A4AC5A9E658965954A7E7C7CEC767676DCF6F636
            A45941E974FA555F5FDFF73AD843A480C9C9C95FE5C55AAC648228527A505454
            A43DC40707074ACE7B26C82002D6FAFBFB7F086EB3503BC310E545D84A4E21C6
            6E4983925C5C5CE898D2D252253F3C3C746B6B6B6E7171D1ADACACE838C80142
            AD890BD71A0C215280AC2E8D6DADADAD4E2A5849B6B6B694C8DAC6C686F6ABAB
            AB4E2A5DC541CC7B51901D73135C3E40A40099244DFE1A1B1B5D7B7BBBEBEAEA
            729D9D9DEA06756079C6EAFDFD7DB59A6669C98174D03F402E076E980C11342C
            C40952D2D1D1E1DADADA749C11F3DC10258298B4BC04A42D77EC6703F7083212
            1B13BE8E122129882FC05200E8D9CB34AC6772F21C45027C11BE50417C01F282
            0E869C1D402DD048839C843A0698C8307C370C2226BE003978B2832934B39D02
            A4019F80E78843A40FC6980BD2C7DF056C195EB489B19E6AA7851D60EB418C53
            6CD75C90F9E29F03022D424440505757E7EAEBEBB5D921634020854A8DDCDCFC
            73919E0BF1536076F1321F959393138DFB0826D5E738E41FBB610422F23B88E8
            21C15A568DBD34566B7B9FE776F2716F311317427C07D8B34C42CE39FB11D1D0
            D0A029C07283110244F19C18088B90787C0138C044E4756161C1CDCDCDE9797F
            7474A4CFF9081901E3CACBCBB510EDD00A8B08FAFC6B00603129A0FAF9DACDCE
            CEEA97CF0E23BE9AB5B5B52A962D6BF04504D7F939105C6681030861F57C72AD
            0E28D0CDCDCD2C6118562392D6F8DB5026D31A00E49FD5D153EDD80D994F986B
            073086B4C85C7FCAE1F632083FC0A33500EC30B2662B0A03C126DA20BF823232
            FEB7DDDDDD9F868787DFE4C743A40081A68009B19B1D80FDB8E0C3087D3700A2
            A5662EE5F2E7C1C1C109F98D19790680480162D76B993463136323A7210E9006
            439818701A8A8057522B3FCAAA7F0FC23911EDA7606C6CECB958F85CF2DB00B1
            FDF8F4C14A7D41526858F2475555D598FC04C781B722A7003034349490A2EB12
            A2AF65B51F171717271163DF035F8088BD91F894ACFA850662E251013E464646
            1A24E75F8A902F84A81E210001123B1487847B7851837920B600C3CCCC4C7269
            69893F2C5FC96DABF44B527013A3A3A37F1F93FF2F38F717D264350CD60585CC
            0000000049454E44AE426082}
        end
      end
      object efctGlow3: TInnerGlowEffect
        Softness = 0.400000005960464500
        GlowColor = claWhite
        Opacity = 0.899999976158142100
        Trigger = 'IsMouseOver=true'
        Enabled = False
      end
    end
  end
end
Added ProjectIt/src/F_ActiveProject.pas.
























































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
unit F_ActiveProject;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Rtti, System.Classes,
  System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Dialogs,
  FMX.StdCtrls, FMX.Colors, FMX.Layouts, FMX.Objects, FMX.Ani, FMX.Effects;

type
  TForm4 = class(TForm)
    lytProjects: TLayout;
    btnProject: TCornerButton;
    rndrctTime: TRoundRect;
    txtTime: TText;
    imgIcon: TImage;
    btnProject2: TCornerButton;
    rndrctTime2: TRoundRect;
    txtTime2: TText;
    imgIcon2: TImage;
    anmProjectIcon: TBitmapAnimation;
    anmProject2Icon: TBitmapAnimation;
    btnProject3: TCornerButton;
    rndrctTime3: TRoundRect;
    txtTime3: TText;
    imgIcon3: TImage;
    anmProject3Icon: TBitmapAnimation;
    efctGlow: TInnerGlowEffect;
    efctGlow2: TInnerGlowEffect;
    efctGlow3: TInnerGlowEffect;
    procedure ControlDragMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,
      Y: Single);
    procedure btnProjectClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    procedure SetProjectActive(const Button: TCustomButton; const Active: Boolean);
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form4: TForm4;

implementation

{$R *.fmx}

{ ------------------------------------------------------------------------------------------------ }
procedure TForm4.FormCreate(Sender: TObject);
begin
  SetProjectActive(btnProject, True);
  btnProjectClick(btnProject);
end;

{ ------------------------------------------------------------------------------------------------ }
function FindDescendantByClass(const Control: TFmxObject; const TargetClass: TClass; const Recursive: Boolean = False; const SkipChild: TFmxObject = nil): TFmxObject;
var
  Child: TFmxObject;
begin
  for Child in Control.Children do begin
    if Child.InheritsFrom(TargetClass) and (Child <> SkipChild) then
      Exit(Child);
    if Recursive and Assigned(Child.Children) then begin
      Result := FindDescendantByClass(Child, TargetClass, Recursive, SkipChild);
      if Assigned(Result) then
        Exit;
    end;
  end;
  Result := nil;
end {FindDescendantByClass};

{ ------------------------------------------------------------------------------------------------ }
procedure TForm4.SetProjectActive(const Button: TCustomButton; const Active: Boolean);
var
  Shape: TShape;
  Animation: TBitmapAnimation;
begin
  if Active then begin
    Button.Font.Style := [TFontStyle.fsBold];
    Button.Opacity := 1;
    Shape := TShape(FindDescendantByClass(Button, TShape));
    Shape.Fill.Gradient.Color := TAlphaColorRec.Darkgreen;
    Shape.Fill.Gradient.Color1 := TAlphaColorRec.Lightgreen;
    Animation := TBitmapAnimation(FindDescendantByClass(Button, TBitmapAnimation, True));
    if not Animation.Inverse then begin
      Animation.Inverse := True;
      Animation.Enabled := False;
      Animation.Enabled := True;
    end else begin
      (Animation.Parent as TImage).Bitmap.Assign(Animation.StartValue);
    end;
  end else begin
    Button.Font.Style := [];
    Button.Opacity := 0.75;
    Shape := TShape(FindDescendantByClass(Button, TShape));
    Shape.Fill.Gradient.Color := TAlphaColorRec.Blue;
    Shape.Fill.Gradient.Color1 := TAlphaColorRec.DarkBlue;
    Animation := TBitmapAnimation(FindDescendantByClass(Button, TBitmapAnimation, True));
    if Animation.Inverse then begin
      Animation.Inverse := False;
      Animation.Enabled := False;
      Animation.Enabled := True;
    end else begin
      (Animation.Parent as TImage).Bitmap.Assign(Animation.StopValue);
    end;
  end;
end;

{ ------------------------------------------------------------------------------------------------ }
procedure TForm4.btnProjectClick(Sender: TObject);
var
  Button: TCustomButton;
  Child: TFmxObject;
begin
  if Sender is TCustomButton then begin
    Button := TCustomButton(Sender);
    if not (TFontStyle.fsBold in Button.Font.Style) then begin
      SetProjectActive(Button, True);
    end;
  end;

  for Child in lytProjects.Children do begin
    if (Child is TCustomButton) and (Child <> Sender) then begin
      Button := TCustomButton(Child);
      SetProjectActive(Button, False);
    end;
  end;
end;

{ ------------------------------------------------------------------------------------------------ }
procedure TForm4.ControlDragMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,
  Y: Single);
begin
  if Button = TMouseButton.mbLeft then begin
    Self.StartWindowDrag;
  end;
end;

end.
Added ProjectIt/src/F_Main.dfm.














































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
object Form1: TForm1
  Left = 0
  Top = 0
  Caption = 'Form1'
  ClientHeight = 293
  ClientWidth = 326
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  OldCreateOrder = False
  ShowHint = True
  PixelsPerInch = 96
  TextHeight = 13
  object vgsProjects: TvgScene
    Left = 0
    Top = 0
    Width = 326
    Height = 293
    Align = alClient
    Transparency = True
    TextRendering = vgClearType
    Style = resStyle
    ExplicitLeft = 24
    ExplicitTop = 24
    ExplicitWidth = 100
    ExplicitHeight = 100
    DesignSnapGridShow = False
    DesignSnapToGrid = False
    DesignSnapToLines = True
    object bkgRoot1: TvgBackground
      Width = 326.000000000000000000
      Height = 293.000000000000000000
      Resource = 'bkgRoot1Style1'
      object btnProject: TvgBitmapButton
        Align = vaTop
        Width = 326.000000000000000000
        Height = 60.000000000000000000
        Opacity = 0.500000000000000000
        TabOrder = 0
        StaysPressed = False
        IsPressed = False
        Font.Size = 24.000000000000000000
        TextAlign = vgTextAlignCenter
        Text = 'Project'
        Bitmap.PNG = {
          89504E470D0A1A0A0000000D4948445200000020000000200806000000737A7A
          F4000000017352474200AECE1CE90000000467414D410000B18F0BFC61050000
          00206348524D00007A26000080840000FA00000080E8000075300000EA600000
          3A98000017709CBA513C00000816494441545847B5970B5054E71DC53F249AA4
          B6265168D0564B3A51A24E4B2D8EAF34222E8F855D7679232B2F45B02AA8A918
          A280063441A4033A93A0A306E3234EB436B18DAD36887140A38006798B88B080
          08884FC4070EF7F47C57D7D24CE39A38DD993377F7B27BCFEF3BFFFFF7C0463C
          E32B3838F8A7F7EFDFF7B6B5B5F50730A5BBBB3BADA0A0E0001F7B9BEA7BC6C7
          FFEF9F878585D9CD9A356B6E5050D0DFFDFCFC7AFCFC8CF0F3332023631DD2D2
          D24E4645452D4D4F4FD71B0C8689B1B1B13B22232357F0492F51CFFD68A08888
          88511CEDE2C0C0C0A3BEBEBEBD7C388C46031212E2B167CF5E5455B5E0EA5505
          172EB4A2B4F434BEFEBA5031994C7DF3E6CD436868681B8D3DA8A13F04C08623
          1CC711A6188DC6129D4ED7E7EBAB87544CCC1CE4E57D82F2F2067476F6A1ADED
          0E751BD7AEDDC38D1B7DA8A8E8404ECE66C4C5C562EEDCB9F0F7F737D3F85DEA
          57D6011634FCD62524252B40E759A3D7E9141A43AFD7212C6C163EFA68134757
          45B35EB4B4DC4573F32D34355D27440FBABA7A71EA5433727377ABC6B3679B30
          674EB40AC0B4EA69BC86FAB57580A8D27687C423D09BA211136AC0B60D59282F
          3E836B1DF7D06AEE81D97C0BF5F55771FE7C17AE5CB943F3FB282C6CC4B66D7F
          417C7C3CE30E46646404A2A3A31FCBC7C7A79AC6EF51AF51364F8630155E171F
          2B907A69B702E32105A9F9B7B1ABEC0E0ACF74A0BDBE13F76EF4A0F352378EE4
          9FC7F6ED7F4362E2DB08090982C91406F60A012255B1195569349A329AA6528E
          D601428F5C1EB5F506BE286E45E8DE66BCB2B11D22E31E06E63EC0B06D0FF0FB
          CF7AB1E81FDD48DCD980D495CB111818209B8CE626C63E1BE1E1E12A8405445E
          67CC985142E3958F7AE08909D888E0FC26870F3BA15CEFC5DD6B0A6E5FBE8BC6
          DA166CCDBF80E0BC1AD8653541ACED86767D0D420C5EE074647F84A9EA0F6101
          91D7E9D3A79FA0791235D25A023622F05F7543B2DBD1D3DEC36653D0DAAAA0ED
          92822B7CDFD3A9E0C4895A88B49B3064D76296BF8F3A7A096101B14058D29060
          D3A64D3B46E365D42FAD03041CAE787E5D2B6E5DEA416565870AD0D2A2B0E309
          431D2B3A07B1FA3A3CD6D722C4CF9BB50F51212C2096242C20F2F3A44993F269
          BC94FA857500E3C192016B9A71A3F926CACADAF0D557C5D4291C3F5E87C68B4C
          A09009A45EC7CCCC7308316AC1C5499505E4BB69C8FB2E2E2E87689C408DB00E
          6038502452CDE86CB8AA8E5E8EDC6C5698C62D5456DC4471211348E9C2D4B5B5
          082600172B3662A07AFD6E1A320579CFD9D9F94B1A2FA4865B07D07F9E2F5634
          A2FD7C07179D66D4D5F5A2B151C1458E5E5E4B8B6A2056B663627A1D02F41E5C
          8E8D90CB6D4646860A220D2D20327E796FFCF8F107681C47BD6A1D40F7C54191
          D80073F525D4D6DE434141390E1D3A85C3878B99420FBE9509AC68C36F52AA61
          0AF4C5EA55ABB07AF56A75DA5992B094449643DE1B3366CC7E1ACF7D04F0C475
          C846E8F6FF552CA9477D59139A38E28606B9C1284C424175751FCA24405233DE
          48AE41FCFC186E4609DC1F7CE57AFF1840964342C8C6E45E82D1A347EFA56B34
          65FF4477351EEDBE3D62511DAA4F5FC4C993CD6CBE26D5FCDCB9872A2BAA8778
          A701AF27D5C0A0D5A8259026122020204085E8DF1372D7747474DCC367475076
          D6013CF76C170B6A5076AA5EEDFA92922E96E0340E1E2C26502713688448AC81
          E3F25A18BCBDE446A342484988FE203205BD5E8F912347EEA2711835CC3A8066
          D726B1A00A19BB8A5075D28CCB2C81599680A3AFAA5270F6B819E24F15184108
          5FAD07F43A1F3581A4A42415A67F1AB21472371D3E7CF80E1A875056CF033642
          B36383883BC3A9769951D7C369650196E516A1E09FE568AC51505FD201B1A414
          3F5F5A0D4F770DB7DB39F21484F9F3E73F4EC302214BE1EDED0D0707873C9A07
          50AF584B4008D7BC4C11530CB1AA95D3AD05B6E95D70D9C8D8DF6D81FD92C388
          7B7F1F9E5B7606C3E22B10C39DEE830FDE5763972395CD68298905C2CBCB0BF6
          F6F61FD3D848C9639995D78CBC7411FD0D136886486EC7CAE454E85D5DF04E72
          1AA71F5349E466B4FC225E8E2F87A78707B45E9EE07EAFD65ACA0221016453BA
          BBBB63E8D0A15BE8AAA38658B317E20F5B93454411476C86738E192683861B4D
          0862C383E0FDE713ACFF058865E731E48F67094073462C0164020F4F4FFAC729
          F01C2097E1B33C317F4863376AB0758037372F13A6639CEB8D70CABC88855141
          6A7D13972C446CD6E7104B390DDF3E87C17165D0B86BE1ADF552EB2C6549425E
          5D5D5D152727A783363636DB69BA981A4D3DC5A9F8AD2D8B44C8110234306E33
          D66766D27C11B2D7262328BB1062311722023C3FEF5B9E74B46A09B45A5E2969
          ECE9E9892953A674DBD9D9EDA6E1264AAE80E3A817AD8F5E7E63EA669DF039A0
          8825D5AC752346A45462DDC62D48CFDD07115F0591402DAEC6C0E833709BA985
          9727FBE011809B9B1B264C987061D0A0413BF9A42CCA8F9227E1414F67FEF05B
          2F8A491BD68837735B84763FC46CD67D31EB2E9540A8844A8254C236FA345C67
          7AAB001E6C469E7A94B163C71E65E4D23C9972A5E4D2FB14B1FF37DE007E7420
          B4BF78754696705E5328267FF240E8BF849857C21EE06E2821224AE1AAF18166
          A61BA64E9D7A9F73FD33FE4E76BBDC769DA99F51564EC0DF9F8BA496ABD61B94
          B7F8C9A8E5C271CEA7C239E7B2786B27786E8408FB0653A67B61F2C4DFB50D1E
          3C588E3A870AA5E4D9FF856731B760497A0922E7EE286AB218F042941836395B
          3825168971D9AD035F0B3FCA2926BBFC3D4AFEEBC5E47E78E4DF9FC37FFE2261
          E4A8644D6547FB50F2889542C55213A9972959BEFFEBAB7F2AF27CE748C953CE
          8F8EFCDF67F1491D10C6ABC30000000049454E44AE426082}
        BitmapSize = 32.000000000000000000
        BitmapPadding = 8.000000000000000000
      end
    end
  end
  object resStyle: TvgResources
    Left = 8
    Top = 64
    ResourcesBin = {
      545046300D5476674261636B67726F756E640005576964746805000000000000
      008B08400648656967687405000000000000808B08400A46696C6C2E5374796C
      65070F766742727573684772616469656E741446696C6C2E4772616469656E74
      2E506F696E74730E0105436F6C6F720609234646393731463146000105436F6C
      6F720609234646464646464646064F6666736574050000000000000080FF3F00
      001346696C6C2E4772616469656E742E5374796C65071076674C696E65617247
      72616469656E742146696C6C2E4772616469656E742E5374617274506F736974
      696F6E2E506F696E74060928302E3530302C30292046696C6C2E477261646965
      6E742E53746F70506F736974696F6E2E506F696E74060928302E3530302C3129
      00095476674C61796F7574000C5265736F757263654E616D6506116269746D61
      70627574746F6E7374796C650E506F736974696F6E2E506F696E740609283234
      312C323636290557696474680500000000000000920540064865696768740500
      000000000000D00340000C54766752656374616E676C65000C5265736F757263
      654E616D65060A6261636B67726F756E6405416C69676E070A7661436F6E7465
      6E7473064C6F636B656409055769647468050000000000000092054006486569
      6768740500000000000000D003400748697454657374080A46696C6C2E537479
      6C65070F766742727573684772616469656E741446696C6C2E4772616469656E
      742E506F696E74730E0105436F6C6F720609234646453045304530000105436F
      6C6F720609234646333033303330064F6666736574050000000000000080FF3F
      00001346696C6C2E4772616469656E742E5374796C65071076674C696E656172
      4772616469656E740C5374726F6B652E436F6C6F720609234646323232323232
      07785261646975730500000000000000C0004007795261646975730500000000
      000000C000400011547667436F6C6F72416E696D6174696F6E00084475726174
      696F6E050000000000CDCCCCFC3F0C486964654F6E46696E6973680807547269
      67676572062049734D6F7573654F7665723D747275653B497350726573736564
      3D66616C73650A537461727456616C756506092346463530353035300953746F
      7056616C756506092346463730373037300C50726F70657274794E616D65060A
      46696C6C2E436F6C6F72000011547667436F6C6F72416E696D6174696F6E0008
      4475726174696F6E050000000000CDCCCCFC3F07496E7665727365090C486964
      654F6E46696E697368080754726967676572062149734D6F7573654F7665723D
      66616C73653B4973507265737365643D66616C73650A537461727456616C7565
      06092346463530353035300953746F7056616C75650609234646373037303730
      0C50726F70657274794E616D65060A46696C6C2E436F6C6F7200001154766743
      6F6C6F72416E696D6174696F6E00084475726174696F6E050000000000CDCCCC
      FC3F07496E7665727365090C486964654F6E46696E6973680807547269676765
      72062049734D6F7573654F7665723D66616C73653B4973507265737365643D74
      7275650A537461727456616C756506092346463430343034300953746F705661
      6C756506092346463730373037300C50726F70657274794E616D65060A46696C
      6C2E436F6C6F72000011547667436F6C6F72416E696D6174696F6E0008447572
      6174696F6E050000000000CDCCCCFC3F0C486964654F6E46696E697368080754
      726967676572061F49734D6F7573654F7665723D747275653B49735072657373
      65643D747275650A537461727456616C75650609234646373037303730095374
      6F7056616C756506092346463430343034300C50726F70657274794E616D6506
      0A46696C6C2E436F6C6F720000000754766754657874000C5265736F75726365
      4E616D6506047465787405416C69676E07087661436C69656E740E506F736974
      696F6E2E506F696E74060628302C333129064C6F636B65640905576964746805
      0000000000000092054006486569676874050000000000000088034007486974
      54657374080A46696C6C2E436F6C6F72060923464645304530453009466F6E74
      2E53697A650500000000000000C0034004546578740604746578740000085476
      67496D616765000C5265736F757263654E616D650605696D61676505416C6967
      6E07057661546F700E506F736974696F6E2E506F696E74060528332C3329064C
      6F636B6564090557696474680500000000000000860540064865696768740500
      000000000000E003400C50616464696E672E52656374060928332C332C332C30
      290748697454657374080A4269746D61702E504E470A8D00000089504E470D0A
      1A0A0000000D49484452000000010000000108060000001F15C4890000000173
      52474200AECE1CE90000000467414D410000B18F0BFC6105000000206348524D
      00007A26000080840000FA00000080E8000075300000EA6000003A9800001770
      9CBA513C0000000B494441541857636000020000050001AAD5C8510000000049
      454E44AE42608208577261704D6F6465070A7667496D61676546697400000D54
      7667476C6F77456666656374000754726967676572060E4973466F6375736564
      3D7472756507456E61626C65640808536F66746E657373050000000000CDCCCC
      FC3F074F7061636974790500000000006666E6FE3F09476C6F77436F6C6F7206
      092346464636394532440000000C54766752656374616E676C65000C5265736F
      757263654E616D65060F6261636B67726F756E647374796C650E506F73697469
      6F6E2E506F696E740609283235332C3235342905576964746805000000000000
      00C80440064865696768740500000000000000C804400748697454657374080A
      46696C6C2E436F6C6F7206092346463530353035300C5374726F6B652E537479
      6C65070B766742727573684E6F6E6500000C54766752656374616E676C65000C
      5265736F757263654E616D65060F6261636B67726F756E647374796C650E506F
      736974696F6E2E506F696E740609283235332C32353429055769647468050000
      0000000000C80440064865696768740500000000000000C80440074869745465
      7374080A46696C6C2E436F6C6F7206092346463530353035300C5374726F6B65
      2E5374796C65070B766742727573684E6F6E65000000}
  end
  object conProjects: TZConnection
    Protocol = 'sqlite-3'
    Database = 'ProjectIt.sqlite'
    SQLHourGlass = True
    Left = 152
    Top = 96
  end
  object qryProjects: TZReadOnlyQuery
    Connection = conProjects
    Params = <>
    Options = [doCalcDefaults, doSmartOpen]
    Left = 152
    Top = 152
  end
end
Added ProjectIt/src/F_Main.pas.




























































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
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
unit F_Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, vg_scene, vg_controls, ZConnection, DB, ZAbstractRODataset, ZDataset;

type
  TForm1 = class(TForm)
    vgsProjects: TvgScene;
    bkgRoot1: TvgBackground;
    btnProject: TvgBitmapButton;
    resStyle: TvgResources;
    conProjects: TZConnection;
    qryProjects: TZReadOnlyQuery;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

end.
Added ProjectIt/src/prj/ProjectIt.dpr.


























>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
program ProjectIt;

uses
  FMX.Forms,
  F_ActiveProject in '..\F_ActiveProject.pas' {Form4};

{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TForm4, Form4);
  Application.Run;
end.
Added ProjectIt/src/prj/ProjectIt.dproj.










































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup>
        <ProjectGuid>{3EC74676-A1B3-4682-90A5-9209A2735431}</ProjectGuid>
        <ProjectVersion>14.6</ProjectVersion>
        <FrameworkType>FMX</FrameworkType>
        <MainSource>ProjectIt.dpr</MainSource>
        <Base>True</Base>
        <Config Condition="'$(Config)'==''">Debug</Config>
        <Platform Condition="'$(Platform)'==''">Win32</Platform>
        <TargetedPlatforms>1</TargetedPlatforms>
        <AppType>Application</AppType>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='OSX32' and '$(Base)'=='true') or '$(Base_OSX32)'!=''">
        <Base_OSX32>true</Base_OSX32>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
        <Base_Win32>true</Base_Win32>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
        <Base_Win64>true</Base_Win64>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_1)'!=''">
        <Cfg_1>true</Cfg_1>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
        <Cfg_1_Win32>true</Cfg_1_Win32>
        <CfgParent>Cfg_1</CfgParent>
        <Cfg_1>true</Cfg_1>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_2)'!=''">
        <Cfg_2>true</Cfg_2>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base)'!=''">
        <DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)</DCC_Namespace>
        <Manifest_File>None</Manifest_File>
        <DCC_UnitSearchPath>..\;.\;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
        <Icns_MainIcns>$(BDS)\bin\delphi_PROJECTICNS.icns</Icns_MainIcns>
        <VerInfo_Locale>1043</VerInfo_Locale>
        <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
        <Icon_MainIcon>$(BDS)\bin\delphi_PROJECTICON.ico</Icon_MainIcon>
        <DCC_DcuOutput>..\..\out\DCU\$(Platform)\$(Config)</DCC_DcuOutput>
        <DCC_ExeOutput>..\..\out\$(Platform)\$(Config)</DCC_ExeOutput>
        <DCC_E>false</DCC_E>
        <DCC_N>false</DCC_N>
        <DCC_S>false</DCC_S>
        <DCC_F>false</DCC_F>
        <DCC_K>false</DCC_K>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_OSX32)'!=''">
        <DCC_UsePackage>bindcompfmx;DBXSqliteDriver;fmx;rtl;dbrtl;DbxClientDriver;IndySystem;bindcomp;DBXInterBaseDriver;DataSnapCommon;xmlrtl;ibxpress;DbxCommonDriver;IndyProtocols;dbxcds;DBXMySQLDriver;bindengine;soaprtl;bindcompdbx;FMXTee;CustomIPTransport;dsnap;IndyIPServer;fmxase;IndyCore;IndyIPCommon;CloudService;FmxTeeUI;inet;fmxobj;inetdbxpress;fmxdae;dbexpress;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_Win32)'!=''">
        <DCC_UsePackage>bindcompfmx;DBXSqliteDriver;frxDB18;vcldbx;fmx;rtl;dbrtl;DbxClientDriver;IndySystem;TeeDB;bindcomp;frx18;inetdbbde;vclib;DBXInterBaseDriver;Tee;DataSnapCommon;xmlrtl;svnui;ibxpress;DbxCommonDriver;vclimg;IndyProtocols;dbxcds;DBXMySQLDriver;frxe18;MetropolisUILiveTile;vclactnband;bindengine;vcldb;soaprtl;bindcompdbx;vcldsnap;bindcompvcl;FMXTee;TeeUI;vclie;vcltouch;CustomIPTransport;vclribbon;VclSmp;dsnap;IndyIPServer;Intraweb;fmxase;vcl;IndyCore;IndyIPCommon;CloudService;CodeSiteExpressPkg;dsnapcon;FmxTeeUI;inet;fmxobj;vclx;inetdbxpress;webdsnap;svn;fmxdae;bdertl;dbexpress;adortl;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
        <Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File>
        <DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
        <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
        <VerInfo_Locale>1033</VerInfo_Locale>
        <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_Win64)'!=''">
        <DCC_UsePackage>bindcompfmx;DBXSqliteDriver;fmx;rtl;dbrtl;DbxClientDriver;IndySystem;TeeDB;bindcomp;vclib;DBXInterBaseDriver;Tee;DataSnapCommon;xmlrtl;ibxpress;DbxCommonDriver;vclimg;IndyProtocols;dbxcds;DBXMySQLDriver;MetropolisUILiveTile;vclactnband;bindengine;vcldb;soaprtl;bindcompdbx;vcldsnap;bindcompvcl;FMXTee;TeeUI;vclie;vcltouch;CustomIPTransport;vclribbon;VclSmp;dsnap;IndyIPServer;Intraweb;fmxase;vcl;IndyCore;IndyIPCommon;CloudService;dsnapcon;FmxTeeUI;inet;fmxobj;vclx;inetdbxpress;webdsnap;fmxdae;dbexpress;adortl;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_1)'!=''">
        <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
        <DCC_DebugDCUs>true</DCC_DebugDCUs>
        <DCC_Optimize>false</DCC_Optimize>
        <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
        <DCC_DebugInfoInExe>true</DCC_DebugInfoInExe>
        <DCC_RemoteDebug>true</DCC_RemoteDebug>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
        <VerInfo_Locale>1033</VerInfo_Locale>
        <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
        <DCC_RemoteDebug>false</DCC_RemoteDebug>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_2)'!=''">
        <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
        <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
        <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
        <DCC_DebugInformation>false</DCC_DebugInformation>
    </PropertyGroup>
    <ItemGroup>
        <DelphiCompile Include="$(MainSource)">
            <MainSource>MainSource</MainSource>
        </DelphiCompile>
        <DCCReference Include="..\F_ActiveProject.pas">
            <Form>Form4</Form>
            <FormType>fmx</FormType>
        </DCCReference>
        <BuildConfiguration Include="Release">
            <Key>Cfg_2</Key>
            <CfgParent>Base</CfgParent>
        </BuildConfiguration>
        <BuildConfiguration Include="Base">
            <Key>Base</Key>
        </BuildConfiguration>
        <BuildConfiguration Include="Debug">
            <Key>Cfg_1</Key>
            <CfgParent>Base</CfgParent>
        </BuildConfiguration>
    </ItemGroup>
    <ProjectExtensions>
        <Borland.Personality>Delphi.Personality.12</Borland.Personality>
        <Borland.ProjectType/>
        <BorlandProject>
            <Delphi.Personality>
                <VersionInfo>
                    <VersionInfo Name="IncludeVerInfo">False</VersionInfo>
                    <VersionInfo Name="AutoIncBuild">False</VersionInfo>
                    <VersionInfo Name="MajorVer">1</VersionInfo>
                    <VersionInfo Name="MinorVer">0</VersionInfo>
                    <VersionInfo Name="Release">0</VersionInfo>
                    <VersionInfo Name="Build">0</VersionInfo>
                    <VersionInfo Name="Debug">False</VersionInfo>
                    <VersionInfo Name="PreRelease">False</VersionInfo>
                    <VersionInfo Name="Special">False</VersionInfo>
                    <VersionInfo Name="Private">False</VersionInfo>
                    <VersionInfo Name="DLL">False</VersionInfo>
                    <VersionInfo Name="Locale">1043</VersionInfo>
                    <VersionInfo Name="CodePage">1252</VersionInfo>
                </VersionInfo>
                <VersionInfoKeys>
                    <VersionInfoKeys Name="CompanyName"/>
                    <VersionInfoKeys Name="FileDescription"/>
                    <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
                    <VersionInfoKeys Name="InternalName"/>
                    <VersionInfoKeys Name="LegalCopyright"/>
                    <VersionInfoKeys Name="LegalTrademarks"/>
                    <VersionInfoKeys Name="OriginalFilename"/>
                    <VersionInfoKeys Name="ProductName"/>
                    <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
                    <VersionInfoKeys Name="Comments"/>
                    <VersionInfoKeys Name="CFBundleName"/>
                    <VersionInfoKeys Name="CFBundleDisplayName"/>
                    <VersionInfoKeys Name="UIDeviceFamily"/>
                    <VersionInfoKeys Name="CFBundleIdentifier"/>
                    <VersionInfoKeys Name="CFBundleVersion"/>
                    <VersionInfoKeys Name="CFBundlePackageType"/>
                    <VersionInfoKeys Name="CFBundleSignature"/>
                    <VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/>
                    <VersionInfoKeys Name="UISupportedInterfaceOrientations"/>
                    <VersionInfoKeys Name="CFBundleExecutable"/>
                    <VersionInfoKeys Name="CFBundleResourceSpecification"/>
                    <VersionInfoKeys Name="LSRequiresIPhoneOS"/>
                    <VersionInfoKeys Name="CFBundleInfoDictionaryVersion"/>
                    <VersionInfoKeys Name="CFBundleDevelopmentRegion"/>
                </VersionInfoKeys>
                <Source>
                    <Source Name="MainSource">ProjectIt.dpr</Source>
                </Source>
                <Excluded_Packages>
                    <Excluded_Packages Name="$(BDSBIN)\dcloffice2k180.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
                    <Excluded_Packages Name="$(BDSBIN)\dclofficexp180.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
                </Excluded_Packages>
            </Delphi.Personality>
            <Deployment/>
            <Platforms>
                <Platform value="OSX32">False</Platform>
                <Platform value="Win32">True</Platform>
                <Platform value="Win64">False</Platform>
            </Platforms>
        </BorlandProject>
        <ProjectFileVersion>12</ProjectFileVersion>
    </ProjectExtensions>
    <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
    <Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
</Project>
Added ProjectIt/src/prj/ProjectIt.res.

cannot compute difference between binary files

Added ProjectIt/src/prj/ProjectIt_Icon.ico.

cannot compute difference between binary files

Added ProjectIt/src/prj/ProjectIt_Icon1.ico.

cannot compute difference between binary files

Added ProjectIt/src/prj/ProjectIt_Icon2.ico.

cannot compute difference between binary files

Added ProjectIt/src/prj/ProjectIt_Icon3.ico.

cannot compute difference between binary files

Added ProjectIt/src/prj/ProjectIt_Icon4.ico.

cannot compute difference between binary files

Added ProjectIt/src/prj/ProjectIt_Icon5.ico.

cannot compute difference between binary files