* Updated Vampyre Imaging Lib

* Fixed heContrs compilation
* Fixed region editing in frmLargeScaleCommand and frmRegionControl
* Fixed control alignment in frmMain
This commit is contained in:
Andreas Schneider 2013-11-03 14:12:48 +01:00
parent 4a5a835afd
commit 9676549ac3
25 changed files with 21231 additions and 21272 deletions

View File

@ -1,4 +1,4 @@
<?xml version="1.0"?>
<?xml version="1.0" encoding="UTF-8"?>
<CONFIG>
<ProjectOptions>
<Version Value="9"/>
@ -77,7 +77,7 @@
</Item2>
<Item3 Name="Release Linux GTK2 x86">
<MacroValues Count="1">
<Macro1 Name="LCLWidgetType" Value="gtk2"/>
<Macro2 Name="LCLWidgetType" Value="gtk2"/>
</MacroValues>
<CompilerOptions>
<Version Value="11"/>
@ -127,6 +127,10 @@
</Other>
</CompilerOptions>
</Item3>
<SharedMatrixOptions Count="2">
<Item1 ID="851019893220" Modes="Release Win32" Type="IDEMacro" MacroName="LCLWidgetType" Value="win32"/>
<Item2 ID="521965364444" Modes="Release Linux GTK2 x86" Type="IDEMacro" MacroName="LCLWidgetType" Value="gtk2"/>
</SharedMatrixOptions>
</BuildModes>
<PublishOptions>
<Version Value="2"/>
@ -147,7 +151,7 @@
<RequiredPackages Count="6">
<Item1>
<PackageName Value="LCLBase"/>
<MinVersion Major="1" Valid="True" Release="1"/>
<MinVersion Major="1" Release="1" Valid="True"/>
</Item1>
<Item2>
<PackageName Value="multiloglaz"/>
@ -161,11 +165,11 @@
</Item4>
<Item5>
<PackageName Value="lnetvisual"/>
<MinVersion Minor="5" Valid="True" Release="3"/>
<MinVersion Minor="5" Release="3" Valid="True"/>
</Item5>
<Item6>
<PackageName Value="virtualtreeview_package"/>
<MinVersion Major="4" Minor="5" Valid="True" Release="1"/>
<MinVersion Major="4" Minor="5" Release="1" Valid="True"/>
</Item6>
</RequiredPackages>
<Units Count="48">
@ -178,6 +182,7 @@
<Filename Value="UfrmMain.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmMain"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmMain"/>
</Unit1>
@ -206,6 +211,7 @@
<Filename Value="UfrmAccountControl.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmAccountControl"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmAccountControl"/>
</Unit5>

View File

@ -15,7 +15,7 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
OnShow = FormShow
Position = poOwnerFormCenter
ShowInTaskBar = stAlways
LCLVersion = '0.9.31'
LCLVersion = '1.3'
object nbActions: TNotebook
AnchorSideLeft.Control = vstActions
AnchorSideLeft.Side = asrBottom
@ -27,21 +27,21 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
Height = 349
Top = 0
Width = 468
PageIndex = 3
PageIndex = 0
Anchors = [akTop, akLeft, akRight, akBottom]
TabOrder = 0
TabStop = True
object pgArea: TPage
ClientWidth = 468
ClientHeight = 349
object sbArea: TScrollBox
Left = 0
Height = 349
Top = 0
Width = 468
HorzScrollBar.Page = 464
VertScrollBar.Page = 345
Align = alClient
ClientHeight = 347
ClientWidth = 466
ClientHeight = 345
ClientWidth = 464
TabOrder = 0
object pbArea: TPaintBox
Left = 0
@ -55,8 +55,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
end
end
object pgCopyMove: TPage
ClientWidth = 936
ClientHeight = 698
object rgCMAction: TRadioGroup
AnchorSideLeft.Control = pgCopyMove
AnchorSideTop.Control = pgCopyMove
@ -198,7 +196,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
FF00FFFFFF00FFFFFF00CBCBCB7EFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
}
NumGlyphs = 0
OnClick = btnGrabOffsetClick
ShowHint = True
ParentShowHint = False
@ -218,8 +215,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
end
end
object pgModifyAltitude: TPage
ClientWidth = 468
ClientHeight = 349
object Label2: TLabel
AnchorSideLeft.Control = rbSetTerrainAltitude
AnchorSideTop.Control = rbSetTerrainAltitude
@ -325,8 +320,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
end
end
object pgDrawTerrain: TPage
ClientWidth = 468
ClientHeight = 349
object gbDrawTerrainTiles: TGroupBox
AnchorSideLeft.Control = pgDrawTerrain
AnchorSideTop.Control = pgDrawTerrain
@ -454,7 +447,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnClearTerrainClick
ShowHint = True
ParentShowHint = False
@ -506,7 +498,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnDeleteTerrainClick
ShowHint = True
ParentShowHint = False
@ -514,8 +505,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
end
end
object pgDeleteStatics: TPage
ClientWidth = 1848
ClientHeight = 1264
object gbDeleteStaticsTiles: TGroupBox
AnchorSideLeft.Control = pgDeleteStatics
AnchorSideTop.Control = pgDeleteStatics
@ -643,7 +632,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnClearDStaticsTilesClick
ShowHint = True
ParentShowHint = False
@ -695,7 +683,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnDeleteDStaticsTilesClick
ShowHint = True
ParentShowHint = False
@ -773,8 +760,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
end
end
object pgInsertStatics: TPage
ClientWidth = 1848
ClientHeight = 1264
object gbInserStaticsTiles: TGroupBox
AnchorSideLeft.Control = pgInsertStatics
AnchorSideTop.Control = pgInsertStatics
@ -899,7 +884,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnClearIStaticsTilesClick
ShowHint = True
ParentShowHint = False
@ -951,7 +935,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnDeleteIStaticsTilesClick
ShowHint = True
ParentShowHint = False
@ -1131,7 +1114,7 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
AnchorSideBottom.Control = btnDeleteArea
Left = 4
Height = 119
Top = 155
Top = 153
Width = 144
Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Bottom = 4
@ -1154,7 +1137,7 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
AnchorSideRight.Control = vstActions
AnchorSideRight.Side = asrBottom
Left = 4
Height = 15
Height = 13
Top = 140
Width = 144
Anchors = [akTop, akLeft, akRight]
@ -1177,7 +1160,7 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
item
Position = 0
Text = 'Actions'
Width = 150
Width = 148
end>
Header.DefaultHeight = 17
Header.Options = [hoAutoResize, hoVisible]
@ -1198,7 +1181,7 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
Left = 39
Height = 22
Hint = 'Add area'
Top = 278
Top = 276
Width = 22
Anchors = [akTop, akRight]
Glyph.Data = {
@ -1237,7 +1220,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnAddAreaClick
ShowHint = True
ParentShowHint = False
@ -1250,7 +1232,7 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
Left = 65
Height = 22
Hint = 'Delete area'
Top = 278
Top = 276
Width = 22
Anchors = [akLeft, akBottom]
BorderSpacing.Bottom = 4
@ -1291,7 +1273,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnDeleteAreaClick
ShowHint = True
ParentShowHint = False
@ -1303,7 +1284,7 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
Left = 91
Height = 22
Hint = 'Delete all areas'
Top = 278
Top = 276
Width = 22
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
@ -1341,7 +1322,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnClearAreaClick
ShowHint = True
ParentShowHint = False
@ -1351,9 +1331,9 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
AnchorSideTop.Control = seX1
AnchorSideTop.Side = asrCenter
Left = 4
Height = 15
Top = 311
Width = 9
Height = 13
Top = 310
Width = 6
Caption = 'X'
Enabled = False
ParentColor = False
@ -1361,9 +1341,9 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
object seX1: TSpinEdit
AnchorSideLeft.Control = seY1
AnchorSideBottom.Control = seY1
Left = 20
Height = 20
Top = 308
Left = 17
Height = 21
Top = 306
Width = 50
Anchors = [akLeft, akBottom]
BorderSpacing.Bottom = 8
@ -1376,9 +1356,9 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
AnchorSideLeft.Control = seX1
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = seX1
Left = 78
Height = 20
Top = 308
Left = 75
Height = 21
Top = 306
Width = 50
BorderSpacing.Left = 8
Enabled = False
@ -1391,9 +1371,9 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
AnchorSideTop.Control = seY1
AnchorSideTop.Side = asrCenter
Left = 4
Height = 15
Height = 13
Top = 339
Width = 8
Width = 5
BorderSpacing.Left = 4
Caption = 'Y'
Enabled = False
@ -1403,9 +1383,9 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
AnchorSideLeft.Control = lblY
AnchorSideLeft.Side = asrBottom
AnchorSideBottom.Control = btnGrab1
Left = 20
Height = 20
Top = 336
Left = 17
Height = 21
Top = 335
Width = 50
Anchors = [akLeft, akBottom]
BorderSpacing.Left = 8
@ -1418,9 +1398,9 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
object seY2: TSpinEdit
AnchorSideLeft.Control = seX2
AnchorSideTop.Control = seY1
Left = 78
Height = 20
Top = 336
Left = 75
Height = 21
Top = 335
Width = 50
Enabled = False
OnChange = seX1Change
@ -1432,7 +1412,7 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
AnchorSideLeft.Side = asrCenter
AnchorSideBottom.Control = Owner
AnchorSideBottom.Side = asrBottom
Left = 34
Left = 31
Height = 22
Hint = 'Grab coordinates from the main window.'
Top = 360
@ -1476,7 +1456,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
FF00FFFFFF00FFFFFF00CBCBCB7EFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
}
NumGlyphs = 0
OnClick = btnGrab1Click
ShowHint = True
ParentShowHint = False
@ -1486,7 +1465,7 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
AnchorSideLeft.Side = asrCenter
AnchorSideBottom.Control = btnGrab1
AnchorSideBottom.Side = asrBottom
Left = 92
Left = 89
Height = 22
Hint = 'Grab coordinates from the main window.'
Top = 360
@ -1529,7 +1508,6 @@ object frmLargeScaleCommand: TfrmLargeScaleCommand
FF00FFFFFF00FFFFFF00CBCBCB7EFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
}
NumGlyphs = 0
OnClick = btnGrab1Click
ShowHint = True
ParentShowHint = False

View File

@ -666,10 +666,18 @@ begin
if selected then
begin
nodeInfo := Sender.GetNodeData(Node);
seX1.OnChange := nil;
seX2.OnChange := nil;
seY1.OnChange := nil;
seY2.OnChange := nil;
seX1.Value := nodeInfo^.Left;
seX2.Value := nodeInfo^.Right;
seY1.Value := nodeInfo^.Top;
seY2.Value := nodeInfo^.Bottom;
seX1.OnChange := @seX1Change;
seX2.OnChange := @seX1Change;
seY1.OnChange := @seX1Change;
seY2.OnChange := @seX1Change;
end;
pbArea.Repaint;
end;

View File

@ -18,7 +18,7 @@ object frmMain: TfrmMain
Position = poScreenCenter
SessionProperties = 'acFlat.Checked;acNoDraw.Checked;Height;Left;mnuFlatShowHeight.Checked;mnuSecurityQuestion.Checked;mnuShowAnimations.Checked;spTileList.Top;tbStatics.Down;tbTerrain.Down;Top;Width;WindowState;mnuWhiteBackground.Checked'
ShowInTaskBar = stAlways
LCLVersion = '0.9.31'
LCLVersion = '1.3'
WindowState = wsMaximized
object pnlBottom: TPanel
Left = 0
@ -32,33 +32,33 @@ object frmMain: TfrmMain
TabOrder = 0
object lblX: TLabel
Left = 11
Height = 14
Height = 13
Top = 7
Width = 10
Width = 9
Caption = 'X:'
ParentColor = False
end
object lblY: TLabel
Left = 88
Height = 14
Height = 13
Top = 7
Width = 9
Width = 8
Caption = 'Y:'
ParentColor = False
end
object lblTileInfo: TLabel
Left = 240
Height = 14
Height = 13
Top = 7
Width = 4
Width = 3
Caption = ' '
ParentColor = False
end
object lblTip: TLabel
Left = 523
Left = 524
Height = 31
Top = 0
Width = 224
Width = 223
Align = alRight
Alignment = taRightJustify
BorderSpacing.Right = 8
@ -67,10 +67,10 @@ object frmMain: TfrmMain
ParentColor = False
end
object lblTipC: TLabel
Left = 500
Left = 502
Height = 31
Top = 0
Width = 23
Width = 22
Align = alRight
Caption = 'Tip: '
Font.Height = -11
@ -124,9 +124,9 @@ object frmMain: TfrmMain
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = cbTerrain
Left = 75
Height = 14
Height = 13
Top = 8
Width = 30
Width = 29
BorderSpacing.Left = 16
Caption = 'Filter:'
ParentColor = False
@ -252,7 +252,6 @@ object frmMain: TfrmMain
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnAddRandomClick
ShowHint = True
ParentShowHint = False
@ -303,7 +302,6 @@ object frmMain: TfrmMain
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnDeleteRandomClick
ShowHint = True
ParentShowHint = False
@ -354,7 +352,6 @@ object frmMain: TfrmMain
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnClearRandomClick
ShowHint = True
ParentShowHint = False
@ -405,7 +402,6 @@ object frmMain: TfrmMain
4DFFC88C4FFFC88C4FFFC88C4FFFC88D4FFFC98C4FFFC78B4FFFC5894BFFC476
3BFF000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnRandomPresetSaveClick
ShowCaption = False
ShowHint = True
@ -458,7 +454,6 @@ object frmMain: TfrmMain
0000C88B4DFFC88C4FFFC88C4FFFC88C4FFFC88C4FFFC88D4FFFC98C4FFFC78B
4FFFC5894BFFC4763BFF00000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnRandomPresetDeleteClick
ShowCaption = False
ShowHint = True
@ -578,7 +573,7 @@ object frmMain: TfrmMain
AnchorSideRight.Side = asrBottom
Left = 75
Height = 21
Top = 22
Top = 21
Width = 125
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Right = 16
@ -683,7 +678,6 @@ object frmMain: TfrmMain
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnClearLocationsClick
ShowHint = True
ParentShowHint = False
@ -736,7 +730,6 @@ object frmMain: TfrmMain
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnDeleteLocationClick
ShowHint = True
ParentShowHint = False
@ -787,7 +780,6 @@ object frmMain: TfrmMain
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnAddLocationClick
ShowHint = True
ParentShowHint = False
@ -1048,7 +1040,7 @@ object frmMain: TfrmMain
Left = 10
Height = 18
Top = 2
Width = 101
Width = 100
Align = alLeft
BorderSpacing.Left = 8
Caption = 'Chat and Messages'
@ -1128,13 +1120,14 @@ object frmMain: TfrmMain
end
object spChat: TSplitter
AnchorSideLeft.Control = pcLeft
AnchorSideLeft.Side = asrBottom
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
Cursor = crVSplit
Left = 0
Left = 224
Height = 5
Top = 414
Width = 755
Width = 531
Align = alNone
Anchors = [akLeft, akRight, akBottom]
AutoSnap = False

View File

@ -14,7 +14,7 @@ object frmRegionControl: TfrmRegionControl
OnShow = FormShow
Position = poOwnerFormCenter
ShowInTaskBar = stAlways
LCLVersion = '0.9.29'
LCLVersion = '1.3'
object sbArea: TScrollBox
AnchorSideLeft.Control = vstRegions
AnchorSideLeft.Side = asrBottom
@ -26,6 +26,8 @@ object frmRegionControl: TfrmRegionControl
Height = 372
Top = 0
Width = 460
HorzScrollBar.Page = 456
VertScrollBar.Page = 368
Anchors = [akTop, akLeft, akRight, akBottom]
ClientHeight = 368
ClientWidth = 456
@ -110,7 +112,6 @@ object frmRegionControl: TfrmRegionControl
Width = 22
Anchors = [akLeft, akBottom]
BorderSpacing.Around = 4
Color = clBtnFace
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000000000000000
@ -147,7 +148,6 @@ object frmRegionControl: TfrmRegionControl
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = mnuAddRegionClick
ShowHint = True
ParentShowHint = False
@ -164,7 +164,6 @@ object frmRegionControl: TfrmRegionControl
Width = 22
Anchors = [akLeft, akBottom]
BorderSpacing.Left = 4
Color = clBtnFace
Enabled = False
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
@ -202,7 +201,6 @@ object frmRegionControl: TfrmRegionControl
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = mnuDeleteRegionClick
ShowHint = True
ParentShowHint = False
@ -215,8 +213,8 @@ object frmRegionControl: TfrmRegionControl
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = btnDeleteArea
Left = 4
Height = 124
Top = 179
Height = 121
Top = 178
Width = 152
Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Left = 4
@ -241,7 +239,7 @@ object frmRegionControl: TfrmRegionControl
AnchorSideRight.Control = spRegionsArea
AnchorSideRight.Side = asrBottom
Left = 4
Height = 14
Height = 13
Top = 165
Width = 152
Anchors = [akTop, akLeft, akRight]
@ -270,10 +268,9 @@ object frmRegionControl: TfrmRegionControl
Left = 43
Height = 22
Hint = 'Add area'
Top = 307
Top = 303
Width = 22
Anchors = [akTop, akRight]
Color = clBtnFace
Enabled = False
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
@ -311,7 +308,6 @@ object frmRegionControl: TfrmRegionControl
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnAddAreaClick
ShowHint = True
ParentShowHint = False
@ -323,12 +319,11 @@ object frmRegionControl: TfrmRegionControl
Left = 69
Height = 22
Hint = 'Delete area'
Top = 307
Top = 303
Width = 22
Anchors = [akLeft, akBottom]
BorderSpacing.Bottom = 4
BorderSpacing.Around = 4
Color = clBtnFace
Enabled = False
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
@ -366,7 +361,6 @@ object frmRegionControl: TfrmRegionControl
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnDeleteAreaClick
ShowHint = True
ParentShowHint = False
@ -378,9 +372,8 @@ object frmRegionControl: TfrmRegionControl
Left = 95
Height = 22
Hint = 'Delete all areas'
Top = 307
Top = 303
Width = 22
Color = clBtnFace
Enabled = False
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
@ -418,7 +411,6 @@ object frmRegionControl: TfrmRegionControl
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnClearAreaClick
ShowHint = True
ParentShowHint = False
@ -428,9 +420,9 @@ object frmRegionControl: TfrmRegionControl
AnchorSideTop.Control = seX1
AnchorSideTop.Side = asrCenter
Left = 4
Height = 14
Top = 339
Width = 8
Height = 13
Top = 337
Width = 6
BorderSpacing.Left = 4
Caption = 'X'
Enabled = False
@ -439,9 +431,9 @@ object frmRegionControl: TfrmRegionControl
object seX1: TSpinEdit
AnchorSideLeft.Control = seY1
AnchorSideBottom.Control = seY1
Left = 20
Height = 19
Top = 337
Left = 17
Height = 21
Top = 333
Width = 50
Anchors = [akLeft, akBottom]
BorderSpacing.Bottom = 8
@ -454,9 +446,9 @@ object frmRegionControl: TfrmRegionControl
AnchorSideLeft.Control = seX1
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = seX1
Left = 78
Height = 19
Top = 337
Left = 75
Height = 21
Top = 333
Width = 50
BorderSpacing.Left = 8
Enabled = False
@ -469,9 +461,9 @@ object frmRegionControl: TfrmRegionControl
AnchorSideTop.Control = seY1
AnchorSideTop.Side = asrCenter
Left = 4
Height = 14
Height = 13
Top = 366
Width = 8
Width = 5
Caption = 'Y'
Enabled = False
ParentColor = False
@ -482,10 +474,10 @@ object frmRegionControl: TfrmRegionControl
AnchorSideRight.Control = seX1
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = btnGrab1
Left = 20
Height = 19
Top = 364
Width = 50
Left = 17
Height = 21
Top = 362
Width = 53
Anchors = [akLeft, akRight, akBottom]
BorderSpacing.Left = 8
Enabled = False
@ -499,9 +491,9 @@ object frmRegionControl: TfrmRegionControl
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = seX2
AnchorSideRight.Side = asrBottom
Left = 78
Height = 19
Top = 364
Left = 75
Height = 21
Top = 362
Width = 50
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 8
@ -515,14 +507,13 @@ object frmRegionControl: TfrmRegionControl
AnchorSideLeft.Side = asrCenter
AnchorSideBottom.Control = Owner
AnchorSideBottom.Side = asrBottom
Left = 34
Left = 32
Height = 22
Hint = 'Grab coordinates from the main window.'
Top = 387
Width = 22
Anchors = [akLeft, akBottom]
BorderSpacing.Around = 4
Color = clBtnFace
Enabled = False
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
@ -560,7 +551,6 @@ object frmRegionControl: TfrmRegionControl
FF00FFFFFF00FFFFFF00CBCBCB7EFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
}
NumGlyphs = 0
OnClick = btnGrab1Click
ShowHint = True
ParentShowHint = False
@ -570,13 +560,12 @@ object frmRegionControl: TfrmRegionControl
AnchorSideLeft.Side = asrCenter
AnchorSideBottom.Control = btnGrab1
AnchorSideBottom.Side = asrBottom
Left = 92
Left = 89
Height = 22
Hint = 'Grab coordinates from the main window.'
Top = 387
Width = 22
Anchors = [akLeft, akBottom]
Color = clBtnFace
Enabled = False
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
@ -614,7 +603,6 @@ object frmRegionControl: TfrmRegionControl
FF00FFFFFF00FFFFFF00CBCBCB7EFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
}
NumGlyphs = 0
OnClick = btnGrab1Click
ShowHint = True
ParentShowHint = False

View File

@ -460,7 +460,7 @@ var
node: PVirtualNode;
areaInfo: PRect;
begin
node := vstArea.GetFirstSelected;
node := vstArea.GetFirstSelected;
if node <> nil then
begin
areaInfo := vstArea.GetNodeData(node);
@ -494,10 +494,18 @@ begin
if selected then
begin
areaInfo := Sender.GetNodeData(Node);
seX1.OnChange := nil;
seX2.OnChange := nil;
seY1.OnChange := nil;
seY2.OnChange := nil;
seX1.Value := areaInfo^.Left;
seX2.Value := areaInfo^.Right;
seY1.Value := areaInfo^.Top;
seY2.Value := areaInfo^.Bottom;
seX1.OnChange := @seX1Change;
seX2.OnChange := @seX1Change;
seY1.OnChange := @seX1Change;
seY2.OnChange := @seX1Change;
end;
pbArea.Repaint;
end;

View File

@ -68,7 +68,7 @@ type
constructor CreateFromImage(AImage: TBaseImage);
destructor Destroy; override;
{ Returns info about current image.}
function ToString: string; {$IF Defined(DCC) and (CompilerVersion >= 20.0)}override;{$IFEND}
function ToString: string;
{ Creates a new image data with the given size and format. Old image
data is lost. Works only for the current image of TMultiImage.}

View File

@ -336,7 +336,7 @@ implementation
uses
{$IF Defined(LCL)}
{$IF Defined(LCLGTK2)}
GLib2, GDK2, GTK2, GTK2Def, GTK2Proc,
GLib2, GDK2, GTK2, GTKDef, GTKProc,
{$ELSEIF Defined(LCLGTK)}
GDK, GTK, GTKDef, GTKProc,
{$IFEND}

View File

@ -1,5 +1,5 @@
{
$Id: ImagingFormats.pas 176 2009-10-12 10:53:17Z galfar $
$Id: ImagingFormats.pas 174 2009-09-08 09:37:59Z galfar $
Vampyre Imaging Library
by Marek Mauder
http://imaginglib.sourceforge.net

View File

@ -1,5 +1,5 @@
{
$Id: ImagingJpeg.pas 180 2009-10-16 01:07:26Z galfar $
$Id: ImagingJpeg.pas 168 2009-08-22 18:50:21Z galfar $
Vampyre Imaging Library
by Marek Mauder
http://imaginglib.sourceforge.net
@ -330,7 +330,7 @@ begin
if Saver.FGrayScale then
jc.c.in_color_space := JCS_GRAYSCALE
else
jc.c.in_color_space := JCS_RGB;
jc.c.in_color_space := JCS_YCbCr;
jpeg_set_defaults(@jc.c);
jpeg_set_quality(@jc.c, Saver.FQuality, True);
if Saver.FProgressive then
@ -371,8 +371,9 @@ var
jc: TJpegContext;
Info: TImageFormatInfo;
Col32: PColor32Rec;
NeedsRedBlueSwap: Boolean;
{$IFDEF RGBSWAPPED}
Pix: PColor24Rec;
{$ENDIF}
begin
// Copy IO functions to global var used in JpegLib callbacks
Result := False;
@ -396,18 +397,11 @@ begin
LinesPerCall := 1;
Dest := Bits;
// If Jpeg's colorspace is RGB and not YCbCr we need to swap
// R and B to get Imaging's native order
NeedsRedBlueSwap := jc.d.jpeg_color_space = JCS_RGB;
{$IFDEF RGBSWAPPED}
// Force R-B swap for FPC's PasJpeg
NeedsRedBlueSwap := True;
{$ENDIF}
while jc.d.output_scanline < jc.d.output_height do
begin
LinesRead := jpeg_read_scanlines(@jc.d, @Dest, LinesPerCall);
if NeedsRedBlueSwap and (Format = ifR8G8B8) then
{$IFDEF RGBSWAPPED}
if Format = ifR8G8B8 then
begin
Pix := PColor24Rec(Dest);
for I := 0 to Width - 1 do
@ -416,6 +410,7 @@ begin
Inc(Pix);
end;
end;
{$ENDIF}
Inc(Dest, PtrInc * LinesRead);
end;
@ -558,10 +553,6 @@ initialization
-- TODOS ----------------------------------------------------
- nothing now
-- 0.26.5 Changes/Bug Fixes ---------------------------------
- Fixed swapped Red-Blue order when loading Jpegs with
jc.d.jpeg_color_space = JCS_RGB.
-- 0.26.3 Changes/Bug Fixes ---------------------------------
- Changed the Jpeg error manager, messages were not properly formated.

View File

@ -83,14 +83,6 @@
{$ENDIF}
{$ENDIF}
{$IF (Defined(DCC) and (CompilerVersion >= 18.5))}
{$IFDEF RELEASE}
{$UNDEF DEBUG} // If we are using Delphi 2007+ where you can set
// DEBUG/RELEASE mode in project options and RELEASE
// is currently set we undef DEBUG mode
{$ENDIF}
{$IFEND}
{$IF Defined(IMAGING_DEBUG)}
{$ASSERTIONS ON}
{$DEBUGINFO ON}
@ -128,18 +120,13 @@
// Define if compiler supports inlining of functions and procedures
// Note that FPC inline support crashed in older versions (1.9.8)
{$IF (Defined(DCC) and (CompilerVersion >= 17)) or (Defined(FPC) and Defined(CPU86))}
{$IF (Defined(FPC) and Defined(CPU86))}
{$DEFINE HAS_INLINE}
{$IFEND}
// Define if compiler supports advanced records with methods
{$IF (Defined(DCC) and (CompilerVersion >= 18)) }
{$DEFINE HAS_ADVANCED_RECORDS}
{$IFEND}
// Define if compiler supports operator overloading
// (unfortunately Delphi and FPC operator overloaing is not compatible)
{$IF (Defined(DCC) and (CompilerVersion >= 18)) or Defined(FPC)}
{$IF Defined(FPC)}
{$DEFINE HAS_OPERATOR_OVERLOADING}
{$IFEND}

View File

@ -1499,7 +1499,7 @@ end;
function TheObjectVector.GetEnumerator: TEnumerator;
begin
Result.Init(-1, @MoveNext, @GetCurrent);
Result.Init(-1, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheObjectVector.Has(const Item: TItem): Boolean;
@ -1733,7 +1733,7 @@ end;
function TheVector.GetEnumerator: TEnumerator;
begin
Result.Init(-1, @MoveNext, @GetCurrent);
Result.Init(-1, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheVector.Has(const Item: TItem): Boolean;
@ -1944,7 +1944,7 @@ end;
function TheCmpVector.GetEnumerator: TEnumerator;
begin
Result.Init(-1, @MoveNext, @GetCurrent);
Result.Init(-1, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheCmpVector.Has(const Item: TItem): Boolean;
@ -2105,7 +2105,7 @@ end;
function TheSortVector.GetEnumerator: TEnumerator;
begin
Result.Init(-1, @MoveNext, @GetCurrent);
Result.Init(-1, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheSortVector.Has(const Item: TItem): Boolean;
@ -2267,7 +2267,7 @@ end;
function TheCmpSortVector.GetEnumerator: TEnumerator;
begin
Result.Init(-1, @MoveNext, @GetCurrent);
Result.Init(-1, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheCmpSortVector.Has(const Item: TItem): Boolean;
@ -2439,7 +2439,7 @@ end;
function TheObjectSortVector.GetEnumerator: TEnumerator;
begin
Result.Init(-1, @MoveNext, @GetCurrent);
Result.Init(-1, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheObjectSortVector.Has(const Item: TItem): Boolean;
@ -2621,7 +2621,7 @@ end;
function TheVectorSet.GetEnumerator: TEnumerator;
begin
Result.Init(-1, @MoveNext, @GetCurrent);
Result.Init(-1, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheVectorSet.Include(const Item: TItem): Boolean;
@ -2778,7 +2778,7 @@ end;
function TheCmpVectorSet.GetEnumerator: TEnumerator;
begin
Result.Init(-1, @MoveNext, @GetCurrent);
Result.Init(-1, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheCmpVectorSet.Include(const Item: TItem): Boolean;
@ -2941,7 +2941,7 @@ end;
function TheObjectVectorSet.GetEnumerator: TEnumerator;
begin
Result.Init(-1, @MoveNext, @GetCurrent);
Result.Init(-1, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheObjectVectorSet.Include(const Item: TItem): Boolean;
@ -3732,7 +3732,7 @@ end;
function TheList.GetEnumerator: TEnumerator;
begin
Result.Init(NewIterator, @MoveNext, @CurrentItem);
Result.Init(NewIterator, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@CurrentItem));
end;
function TheList.CurrentItem(var Iterator: TIterator): TItem;
@ -3937,7 +3937,7 @@ end;
function TheObjectList.GetEnumerator: TEnumerator;
begin
Result.Init(NewIterator, @MoveNext, @CurrentItem);
Result.Init(NewIterator, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@CurrentItem));
end;
function TheObjectList.CurrentItem(var Iterator: TIterator): TItem;
@ -4163,7 +4163,7 @@ begin
Iterator.Index := -1;
Iterator.UseSentinel := False;
Assert(Iterator.Page = Iterator.Page); // hint off
Result.Init(Iterator, @MoveNext, @GetCurrent);
Result.Init(Iterator, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheBTreeSet.Include(const Item: TItem): Boolean;
@ -5273,7 +5273,7 @@ begin
Iterator.Index := -1;
Iterator.UseSentinel := False;
Assert(Iterator.Page = Iterator.Page); // hint off
Result.Init(Iterator, @MoveNext, @GetCurrent);
Result.Init(Iterator, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheCmpBTreeSet.Include(const Item: TItem): Boolean;
@ -5781,7 +5781,7 @@ begin
Iterator.Index := -1;
Iterator.UseSentinel := False;
Assert(Iterator.Page = Iterator.Page); // hint off
Result.Init(Iterator, @MoveNext, @GetCurrent);
Result.Init(Iterator, TEnumerator.TMoveNext(@MoveNext), TEnumerator.TGetCurrent(@GetCurrent));
end;
function TheObjectBTreeSet.Include(const Item: TItem): Boolean;