Стартовый пул

This commit is contained in:
2024-04-02 08:46:59 +03:00
parent fd57fffd3a
commit 3bb34d000b
5591 changed files with 3291734 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
*.dcu
*.exe
*.hpp
*.obj
*.tds

View File

@@ -0,0 +1,29 @@
[Compiler]
A=1
B=0
C=1
D=1
E=0
F=0
G=1
H=1
I=1
J=1
K=0
L=1
M=0
N=1
O=1
P=1
Q=0
R=0
S=0
T=0
U=0
V=1
W=0
X=1
Y=0
Z=1
ShowHints=1
ShowWarnings=1

View File

@@ -0,0 +1,22 @@
program Demo;
uses
Forms,
Demo1 in 'Demo1.pas' {Form1};
{$R *.RES}
{$IFDEF CLR}
[STAThread] // All VCL.NET projects that use Toolbar2000 must include this
{$ENDIF}
begin
Application.Initialize;
{$IFDEF CONDITIONALEXPRESSIONS}
{$IF CompilerVersion >= 18.5}
Application.MainFormOnTaskbar := True;
{$IFEND}
{$ENDIF}
Application.CreateForm(TForm1, Form1);
Application.Run;
end.

Binary file not shown.

View File

@@ -0,0 +1,254 @@
unit Demo1;
{
Toolbar2000 demo project
$jrsoftware: tb2k/DemoProj/Demo1.pas,v 1.9 2006/03/12 23:11:58 jr Exp $
}
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls, Menus, ActnList, ImgList, ComCtrls,
TB2Item, TB2ExtItems, TB2Dock, TB2Toolbar, TB2MRU;
type
TForm1 = class(TForm)
ActionList: TActionList;
actNew: TAction;
actOpen: TAction;
actSave: TAction;
actSaveAs: TAction;
actPageSetup: TAction;
actPrint: TAction;
actExit: TAction;
actUndo: TAction;
actCut: TAction;
actCopy: TAction;
actPaste: TAction;
actDelete: TAction;
actSelectAll: TAction;
actTimeDate: TAction;
actWordWrap: TAction;
actSetFont: TAction;
actFind: TAction;
actFindNext: TAction;
actReplace: TAction;
actHelpTopics: TAction;
actAbout: TAction;
actTestButton: TAction;
actTestEdit: TTBEditAction;
DockTop: TTBDock;
MenuToolbar: TTBToolbar;
ImageList: TTBImageList;
FMenu: TTBSubmenuItem;
FNew: TTBItem;
FOpen: TTBItem;
FSave: TTBItem;
FSaveAs: TTBItem;
FPageSetup: TTBItem;
FPrint: TTBItem;
FExit: TTBItem;
EMenu: TTBSubmenuItem;
EUndo: TTBItem;
ECut: TTBItem;
ECopy: TTBItem;
EPaste: TTBItem;
EDelete: TTBItem;
ESelectAll: TTBItem;
ETimeDate: TTBItem;
EWordWrap: TTBItem;
ESetFont: TTBItem;
SMenu: TTBSubmenuItem;
SFind: TTBItem;
SFindNext: TTBItem;
SReplace: TTBItem;
HMenu: TTBSubmenuItem;
HHelpTopics: TTBItem;
HAbout: TTBItem;
FMRU: TTBMRUListItem;
NBSeparatorItem3: TTBSeparatorItem;
NBSeparatorItem4: TTBSeparatorItem;
TestEdit: TTBEditItem;
MainToolbar: TTBToolbar;
NewButton: TTBItem;
OpenButton: TTBItem;
SaveButton: TTBItem;
DockBottom: TTBDock;
DockLeft: TTBDock;
DockRight: TTBDock;
BottomToolbar: TTBToolbar;
PopupMenuBarButton: TTBItem;
PopupToolbarButton: TTBItem;
Memo1: TMemo;
ContextPopupMenu: TTBPopupMenu;
StatusBar: TStatusBar;
ToolbarPopupMenu: TTBPopupMenu;
MRUList: TTBMRUList;
PrintButton: TTBItem;
CutButton: TTBItem;
CopyButton: TTBItem;
PasteButton: TTBItem;
UndoButton: TTBSubmenuItem;
actPrintPreview: TAction;
TBItem1: TTBItem;
FormatToolbar: TTBToolbar;
BoldItem: TTBItem;
ItalicItem: TTBItem;
UnderlineItem: TTBItem;
TBSeparatorItem1: TTBSeparatorItem;
AlignLeftItem: TTBItem;
CenterItem: TTBItem;
AlignRightItem: TTBItem;
TBSeparatorItem2: TTBSeparatorItem;
BulletsItem: TTBItem;
NBItem34: TTBItem;
NBSeparatorItem6: TTBSeparatorItem;
NBItem35: TTBItem;
NBItem36: TTBItem;
NBItem37: TTBItem;
NBItem38: TTBItem;
NBSeparatorItem7: TTBSeparatorItem;
NBItem39: TTBItem;
ComboBox1: TComboBox;
TBControlItem1: TTBControlItem;
TBSeparatorItem3: TTBSeparatorItem;
TBControlItem2: TTBControlItem;
ComboBox2: TComboBox;
actBold: TAction;
actItalic: TAction;
actUnderline: TAction;
actAlignLeft: TAction;
actCenter: TAction;
actAlignRight: TAction;
TBSeparatorItem4: TTBSeparatorItem;
actRedo: TAction;
RedoButton: TTBSubmenuItem;
TBItem2: TTBItem;
TBItem3: TTBItem;
TBItem4: TTBItem;
ERedo: TTBItem;
VMenu: TTBSubmenuItem;
VToolbars: TTBSubmenuItem;
VTStandard: TTBVisibilityToggleItem;
VTFormatting: TTBVisibilityToggleItem;
VTBottom: TTBVisibilityToggleItem;
VStatusBar: TTBItem;
actBullets: TAction;
procedure FormCreate(Sender: TObject);
procedure ItemClick(Sender: TObject);
procedure PopupMenuBarButtonClick(Sender: TObject);
procedure PopupToolbarButtonClick(Sender: TObject);
procedure MRUListClick(Sender: TObject; const Filename: String);
procedure AlignClick(Sender: TObject);
procedure BulletsItemClick(Sender: TObject);
procedure BoldItemClick(Sender: TObject);
procedure ItalicItemClick(Sender: TObject);
procedure UnderlineItemClick(Sender: TObject);
procedure VStatusBarClick(Sender: TObject);
procedure VMenuClick(Sender: TObject);
private
{ Private declarations }
procedure OnHint(Sender: TObject);
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses
{$IFDEF CLR} Types, {$ENDIF}
CommCtrl, TB2Version;
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
Memo1.Text := 'Running on ' + Toolbar2000VersionPropText;
Application.OnHint := OnHint;
end;
procedure TForm1.OnHint(Sender: TObject);
begin
StatusBar.Panels[0].Text := Application.Hint;
end;
procedure TForm1.ItemClick(Sender: TObject);
begin
Application.MessageBox( {$IFNDEF CLR} PChar {$ENDIF}
('You selected:'#13#10#13#10 + (Sender as TComponent).Name),
'OnClick handler', MB_OK or MB_ICONINFORMATION);
end;
procedure TForm1.MRUListClick(Sender: TObject; const Filename: String);
begin
Application.MessageBox( {$IFNDEF CLR} PChar {$ENDIF}
(Format('You selected "%s" from the MRU list.', [Filename])),
'MRUListClick', MB_OK or MB_ICONINFORMATION);
end;
procedure TForm1.VMenuClick(Sender: TObject);
begin
VStatusBar.Checked := StatusBar.Visible;
end;
procedure TForm1.VStatusBarClick(Sender: TObject);
begin
{ Force the StatusBar to always be at the bottom of the form. Without this
line of code, the status bar sometimes may appear above the bottom dock.
This is not a bug in Toolbar2000, but rather is due to the design of the
VCL's alignment system. }
StatusBar.Top := ClientHeight;
{ Toggle the status bar's visibility }
StatusBar.Visible := not StatusBar.Visible;
end;
procedure TForm1.AlignClick(Sender: TObject);
begin
AlignLeftItem.Checked := (Sender = actAlignLeft);
CenterItem.Checked := (Sender = actCenter);
AlignRightItem.Checked := (Sender = actAlignRight);
end;
procedure TForm1.BulletsItemClick(Sender: TObject);
begin
BulletsItem.Checked := not BulletsItem.Checked;
end;
procedure TForm1.BoldItemClick(Sender: TObject);
begin
BoldItem.Checked := not BoldItem.Checked;
end;
procedure TForm1.ItalicItemClick(Sender: TObject);
begin
ItalicItem.Checked := not ItalicItem.Checked;
end;
procedure TForm1.UnderlineItemClick(Sender: TObject);
begin
UnderlineItem.Checked := not UnderlineItem.Checked;
end;
procedure TForm1.PopupMenuBarButtonClick(Sender: TObject);
var
P: TPoint;
begin
P := Memo1.ClientToScreen(Point(8, 8));
MenuToolbar.Items.Popup(P.X, P.Y, True);
end;
procedure TForm1.PopupToolbarButtonClick(Sender: TObject);
var
P: TPoint;
begin
P := Memo1.ClientToScreen(Point(8, 8));
MainToolbar.Items.Popup(P.X, P.Y, True);
end;
end.

View File

@@ -0,0 +1,179 @@
# ---------------------------------------------------------------------------
!if !$d(BCB)
BCB = $(MAKEDIR)\..
!endif
# ---------------------------------------------------------------------------
# IDE SECTION
# ---------------------------------------------------------------------------
# The following section of the project makefile is managed by the BCB IDE.
# It is recommended to use the IDE to change any of the values in this
# section.
# ---------------------------------------------------------------------------
VERSION = BCB.04.04
# ---------------------------------------------------------------------------
PROJECT = DemoBCB.exe
OBJFILES = Demo1.obj DemoBCB.obj
RESFILES = DemoBCB.res
RESDEPEN = $(RESFILES) Demo1.dfm
LIBFILES =
LIBRARIES = vcl40.lib
SPARELIBS = vcl40.lib
PACKAGES =
DEFFILE =
# ---------------------------------------------------------------------------
PATHCPP = .;
PATHASM = .;
PATHPAS = .;
PATHRC = .;
DEBUGLIBPATH = $(BCB)\lib\debug
RELEASELIBPATH = $(BCB)\lib\release
USERDEFINES =
SYSDEFINES = _RTLDLL;NO_STRICT
# ---------------------------------------------------------------------------
CFLAG1 = -I$(BCB)\include;$(BCB)\include\vcl -Od -Hc -H=$(BCB)\lib\vcl40.csm -w -Ve -r- \
-a8 -k -y -v -vi- -c -b- -w-par -w-inl -Vx -tW -tWM \
-D$(SYSDEFINES);$(USERDEFINES)
PFLAGS = -U$(BCB)\Projects\Lib;$(BCB)\lib\obj;$(BCB)\lib;$(RELEASELIBPATH) \
-I$(BCB)\include;$(BCB)\include\vcl -$YD -$W -$O- -v -JPHNE -M
RFLAGS = -i$(BCB)\include;$(BCB)\include\vcl
AFLAGS = /i$(BCB)\include /i$(BCB)\include\vcl /mx /w2 /zd
LFLAGS = -L$(BCB)\Projects\Lib;$(BCB)\lib\obj;$(BCB)\lib;$(RELEASELIBPATH) -aa -Tpe -x \
-Gn -v
# ---------------------------------------------------------------------------
ALLOBJ = c0w32.obj Memmgr.Lib sysinit.obj $(OBJFILES)
ALLRES = $(RESFILES)
ALLLIB = $(LIBFILES) $(LIBRARIES) import32.lib cp32mti.lib
# ---------------------------------------------------------------------------
!ifdef IDEOPTIONS
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1033
CodePage=1252
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[Debugging]
DebugSourceDirs=$(BCB)\source\vcl
[Parameters]
RunParams=
HostApplication=
RemoteHost=
RemotePath=
RemoteDebug=0
[Compiler]
InMemoryExe=0
ShowInfoMsgs=0
!endif
# ---------------------------------------------------------------------------
# MAKE SECTION
# ---------------------------------------------------------------------------
# This section of the project file is not used by the BCB IDE. It is for
# the benefit of building from the command-line using the MAKE utility.
# ---------------------------------------------------------------------------
.autodepend
# ---------------------------------------------------------------------------
!if !$d(BCC32)
BCC32 = bcc32
!endif
!if !$d(CPP32)
CPP32 = cpp32
!endif
!if !$d(DCC32)
DCC32 = dcc32
!endif
!if !$d(TASM32)
TASM32 = tasm32
!endif
!if !$d(LINKER)
LINKER = ilink32
!endif
!if !$d(BRCC32)
BRCC32 = brcc32
!endif
# ---------------------------------------------------------------------------
!if $d(PATHCPP)
.PATH.CPP = $(PATHCPP)
.PATH.C = $(PATHCPP)
!endif
!if $d(PATHPAS)
.PATH.PAS = $(PATHPAS)
!endif
!if $d(PATHASM)
.PATH.ASM = $(PATHASM)
!endif
!if $d(PATHRC)
.PATH.RC = $(PATHRC)
!endif
# ---------------------------------------------------------------------------
$(PROJECT): $(OBJFILES) $(RESDEPEN) $(DEFFILE)
$(BCB)\BIN\$(LINKER) @&&!
$(LFLAGS) +
$(ALLOBJ), +
$(PROJECT),, +
$(ALLLIB), +
$(DEFFILE), +
$(ALLRES)
!
# ---------------------------------------------------------------------------
.pas.hpp:
$(BCB)\BIN\$(DCC32) $(PFLAGS) {$< }
.pas.obj:
$(BCB)\BIN\$(DCC32) $(PFLAGS) {$< }
.cpp.obj:
$(BCB)\BIN\$(BCC32) $(CFLAG1) -n$(@D) {$< }
.c.obj:
$(BCB)\BIN\$(BCC32) $(CFLAG1) -n$(@D) {$< }
.c.i:
$(BCB)\BIN\$(CPP32) $(CFLAG1) -n. {$< }
.cpp.i:
$(BCB)\BIN\$(CPP32) $(CFLAG1) -n. {$< }
.asm.obj:
$(BCB)\BIN\$(TASM32) $(AFLAGS) $<, $@
.rc.res:
$(BCB)\BIN\$(BRCC32) $(RFLAGS) -fo$@ $<
# ---------------------------------------------------------------------------

View File

@@ -0,0 +1,22 @@
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
USERES("DemoBCB.res");
USEFORMNS("Demo1.pas", Demo1, Form1);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
return 0;
}
//---------------------------------------------------------------------------

View File

@@ -0,0 +1,115 @@
<?xml version='1.0' encoding='utf-8' ?>
<!-- C++Builder XML Project -->
<PROJECT>
<MACROS>
<VERSION value="BCB.06.00"/>
<PROJECT value="DemoBCB6.exe"/>
<OBJFILES value="DemoBCB6.obj Demo1.obj"/>
<RESFILES value="DemoBCB6.res"/>
<DEFFILE value=""/>
<RESDEPEN value="$(RESFILES) Demo1.dfm"/>
<LIBFILES value=""/>
<LIBRARIES value="bcb2kaxserver.lib indy.lib dbxcds.lib dclocx.lib soaprtl.lib bcbie.lib
nmfast.lib dbexpress.lib inetdbxpress.lib inetdb.lib inetdbbde.lib
visualdbclx.lib ibxpress.lib teeqr.lib tee.lib teedb.lib teeui.lib
bdecds.lib cds.lib dsnap.lib vcldbx.lib bdertl.lib qrpt.lib adortl.lib
dbrtl.lib vcldb.lib bcbsmp.lib inet.lib xmlrtl.lib"/>
<SPARELIBS value="vcl.lib rtl.lib xmlrtl.lib inet.lib tb2k_cb6.lib bcbsmp.lib vcldb.lib
dbrtl.lib adortl.lib qrpt.lib bdertl.lib vcldbx.lib dsnap.lib cds.lib
bdecds.lib teeui.lib teedb.lib tee.lib teeqr.lib ibxpress.lib
visualdbclx.lib inetdbbde.lib inetdb.lib inetdbxpress.lib dbexpress.lib
nmfast.lib bcbie.lib soaprtl.lib dclocx.lib dbxcds.lib indy.lib
bcb2kaxserver.lib"/>
<PACKAGES value="vcl.bpi rtl.bpi vclx.bpi tb2k_cb6.bpi"/>
<PATHCPP value=".;"/>
<PATHPAS value=".;"/>
<PATHRC value=".;"/>
<PATHASM value=".;"/>
<DEBUGLIBPATH value="$(BCB)\lib\debug"/>
<RELEASELIBPATH value="$(BCB)\lib\release"/>
<LINKER value="ilink32"/>
<USERDEFINES value="_DEBUG"/>
<SYSDEFINES value="_RTLDLL;NO_STRICT;USEPACKAGES"/>
<MAINSOURCE value="DemoBCB6.cpp"/>
<INCLUDEPATH value="$(BCB)\Projects;$(BCB)\include;$(BCB)\include\vcl"/>
<LIBPATH value="$(BCB)\Projects;$(BCB)\Projects\Lib;$(BCB)\lib\obj;$(BCB)\lib"/>
<WARNINGS value="-w-par"/>
<OTHERFILES value=""/>
</MACROS>
<OPTIONS>
<CFLAG1 value="-Od -H=$(BCB)\lib\vcl60.csm -Hc -Vx -Ve -X- -r- -a8 -b- -k -y -v -vi- -c
-tW -tWM"/>
<PFLAGS value="-$YD -$W -$O- -$A8 -v -JPHNE -M"/>
<RFLAGS value=""/>
<AFLAGS value="/mx /w2 /zd"/>
<LFLAGS value="-D&quot;&quot; -aa -Tpe -x -Gn -v"/>
<OTHERFILES value=""/>
</OPTIONS>
<LINKER>
<ALLOBJ value="c0w32.obj $(PACKAGES) Memmgr.Lib sysinit.obj $(OBJFILES)"/>
<ALLRES value="$(RESFILES)"/>
<ALLLIB value="$(LIBFILES) $(LIBRARIES) import32.lib cp32mti.lib"/>
<OTHERFILES value=""/>
</LINKER>
<FILELIST>
<FILE FILENAME="DemoBCB6.res" FORMNAME="" UNITNAME="DemoBCB6.res" CONTAINERID="ResTool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="DemoBCB6.cpp" FORMNAME="" UNITNAME="DemoBCB6" CONTAINERID="CCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="Demo1.pas" FORMNAME="Form1" UNITNAME="Demo1" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
</FILELIST>
<BUILDTOOLS>
</BUILDTOOLS>
<IDEOPTIONS>
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1033
CodePage=1252
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[Debugging]
DebugSourceDirs=$(BCB)\source\vcl
[Parameters]
RunParams=
Launcher=
UseLauncher=0
DebugCWD=
HostApplication=
RemoteHost=
RemotePath=
RemoteLauncher=
RemoteCWD=
RemoteDebug=0
[Compiler]
ShowInfoMsgs=0
LinkDebugVcl=0
LinkCGLIB=0
[Language]
ActiveLang=
ProjectLang=
RootDir=
</IDEOPTIONS>
</PROJECT>

View File

@@ -0,0 +1,34 @@
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
//---------------------------------------------------------------------------
USEFORMNS("Demo1.pas", Demo1, Form1);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
}
//---------------------------------------------------------------------------

View File

@@ -0,0 +1,340 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.

BIN
ToolBar 2000/Glyphs.zip Normal file

Binary file not shown.

17
ToolBar 2000/LICENSE.txt Normal file
View File

@@ -0,0 +1,17 @@
All files included in the Toolbar2000 archive are Copyright (C) 1998-2008
Jordan Russell.
Use and/or distribution of the files requires compliance with the
"Toolbar2000 License", found in TB2k-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/TB2k-LICENSE.txt
Alternatively, at your option, the files may be used and/or distributed under
the terms of the "GNU General Public License", found in GPL-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/GPL-LICENSE.txt
NOTE: If you choose the GPL license option, your application as a whole must
also be licensed under the GPL. (Refer to section 2b of the GPL license.)
Therefore, you cannot choose the GPL license option if your application is
proprietary/closed-source.

View File

@@ -0,0 +1,10 @@
*.bdsproj.local
*.bpl
*.cfg
*.dcu
*.dcuil
*.hpp
*.identcache
*.lib
*.obj
*.rsp

View File

@@ -0,0 +1,62 @@
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Packages\tb2k_d7.dpk *
Hint: К параметрам пользователя добавлены определения -dBorland -dVer150 -dDelphi7 -dCompiler6_Up -dPUREPASCAL
Hint: Найдены все файлы модулей
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Packages\tb2k_d7.dpk *
Hint:
Hint: *** Преобразование файлов модулей, принадлежащих проекту/пакету ***
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Version.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Toolbar.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: Модуль "Windows" в выражении Uses заменён на "LCLIntf, LCLType, LMessages".
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Consts.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Dock.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: Модуль "Windows" в выражении Uses заменён на "LCLIntf, LCLType, LMessages".
Hint: Вызов RecreateWnd; заменён на RecreateWnd(Self); { *Преобразовано из RecreateWnd* }
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2ExtItems.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: Модуль "Windows" в выражении Uses заменён на "LCLIntf, LCLType, LMessages".
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Item.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: Модуль "Windows" в выражении Uses заменён на "LCLIntf, LCLType, LMessages".
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Common.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: Модуль "Windows" в выражении Uses заменён на "LCLIntf, LCLType, LMessages".
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Hook.pas *
Hint: Модуль "Windows" в выражении Uses заменён на "LCLIntf, LCLType, LMessages".
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2ToolWindow.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: Модуль "Windows" в выражении Uses заменён на "LCLIntf, LCLType, LMessages".
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2MRU.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: Модуль "Windows" в выражении Uses заменён на "LCLIntf, LCLType, LMessages".
Hint: Вызов ExpandFileName(Filename); заменён на ExpandFileNameUTF8(Filename); { *Преобразовано из ExpandFileName* }
Hint: Модуль FileUtil добавлен в выражение Uses
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Anim.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: Модуль "Windows" в выражении Uses заменён на "LCLIntf, LCLType, LMessages".
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2MDI.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: Модуль "Windows" в выражении Uses заменён на "LCLIntf, LCLType, LMessages".
Hint: * Преобразование файла D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Acc.pas *
Hint: Исправление включаемых файлов: ..\Source\TB2Ver.inc
Hint: Модуль "Windows" в выражении Uses заменён на "LCLIntf, LCLType, LMessages".
Hint:
Hint: *** Исправление списков используемых модулей и файлов форм ***
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Version.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Toolbar.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Consts.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Dock.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2ExtItems.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Item.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Common.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Hook.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2ToolWindow.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2MRU.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Anim.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2MDI.pas *
Hint: * Исправление списка используемых модулей в файле D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\TB2Acc.pas *
Hint: Преобразование заняло: 00:00:08
Hint: Преобразование завершено.

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,323 @@
unit TB2Anim;
{
Toolbar2000
Copyright (C) 1998-2008 by Jordan Russell
All rights reserved.
The contents of this file are subject to the "Toolbar2000 License"; you may
not use or distribute this file except in compliance with the
"Toolbar2000 License". A copy of the "Toolbar2000 License" may be found in
TB2k-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/TB2k-LICENSE.txt
Alternatively, the contents of this file may be used under the terms of the
GNU General Public License (the "GPL"), in which case the provisions of the
GPL are applicable instead of those in the "Toolbar2000 License". A copy of
the GPL may be found in GPL-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/GPL-LICENSE.txt
If you wish to allow use of your version of this file only under the terms of
the GPL and not to allow others to use your version of this file under the
"Toolbar2000 License", indicate your decision by deleting the provisions
above and replace them with the notice and other provisions required by the
GPL. If you do not delete the provisions above, a recipient may use your
version of this file under either the "Toolbar2000 License" or the GPL.
$jrsoftware: tb2k/Source/TB2Anim.pas,v 1.13 2008/09/19 16:41:00 jr Exp $
}
interface
{$I TB2Ver.inc}
{$Q-}
uses
Windows, Messages, SysUtils, Classes;
const
WM_TB2K_ANIMATIONENDED = WM_USER + $556;
type
TTBAnimationDirection = set of (tbadLeft, tbadRight, tbadDown, tbadUp);
procedure TBStartAnimation(const AWnd: HWND; const ABlend: Boolean;
const ADirection: TTBAnimationDirection);
procedure TBUpdateAnimation;
procedure TBEndAnimation(const Wnd: HWND);
function TBIsAnimationInProgress: Boolean;
implementation
uses
{$IFDEF CLR} System.Security, System.Runtime.InteropServices, System.Threading, {$ENDIF}
TB2Common;
{ Notes to self:
- It originally had the NOMIRRORBITMAP flag on the BitBlt calls, because
Windows 2000's AnimateWindow function has it. But it had to be removed
because on Windows 98 with the Standard VGA or VMware video driver, it
caused no bits to be blitted, even though Windows 98 is supposed to
support NOMIRRORBITMAP according to the documentation. I don't think it's
necessary anyway.
}
const
DCX_USESTYLE = $10000;
WS_EX_LAYERED = $80000;
NOMIRRORBITMAP = $80000000;
ULW_ALPHA = 2;
type
PAnimateThreadFuncData = ^TAnimateThreadFuncData;
TAnimateThreadFuncData = record
FRunning: Boolean;
FWnd: HWND;
FTime: Integer;
FBlending: Boolean;
FStartStep, FCurStep: Integer;
FStartTime, FLastFrameTime: DWORD;
FWndDC, FBmpDC: HDC;
FBmp: HBITMAP;
FScreenClientRect: TRect;
FSize: TSize;
FLastPos: TPoint;
FDirection: TTBAnimationDirection;
end;
{ Delphi.NET 2007 note: Because TRect/TSize/TPoint are wrongly declared as
'packed', fields of these types must be preceded by an Integer- or
IntPtr-sized field to ensure correct alignment and avoid an alignment
fault on IA-64. }
{$IFNDEF CLR}
var
UpdateLayeredWindowProc: function(Handle: HWND; hdcDest: HDC;
pptDst: PPoint; _psize: PSize; hdcSrc: HDC; pptSrc: PPoint;
crKey: COLORREF; var pblend: TBLENDFUNCTION; dwFlags: DWORD): BOOL; stdcall;
{$ELSE}
{ We can't use Borland.Vcl.Windows' UpdateLayeredWindow because the "pblend"
parameter is misdeclared (see QC #25130) }
[SuppressUnmanagedCodeSecurity, DllImport(user32, CharSet = CharSet.Ansi, SetLastError = True, EntryPoint = 'UpdateLayeredWindow')]
function UpdateLayeredWindowProc(Handle: HWND; hdcDest: HDC; const pptDst: TPoint;
const _psize: TSize; hdcSrc: HDC; const pptSrc: TPoint;
crKey: COLORREF; [in] var pblend: TBLENDFUNCTION; dwFlags: DWORD): BOOL; overload; external;
[SuppressUnmanagedCodeSecurity, DllImport(user32, CharSet = CharSet.Ansi, SetLastError = True, EntryPoint = 'UpdateLayeredWindow')]
function UpdateLayeredWindowProc(Handle: HWND; hdcDest: HDC; pptDst: IntPtr;
_psize: IntPtr; hdcSrc: HDC; pptSrc: IntPtr;
crKey: COLORREF; [in] var pblend: TBLENDFUNCTION; dwFlags: DWORD): BOOL; overload; external;
{$ENDIF}
threadvar
AnimateData: TAnimateThreadFuncData;
procedure FinalizeAnimation;
begin
{$IFNDEF CLR}
with PAnimateThreadFuncData(@AnimateData)^ do begin
{$ELSE}
with AnimateData do begin
{$ENDIF}
FRunning := False;
if FBmpDC <> 0 then begin
if FBlending then
SetWindowLong(FWnd, GWL_EXSTYLE,
GetWindowLong(FWnd, GWL_EXSTYLE) and not WS_EX_LAYERED)
else
SetWindowRgn(FWnd, 0, False);
BitBlt(FWndDC, 0, 0, FSize.cx, FSize.cy, FBmpDC, 0, 0, SRCCOPY);
DeleteDC(FBmpDC);
FBmpDC := 0;
end;
if FBmp <> 0 then begin
DeleteObject(FBmp);
FBmp := 0;
end;
if FWndDC <> 0 then begin
ReleaseDC(FWnd, FWndDC);
FWndDC := 0;
end;
if FWnd <> 0 then begin
SendNotifyMessage(FWnd, WM_TB2K_ANIMATIONENDED, 0, 0);
FWnd := 0;
end;
end;
end;
function TBIsAnimationInProgress: Boolean;
begin
Result := AnimateData.FRunning;
end;
procedure TBEndAnimation(const Wnd: HWND);
begin
if AnimateData.FRunning and
((Wnd = 0) or (AnimateData.FWnd = Wnd)) then
FinalizeAnimation;
end;
procedure TBStartAnimation(const AWnd: HWND; const ABlend: Boolean;
const ADirection: TTBAnimationDirection);
var
ZeroPt: TPoint;
R: TRect;
Blend: TBlendFunction;
Rgn: HRGN;
begin
FinalizeAnimation;
ZeroPt.X := 0;
ZeroPt.Y := 0;
try
{$IFNDEF CLR}
{ Note: The pointer cast avoids GetTls calls for every field access }
with PAnimateThreadFuncData(@AnimateData)^ do begin
{$ELSE}
with AnimateData do begin
{$ENDIF}
FWnd := AWnd;
FBlending := ABlend and {$IFNDEF CLR} Assigned(UpdateLayeredWindowProc)
{$ELSE} (Win32MajorVersion >= 5) {$ENDIF};
FDirection := ADirection;
GetCursorPos(FLastPos);
GetClientRect(FWnd, FScreenClientRect);
MapWindowPoints(FWnd, 0, FScreenClientRect, 2);
GetWindowRect(FWnd, R);
FWndDC := GetDCEx(FWnd, 0, DCX_WINDOW or DCX_CACHE {or DCX_USESTYLE ?});
if FWndDC = 0 then
RaiseLastOSError;
FSize.cx := R.Right - R.Left;
FSize.cy := R.Bottom - R.Top;
FBmp := CreateCompatibleBitmap(FWndDC, FSize.cx, FSize.cy {or $01000000 ?});
if FBmp = 0 then
RaiseLastOSError;
FBmpDC := CreateCompatibleDC(FWndDC);
if FBmpDC = 0 then
RaiseLastOSError;
// AnimateWindow calls SetLayout, but I'm not sure that we need to.
//if Assigned(SetLayoutProc) then
// SetLayoutProc(FBmpDC, 0);
SelectObject(FBmpDC, FBmp);
//SetBoundsRect(FBmpDC, nil, DCB_RESET or DCB_ENABLE);
SendMessage(FWnd, WM_PRINT, WPARAM(FBmpDC), PRF_NONCLIENT or PRF_CLIENT or
PRF_ERASEBKGND or PRF_CHILDREN);
//GetBoundsRect
if FBlending then begin
SetWindowLong(FWnd, GWL_EXSTYLE, GetWindowLong(FWnd, GWL_EXSTYLE) or WS_EX_LAYERED);
FTime := 175; { actually more like ~147 because FCurStep starts at 40 }
FCurStep := 40;
Blend.BlendOp := AC_SRC_OVER;
Blend.BlendFlags := 0;
Blend.SourceConstantAlpha := FCurStep;
Blend.AlphaFormat := 0;
Win32Check(UpdateLayeredWindowProc(FWnd, 0, {$IFNDEF CLR}@{$ENDIF} R.TopLeft,
{$IFNDEF CLR}@{$ENDIF} FSize, FBmpDC, {$IFNDEF CLR}@{$ENDIF} ZeroPt,
0, Blend, ULW_ALPHA));
end
else begin
FTime := 150;
FCurStep := 0;
Rgn := CreateRectRgn(0, 0, 0, 0);
if not BOOL(SetWindowRgn(FWnd, Rgn, False)) then
DeleteObject(Rgn); { just in case }
end;
FStartStep := FCurStep;
FStartTime := GetTickCount;
FLastFrameTime := FStartTime;
{ These are the same flags AnimateWindow uses. SWP_ASYNCWINDOWPOS is
needed or else it doesn't "save bits" properly.
Note: SWP_ASYNCWINDOWPOS seems to have no effect on Windows 95 & NT 4.0,
so bits behind the window are not saved & restored correctly. }
SetWindowPos(FWnd, 0, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE or
SWP_NOZORDER or SWP_NOACTIVATE or SWP_SHOWWINDOW or SWP_NOREDRAW or
SWP_NOOWNERZORDER or SWP_ASYNCWINDOWPOS);
FRunning := True;
end;
except
FinalizeAnimation;
raise;
end;
end;
procedure TBUpdateAnimation;
var
ThisFrameTime: DWORD;
ElapsedTime, NewStep: Integer;
P: TPoint;
Blend: TBlendFunction;
X, Y: Integer;
Rgn: HRGN;
begin
{$IFNDEF CLR}
with PAnimateThreadFuncData(@AnimateData)^ do begin
{$ELSE}
with AnimateData do begin
{$ENDIF}
if not FRunning then
Exit;
{ If 10 msec hasn't passed since the last call, exit. We don't want to
monopolize the CPU. }
ThisFrameTime := GetTickCount;
if ThisFrameTime - FLastFrameTime < 10 then
Exit;
FLastFrameTime := ThisFrameTime;
ElapsedTime := ThisFrameTime - FStartTime;
if (ElapsedTime < 0) or (ElapsedTime >= FTime) then begin
FinalizeAnimation;
Exit;
end;
NewStep := FStartStep + ((255 * ElapsedTime) div FTime);
if (NewStep < 0) or (NewStep >= 255) then begin
FinalizeAnimation;
Exit;
end;
GetCursorPos(P);
if (P.X <> FLastPos.X) or (P.Y <> FLastPos.Y) then begin
if PtInRect(FScreenClientRect, P) then begin
FinalizeAnimation;
Exit;
end;
FLastPos := P;
end;
if NewStep > FCurStep then begin
FCurStep := NewStep;
if FBlending then begin
Blend.BlendOp := AC_SRC_OVER;
Blend.BlendFlags := 0;
Blend.SourceConstantAlpha := NewStep;
Blend.AlphaFormat := 0;
UpdateLayeredWindowProc(FWnd, 0, nil, nil, 0, nil, 0, Blend, ULW_ALPHA);
end
else begin
if tbadDown in FDirection then
Y := MulDiv(FSize.cy, NewStep, 255) - FSize.cy
else if tbadUp in FDirection then
Y := FSize.cy - MulDiv(FSize.cy, NewStep, 255)
else
Y := 0;
if tbadRight in FDirection then
X := MulDiv(FSize.cx, NewStep, 255) - FSize.cx
else if tbadLeft in FDirection then
X := FSize.cx - MulDiv(FSize.cx, NewStep, 255)
else
X := 0;
Rgn := CreateRectRgn(X, Y, X + FSize.cx, Y + FSize.cy);
if not BOOL(SetWindowRgn(FWnd, Rgn, False)) then
DeleteObject(Rgn); { just in case }
BitBlt(FWndDC, X, Y, FSize.cx, FSize.cy, FBmpDC, 0, 0, SRCCOPY);
end;
end;
end;
end;
initialization
{$IFNDEF CLR}
UpdateLayeredWindowProc := GetProcAddress(GetModuleHandle(user32),
'UpdateLayeredWindow');
{$ENDIF}
finalization
FinalizeAnimation;
end.

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,34 @@
unit TB2Consts;
{ $jrsoftware: tb2k/Source/TB2Consts.pas,v 1.8 2006/03/12 23:11:58 jr Exp $ }
interface
{$I TB2Ver.inc}
resourcestring
{ Exceptions }
STBToolbarIndexOutOfBounds = 'Toolbar item index out of range';
STBToolbarItemReinserted = 'Toolbar item already inserted';
STBToolbarItemParentInvalid = 'Toolbar item cannot be inserted into container of type %s';
STBViewerNotFound = 'An item viewer associated the specified item could not be found';
{ TTBChevronItem }
STBChevronItemMoreButtonsHint = 'More Buttons|';
{ TTBMRUListItem }
STBMRUListItemDefCaption = '(MRU List)';
{ TTBMDIWindowItem }
STBMDIWindowItemDefCaption = '(Window List)';
{ TTBDock exception messages }
STBDockParentNotAllowed = 'A TTBDock control cannot be placed inside a tool window or another TTBDock';
STBDockCannotChangePosition = 'Cannot change Position of a TTBDock if it already contains controls';
{ TTBCustomDockableWindow exception messages }
STBToolwinNameNotSet = 'Cannot save dockable window''s position because Name property is not set';
STBToolwinDockedToNameNotSet = 'Cannot save dockable window''s position because DockedTo''s Name property not set';
implementation
end.

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,990 @@
unit TB2ExtItems;
{
Toolbar2000
Copyright (C) 1998-2008 by Jordan Russell
All rights reserved.
The contents of this file are subject to the "Toolbar2000 License"; you may
not use or distribute this file except in compliance with the
"Toolbar2000 License". A copy of the "Toolbar2000 License" may be found in
TB2k-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/TB2k-LICENSE.txt
Alternatively, the contents of this file may be used under the terms of the
GNU General Public License (the "GPL"), in which case the provisions of the
GPL are applicable instead of those in the "Toolbar2000 License". A copy of
the GPL may be found in GPL-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/GPL-LICENSE.txt
If you wish to allow use of your version of this file only under the terms of
the GPL and not to allow others to use your version of this file under the
"Toolbar2000 License", indicate your decision by deleting the provisions
above and replace them with the notice and other provisions required by the
GPL. If you do not delete the provisions above, a recipient may use your
version of this file under either the "Toolbar2000 License" or the GPL.
$jrsoftware: tb2k/Source/TB2ExtItems.pas,v 1.68 2008/04/10 21:51:12 jr Exp $
}
interface
{$I TB2Ver.inc}
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, CommCtrl, Menus, ActnList,
TB2Item;
type
TTBEditItemOption = (tboUseEditWhenVertical);
TTBEditItemOptions = set of TTBEditItemOption;
const
EditItemDefaultEditOptions = [];
EditItemDefaultEditWidth = 64;
type
TTBEditItem = class;
TTBEditItemViewer = class;
TTBAcceptTextEvent = procedure(Sender: TObject; var NewText: String;
var Accept: Boolean) of object;
TTBBeginEditEvent = procedure(Sender: TTBEditItem; Viewer: TTBEditItemViewer;
EditControl: TEdit) of object;
TTBEditAction = class(TAction)
private
FEditOptions: TTBEditItemOptions;
FEditCaption: String;
FEditWidth: Integer;
FOnAcceptText: TTBAcceptTextEvent;
FText: String;
procedure SetEditCaption(Value: String);
procedure SetEditOptions(Value: TTBEditItemOptions);
procedure SetEditWidth(Value: Integer);
procedure SetOnAcceptText(Value: TTBAcceptTextEvent);
procedure SetText(Value: String);
public
constructor Create(AOwner: TComponent); override;
published
property EditCaption: String read FEditCaption write SetEditCaption;
property EditOptions: TTBEditItemOptions read FEditOptions write SetEditOptions default EditItemDefaultEditOptions;
property EditWidth: Integer read FEditWidth write SetEditWidth default EditItemDefaultEditWidth;
property Text: String read FText write SetText;
property OnAcceptText: TTBAcceptTextEvent read FOnAcceptText write SetOnAcceptText;
end;
TTBEditItemActionLink = class(TTBCustomItemActionLink)
protected
procedure AssignClient(AClient: TObject); override;
function IsEditCaptionLinked: Boolean; virtual;
function IsEditOptionsLinked: Boolean; virtual;
function IsEditWidthLinked: Boolean; virtual;
function IsOnAcceptTextLinked: Boolean; virtual;
function IsTextLinked: Boolean; virtual;
procedure SetEditCaption(const Value: String); virtual;
procedure SetEditOptions(Value: TTBEditItemOptions); virtual;
procedure SetEditWidth(const Value: Integer); virtual;
procedure SetOnAcceptText(Value: TTBAcceptTextEvent); virtual;
procedure SetText(const Value: String); virtual;
end;
TTBEditItem = class(TTBCustomItem)
private
FCharCase: TEditCharCase;
FEditCaption: String;
FEditOptions: TTBEditItemOptions;
FEditWidth: Integer;
FMaxLength: Integer;
FOnAcceptText: TTBAcceptTextEvent;
FOnBeginEdit: TTBBeginEditEvent;
FText: String;
function IsEditCaptionStored: Boolean;
function IsEditOptionsStored: Boolean;
function IsEditWidthStored: Boolean;
function IsTextStored: Boolean;
procedure SetCharCase(Value: TEditCharCase);
procedure SetEditCaption(Value: String);
procedure SetEditOptions(Value: TTBEditItemOptions);
procedure SetEditWidth(Value: Integer);
procedure SetMaxLength(Value: Integer);
procedure SetText(Value: String);
protected
procedure ActionChange(Sender: TObject; CheckDefaults: Boolean); override;
procedure DoBeginEdit(Viewer: TTBEditItemViewer); virtual;
function GetActionLinkClass: TTBCustomItemActionLinkClass; override;
function GetItemViewerClass(AView: TTBView): TTBItemViewerClass; override;
function NeedToRecreateViewer(AViewer: TTBItemViewer): Boolean; override;
public
constructor Create(AOwner: TComponent); override;
procedure Clear;
procedure Click; override;
published
property Action;
property AutoCheck;
property Caption;
property CharCase: TEditCharCase read FCharCase write SetCharCase default ecNormal;
property Checked;
property DisplayMode;
property EditCaption: String read FEditCaption write SetEditCaption stored IsEditCaptionStored;
property EditOptions: TTBEditItemOptions read FEditOptions write SetEditOptions stored IsEditOptionsStored;
property EditWidth: Integer read FEditWidth write SetEditWidth stored IsEditWidthStored;
property MaxLength: Integer read FMaxLength write SetMaxLength default 0;
property Enabled;
property GroupIndex;
property HelpContext;
property Hint;
property ImageIndex;
property InheritOptions;
property MaskOptions;
property Options;
property RadioItem;
property ShortCut;
property Text: String read FText write SetText stored IsTextStored;
property Visible;
property OnAcceptText: TTBAcceptTextEvent read FOnAcceptText write FOnAcceptText;
property OnBeginEdit: TTBBeginEditEvent read FOnBeginEdit write FOnBeginEdit;
property OnClick;
property OnSelect;
end;
TTBEditItemViewer = class(TTBItemViewer)
private
FEditControl: TEdit;
FEditControlStatus: set of (ecsContinueLoop, ecsAccept, ecsClose);
function EditLoop(const CapHandle: HWND): Boolean;
procedure EditWndProc(var Message: TMessage);
procedure MouseBeginEdit;
protected
procedure CalcSize(const Canvas: TCanvas; var AWidth, AHeight: Integer);
override;
function CaptionShown: Boolean; override;
function DoExecute: Boolean; override;
function GetAccRole: Integer; override;
function GetAccValue(var Value: WideString): Boolean; override;
function GetCaptionText: String; override;
procedure GetCursor(const Pt: TPoint; var ACursor: HCURSOR); override;
procedure GetEditRect(var R: TRect); virtual;
procedure MouseDown(Shift: TShiftState; X, Y: Integer;
var MouseDownOnMenu: Boolean); override;
procedure MouseUp(X, Y: Integer; MouseWasDownOnMenu: Boolean); override;
procedure Paint(const Canvas: TCanvas; const ClientAreaRect: TRect;
IsSelected, IsPushed, UseDisabledShadow: Boolean); override;
function UsesSameWidth: Boolean; override;
public
property EditControl: TEdit read FEditControl;
end;
{ TTBVisibilityToggleItem }
TTBVisibilityToggleItem = class(TTBCustomItem)
private
FControl: TControl;
procedure SetControl(Value: TControl);
procedure UpdateProps;
protected
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
public
procedure Click; override;
procedure InitiateAction; override;
published
property Caption;
property Control: TControl read FControl write SetControl;
property DisplayMode;
property Enabled;
property HelpContext;
property Hint;
property ImageIndex;
property Images;
property InheritOptions;
property MaskOptions;
property Options;
property ShortCut;
property Visible;
property OnClick;
property OnSelect;
end;
implementation
uses
TB2Common, TB2Consts;
const
EditMenuTextMargin = 3;
EditMenuMidWidth = 4;
type
TControlAccess = class(TControl);
TEditAccess = {$IFNDEF CLR} class(TEdit) {$ELSE} IControl {$ENDIF};
{ TTBEditAction }
constructor TTBEditAction.Create(AOwner: TComponent);
begin
inherited;
FEditOptions := EditItemDefaultEditOptions;
FEditWidth := EditItemDefaultEditWidth;
DisableIfNoHandler := False;
end;
procedure TTBEditAction.SetEditCaption(Value: String);
var
I: Integer;
begin
if FEditCaption <> Value then begin
for I := 0 to FClients.Count - 1 do
if TBasicActionLink(FClients[I]) is TTBEditItemActionLink then
TTBEditItemActionLink(FClients[I]).SetEditCaption(Value);
FEditCaption := Value;
Change;
end;
end;
procedure TTBEditAction.SetEditOptions(Value: TTBEditItemOptions);
var
I: Integer;
begin
if FEditOptions <> Value then begin
for I := 0 to FClients.Count - 1 do
if TBasicActionLink(FClients[I]) is TTBEditItemActionLink then
TTBEditItemActionLink(FClients[I]).SetEditOptions(Value);
FEditOptions := Value;
Change;
end;
end;
procedure TTBEditAction.SetEditWidth(Value: Integer);
var
I: Integer;
begin
if FEditWidth <> Value then begin
for I := 0 to FClients.Count - 1 do
if TBasicActionLink(FClients[I]) is TTBEditItemActionLink then
TTBEditItemActionLink(FClients[I]).SetEditWidth(Value);
FEditWidth := Value;
Change;
end;
end;
procedure TTBEditAction.SetOnAcceptText(Value: TTBAcceptTextEvent);
var
I: Integer;
begin
{$IFNDEF CLR}
if not MethodsEqual(TMethod(FOnAcceptText), TMethod(Value)) then begin
{$ELSE}
if @FOnAcceptText <> @Value then begin
{$ENDIF}
for I := 0 to FClients.Count - 1 do
if TBasicActionLink(FClients[I]) is TTBEditItemActionLink then
TTBEditItemActionLink(FClients[I]).SetOnAcceptText(Value);
FOnAcceptText := Value;
Change;
end;
end;
procedure TTBEditAction.SetText(Value: String);
var
I: Integer;
begin
if FText <> Value then begin
for I := 0 to FClients.Count - 1 do
if TBasicActionLink(FClients[I]) is TTBEditItemActionLink then
TTBEditItemActionLink(FClients[I]).SetText(Value);
FText := Value;
Change;
end;
end;
{ TTBEditItemActionLink }
procedure TTBEditItemActionLink.AssignClient(AClient: TObject);
begin
FClient := AClient as TTBEditItem;
end;
function TTBEditItemActionLink.IsEditCaptionLinked: Boolean;
begin
if Action is TTBEditAction then
Result := TTBEditItem(FClient).EditCaption = TTBEditAction(Action).EditCaption
else
Result := False;
end;
function TTBEditItemActionLink.IsEditOptionsLinked: Boolean;
begin
if Action is TTBEditAction then
Result := TTBEditItem(FClient).EditOptions = TTBEditAction(Action).EditOptions
else
Result := False;
end;
function TTBEditItemActionLink.IsEditWidthLinked: Boolean;
begin
if Action is TTBEditAction then
Result := TTBEditItem(FClient).EditWidth = TTBEditAction(Action).EditWidth
else
Result := False;
end;
function TTBEditItemActionLink.IsOnAcceptTextLinked: Boolean;
begin
if Action is TTBEditAction then
{$IFNDEF CLR}
Result := MethodsEqual(TMethod(TTBEditItem(FClient).OnAcceptText),
TMethod(TTBEditAction(Action).OnAcceptText))
{$ELSE}
Result := @TTBEditItem(FClient).OnAcceptText = @TTBEditAction(Action).OnAcceptText
{$ENDIF}
else
Result := False;
end;
function TTBEditItemActionLink.IsTextLinked: Boolean;
begin
if Action is TTBEditAction then
Result := TTBEditItem(FClient).Text = TTBEditAction(Action).Text
else
Result := False;
end;
procedure TTBEditItemActionLink.SetEditCaption(const Value: String);
begin
if IsEditCaptionLinked then TTBEditItem(FClient).EditCaption := Value;
end;
procedure TTBEditItemActionLink.SetEditOptions(Value: TTBEditItemOptions);
begin
if IsEditOptionsLinked then TTBEditItem(FClient).EditOptions := Value;
end;
procedure TTBEditItemActionLink.SetEditWidth(const Value: Integer);
begin
if IsEditWidthLinked then TTBEditItem(FClient).EditWidth := Value;
end;
procedure TTBEditItemActionLink.SetOnAcceptText(Value: TTBAcceptTextEvent);
begin
if IsOnAcceptTextLinked then TTBEditItem(FClient).OnAcceptText := Value;
end;
procedure TTBEditItemActionLink.SetText(const Value: String);
begin
if IsTextLinked then TTBEditItem(FClient).Text := Value;
end;
{ TTBEditItem }
constructor TTBEditItem.Create(AOwner: TComponent);
begin
inherited;
FEditOptions := EditItemDefaultEditOptions;
FEditWidth := EditItemDefaultEditWidth;
end;
procedure TTBEditItem.ActionChange(Sender: TObject; CheckDefaults: Boolean);
begin
inherited;
if Action is TTBEditAction then
with TTBEditAction(Sender) do
begin
if not CheckDefaults or (Self.EditCaption = '') then
Self.EditCaption := EditCaption;
if not CheckDefaults or (Self.EditOptions = []) then
Self.EditOptions := EditOptions;
if not CheckDefaults or (Self.Text = '') then
Self.Text := Text;
if not CheckDefaults or not Assigned(Self.OnAcceptText) then
Self.OnAcceptText := OnAcceptText;
end;
end;
function TTBEditItem.GetActionLinkClass: TTBCustomItemActionLinkClass;
begin
Result := TTBEditItemActionLink;
end;
function TTBEditItem.GetItemViewerClass(AView: TTBView): TTBItemViewerClass;
begin
if not(tboUseEditWhenVertical in EditOptions) and
(AView.Orientation = tbvoVertical) then
Result := inherited GetItemViewerClass(AView)
else
Result := TTBEditItemViewer;
end;
function TTBEditItem.NeedToRecreateViewer(AViewer: TTBItemViewer): Boolean;
begin
Result := GetItemViewerClass(AViewer.View) <> AViewer.ClassType;
end;
procedure TTBEditItem.Clear;
begin
Text := '';
end;
procedure TTBEditItem.Click;
begin
inherited;
end;
procedure TTBEditItem.DoBeginEdit(Viewer: TTBEditItemViewer);
begin
if Assigned(FOnBeginEdit) then
FOnBeginEdit(Self, Viewer, Viewer.EditControl);
end;
function TTBEditItem.IsEditOptionsStored: Boolean;
begin
Result := (EditOptions <> EditItemDefaultEditOptions) and
((ActionLink = nil) or not(ActionLink is TTBEditItemActionLink) or
not TTBEditItemActionLink(ActionLink).IsEditOptionsLinked);
end;
function TTBEditItem.IsEditCaptionStored: Boolean;
begin
Result := (ActionLink = nil) or not(ActionLink is TTBEditItemActionLink) or
not TTBEditItemActionLink(ActionLink).IsEditCaptionLinked;
end;
function TTBEditItem.IsEditWidthStored: Boolean;
begin
Result := (EditWidth <> EditItemDefaultEditWidth) and
((ActionLink = nil) or not(ActionLink is TTBEditItemActionLink) or
not TTBEditItemActionLink(ActionLink).IsEditWidthLinked);
end;
function TTBEditItem.IsTextStored: Boolean;
begin
Result := (ActionLink = nil) or not(ActionLink is TTBEditItemActionLink) or
not TTBEditItemActionLink(ActionLink).IsTextLinked;
end;
procedure TTBEditItem.SetCharCase(Value: TEditCharCase);
begin
if FCharCase <> Value then begin
FCharCase := Value;
Text := Text; { update case }
end;
end;
procedure TTBEditItem.SetEditOptions(Value: TTBEditItemOptions);
begin
if FEditOptions <> Value then begin
FEditOptions := Value;
Change(True);
end;
end;
procedure TTBEditItem.SetEditCaption(Value: String);
begin
if FEditCaption <> Value then begin
FEditCaption := Value;
Change(True);
end;
end;
procedure TTBEditItem.SetEditWidth(Value: Integer);
begin
if FEditWidth <> Value then begin
FEditWidth := Value;
Change(True);
end;
end;
procedure TTBEditItem.SetMaxLength(Value: Integer);
begin
if FMaxLength <> Value then begin
FMaxLength := Value;
Change(False);
end;
end;
procedure TTBEditItem.SetText(Value: String);
begin
case FCharCase of
ecUpperCase: Value := {$IFNDEF CLR} AnsiUpperCase {$ELSE} UpperCase {$ENDIF} (Value);
ecLowerCase: Value := {$IFNDEF CLR} AnsiLowerCase {$ELSE} LowerCase {$ENDIF} (Value);
end;
if FText <> Value then begin
FText := Value;
Change(False);
end;
end;
{ TTBEditItemViewer }
procedure TTBEditItemViewer.EditWndProc(var Message: TMessage);
var
Item: TTBEditItem;
procedure AcceptText;
var
S: String;
Accept: Boolean;
begin
S := FEditControl.Text;
Accept := True;
if Assigned(Item.FOnAcceptText) then
Item.FOnAcceptText(Self, S, Accept);
if Accept then
Item.Text := S;
end;
begin
Item := TTBEditItem(Self.Item);
if Message.Msg = WM_CHAR then
case Word(Message.WParam) of
VK_TAB: begin
FEditControlStatus := [ecsAccept];
AcceptText;
Exit;
end;
VK_RETURN: begin
FEditControlStatus := [ecsAccept, ecsClose];
AcceptText;
Exit;
end;
VK_ESCAPE: begin
FEditControlStatus := [];
Exit;
end;
end;
TEditAccess(FEditControl).WndProc(Message);
if Message.Msg = WM_KILLFOCUS then begin
{ Someone has stolen the focus from us, so 'cancel mode'. (We have to
handle WM_KILLFOCUS in addition to the upstream WM_CANCELMODE handling
since we don't always hold the mouse capture.) }
View.CancelMode;
FEditControlStatus := [ecsClose];
end;
end;
procedure TTBEditItemViewer.GetEditRect(var R: TRect);
var
Item: TTBEditItem;
DC: HDC;
begin
Item := TTBEditItem(Self.Item);
DC := GetDC(0);
try
SelectObject(DC, View.GetFont.Handle);
R := BoundsRect;
if not View.IsToolbar and (Item.EditCaption <> '') then begin
Inc(R.Left, GetTextWidth(DC, Item.EditCaption, True) +
EditMenuMidWidth + EditMenuTextMargin * 2);
end;
finally
ReleaseDC(0, DC);
end;
end;
procedure TTBEditItemViewer.CalcSize(const Canvas: TCanvas;
var AWidth, AHeight: Integer);
var
Item: TTBEditItem;
DC: HDC;
begin
Item := TTBEditItem(Self.Item);
DC := Canvas.Handle;
AWidth := Item.FEditWidth;
AHeight := GetTextHeight(DC) + (EditMenuTextMargin * 2) + 1;
if not IsToolbarStyle and (Item.EditCaption <> '') then begin
Inc(AWidth, GetTextWidth(DC, Item.EditCaption, True) + EditMenuMidWidth +
EditMenuTextMargin * 2);
end;
{ Review: Should the height include external leading on fonts that use it,
such as the default menu font on Windows Me Trad. Chinese? Office 2000
seems to insist on using Tahoma on Chinese Windows, so I'm not sure how it
handles external leading on edit items. }
end;
function TTBEditItemViewer.CaptionShown: Boolean;
begin
Result := not IsToolbarStyle and inherited CaptionShown;
end;
function TTBEditItemViewer.GetCaptionText: String;
begin
Result := TTBEditItem(Item).EditCaption;
end;
procedure TTBEditItemViewer.Paint(const Canvas: TCanvas;
const ClientAreaRect: TRect; IsSelected, IsPushed, UseDisabledShadow: Boolean);
const
FillColors: array[Boolean] of TColor = (clBtnFace, clWindow);
TextColors: array[Boolean] of TColor = (clGrayText, clWindowText);
var
Item: TTBEditItem;
S: String;
R: TRect;
W: Integer;
begin
Item := TTBEditItem(Self.Item);
R := ClientAreaRect;
{ Caption }
if not IsToolbarStyle and (Item.EditCaption <> '') then begin
S := Item.EditCaption;
W := GetTextWidth(Canvas.Handle, S, True) + EditMenuTextMargin * 2;
R.Right := R.Left + W;
if IsSelected then
Canvas.FillRect(R);
Inc(R.Left, EditMenuTextMargin);
DrawItemCaption(Canvas, R, S, UseDisabledShadow, DT_SINGLELINE or
DT_LEFT or DT_VCENTER);
R := ClientAreaRect;
Inc(R.Left, W + EditMenuMidWidth);
end;
{ Border }
if IsSelected and Item.Enabled then
DrawEdge(Canvas.Handle, R, BDR_SUNKENOUTER, BF_RECT);
InflateRect(R, -1, -1);
Canvas.Brush.Color := FillColors[not Item.Enabled];
Canvas.FrameRect(R);
InflateRect(R, -1, -1);
{ Fill }
Canvas.Brush.Color := FillColors[Item.Enabled];
Canvas.FillRect(R);
InflateRect(R, -1, -1);
{ Text }
if Item.Text <> '' then begin
S := Item.Text;
Canvas.Brush.Style := bsClear; { speed optimization }
Canvas.Font.Color := TextColors[Item.Enabled];
DrawTextStr(Canvas.Handle, S, R, DT_SINGLELINE or DT_NOPREFIX);
end;
end;
procedure TTBEditItemViewer.GetCursor(const Pt: TPoint; var ACursor: HCURSOR);
var
R: TRect;
begin
if not Item.Enabled then
Exit;
GetEditRect(R);
OffsetRect(R, -BoundsRect.Left, -BoundsRect.Top);
InflateRect(R, -2, -2);
if PtInRect(R, Pt) then
ACursor := LoadCursor(0, IDC_IBEAM);
end;
function TTBEditItemViewer.EditLoop(const CapHandle: HWND): Boolean;
procedure ControlMessageLoop;
function PointInWindow(const Wnd: HWND; const P: TPoint): Boolean;
var
W: HWND;
begin
Result := False;
W := WindowFromPoint(P);
if W = 0 then Exit;
if W = Wnd then
Result := True
else
if IsChild(Wnd, W) then
Result := True;
end;
function ContinueLoop: Boolean;
begin
Result := (ecsContinueLoop in FEditControlStatus) and
not View.IsModalEnding and FEditControl.Focused and Item.Enabled;
{ Note: View.IsModalEnding is checked since TTBView.CancelMode doesn't
destroy popup windows; it merely hides them and calls EndModal. So if
IsModalEnding returns True we can infer that CancelMode was likely
called. }
end;
var
Msg: TMsg;
IsKeypadDigit: Boolean;
ScanCode: Byte;
V: Integer;
begin
try
while ContinueLoop do begin
{ Examine the next message before popping it out of the queue }
if not PeekMessage(Msg, 0, 0, 0, PM_NOREMOVE) then begin
WaitMessage;
Continue;
end;
case Msg.message of
WM_SYSKEYDOWN: begin
{ Exit immediately if Alt+[key] or F10 are pressed, but not
Alt+Shift, Alt+`, or Alt+[keypad digit] }
if not(Word(Msg.wParam) in [VK_MENU, VK_SHIFT, VK_HANJA]) then begin
IsKeypadDigit := False;
{ This detect digits regardless of whether Num Lock is on: }
ScanCode := Byte(Msg.lParam shr 16);
if ScanCode <> 0 then
for V := VK_NUMPAD0 to VK_NUMPAD9 do
if MapVirtualKey(V, 0) = ScanCode then begin
IsKeypadDigit := True;
Break;
end;
if not IsKeypadDigit then begin
FEditControlStatus := [ecsClose];
Exit;
end;
end;
end;
WM_SYSKEYUP: begin
{ Exit when Alt is released by itself }
if Word(Msg.wParam) = VK_MENU then begin
FEditControlStatus := [ecsClose];
Exit;
end;
end;
WM_LBUTTONDOWN, WM_LBUTTONDBLCLK,
WM_RBUTTONDOWN, WM_RBUTTONDBLCLK,
WM_MBUTTONDOWN, WM_MBUTTONDBLCLK,
WM_NCLBUTTONDOWN, WM_NCLBUTTONDBLCLK,
WM_NCRBUTTONDOWN, WM_NCRBUTTONDBLCLK,
WM_NCMBUTTONDOWN, WM_NCMBUTTONDBLCLK: begin
{ If a mouse click outside the edit control is in the queue,
exit and let the upstream message loop deal with it }
if Msg.hwnd <> FEditControl.Handle then
Exit;
end;
WM_MOUSEMOVE, WM_NCMOUSEMOVE: begin
if GetCapture = CapHandle then begin
if PointInWindow(FEditControl.Handle, Msg.pt) then
ReleaseCapture;
end
else if GetCapture = 0 then begin
if not PointInWindow(FEditControl.Handle, Msg.pt) then
SetCapture(CapHandle);
end;
if GetCapture = CapHandle then
SetCursor(LoadCursor(0, IDC_ARROW));
end;
end;
{ Now pop the message out of the queue }
if not PeekMessage(Msg, 0, Msg.message, Msg.message, PM_REMOVE or PM_NOYIELD) then
Continue;
if ((Msg.message >= WM_MOUSEFIRST) and (Msg.message <= WM_MOUSELAST)) and
(Msg.hwnd = CapHandle) then
{ discard, so that the selection doesn't get changed }
else begin
TranslateMessage(Msg);
DispatchMessage(Msg);
end;
end;
finally
{ Make sure there are no outstanding WM_*CHAR messages }
RemoveMessages(WM_CHAR, WM_DEADCHAR);
RemoveMessages(WM_SYSCHAR, WM_SYSDEADCHAR);
end;
end;
procedure RestoreEditControlWndProc;
{$IFNDEF CLR}
var
OrigWndProc: TWndMethod;
begin
{ NOTE: We can't assign WndProc to WindowProc directly because on Delphi 4
and 5, the compiler generates incorrect code, causing an AV at run-time }
OrigWndProc := TEditAccess(FEditControl).WndProc;
FEditControl.WindowProc := OrigWndProc;
end;
{$ELSE}
begin
IControl(FEditControl).RestoreWndProc;
end;
{$ENDIF}
var
Item: TTBEditItem;
R: TRect;
ActiveWnd, FocusWnd: HWND;
begin
Item := TTBEditItem(Self.Item);
GetEditRect(R);
if IsRectEmpty(R) then begin
Result := False;
Exit;
end;
ActiveWnd := GetActiveWindow;
FocusWnd := GetFocus;
{ Create the edit control }
InflateRect(R, -3, -3);
//View.FreeNotification(Self);
FEditControl := TEdit.Create(nil);
try
FEditControl.Visible := False;
FEditControl.BorderStyle := bsNone;
FEditControl.AutoSize := False;
FEditControl.Font.Assign(View.GetFont);
FEditControl.Text := Item.Text;
FEditControl.CharCase := Item.FCharCase;
FEditControl.MaxLength := Item.FMaxLength;
FEditControl.BoundsRect := R;
FEditControl.WindowProc := EditWndProc;
FEditControl.ParentWindow := View.Window.Handle;
FEditControl.SelectAll;
Item.DoBeginEdit(Self);
FEditControl.Visible := True;
FEditControl.SetFocus;
if GetActiveWindow <> ActiveWnd then
{ don't gray out title bar of old active window }
SendMessage(ActiveWnd, WM_NCACTIVATE, 1, 0)
else
ActiveWnd := 0;
FEditControlStatus := [ecsContinueLoop];
ControlMessageLoop;
finally
{ Restore the original window procedure before destroying the control so
it doesn't see a WM_KILLFOCUS message }
RestoreEditControlWndProc;
FreeAndNil(FEditControl);
end;
{ ensure the area underneath the edit control is repainted immediately }
View.Window.Update;
{ If app is still active, set focus to previous control and restore capture
to CapHandle if another control hasn't taken it }
if GetActiveWindow <> 0 then begin
SetFocus(FocusWnd);
if GetCapture = 0 then
SetCapture(CapHandle);
end;
if ActiveWnd <> 0 then
SendMessage(ActiveWnd, WM_NCACTIVATE, Ord(GetActiveWindow = ActiveWnd), 0);
{ The SetFocus call above can change the Z order of windows. If the parent
window is a popup window, reassert its topmostness. }
if View.Window is TTBPopupWindow then
SetWindowPos(View.Window.Handle, HWND_TOPMOST, 0, 0, 0, 0,
SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
{ Send an MSAA "focus" event now that we're returning to the regular modal loop }
View.NotifyFocusEvent;
Result := ecsClose in FEditControlStatus;
if not Result and (GetCapture = CapHandle) then begin
if ecsAccept in FEditControlStatus then
{ if we are accepting but not closing, Tab must have been pressed }
View.Selected := View.NextSelectable(View.Selected,
GetKeyState(VK_SHIFT) >= 0);
end;
end;
function TTBEditItemViewer.DoExecute: Boolean;
begin
{ Close any delay-close popup menus before entering the edit loop }
View.CancelChildPopups;
Result := False;
if EditLoop(View.GetCaptureWnd) then begin
View.EndModal;
if ecsAccept in FEditControlStatus then
Result := True;
end;
end;
procedure TTBEditItemViewer.MouseBeginEdit;
begin
if Item.Enabled then
Execute(True)
else begin
if (View.ParentView = nil) and not View.IsPopup then
View.EndModal;
end;
end;
procedure TTBEditItemViewer.MouseDown(Shift: TShiftState; X, Y: Integer;
var MouseDownOnMenu: Boolean);
begin
if IsPtInButtonPart(X, Y) then { for TBX... }
MouseBeginEdit
else
inherited;
end;
procedure TTBEditItemViewer.MouseUp(X, Y: Integer; MouseWasDownOnMenu: Boolean);
begin
if IsPtInButtonPart(X, Y) then { for TBX... }
MouseBeginEdit
else
inherited;
end;
function TTBEditItemViewer.UsesSameWidth: Boolean;
begin
Result := False;
end;
function TTBEditItemViewer.GetAccRole: Integer;
const
ROLE_SYSTEM_TEXT = $2a; { from OleAcc.h }
begin
Result := ROLE_SYSTEM_TEXT;
end;
function TTBEditItemViewer.GetAccValue(var Value: WideString): Boolean;
begin
Value := TTBEditItem(Item).Text;
Result := True;
end;
{ TTBToolbarVisibilityItem }
procedure TTBVisibilityToggleItem.Click;
begin
if Assigned(FControl) then
FControl.Visible := not FControl.Visible;
inherited;
end;
procedure TTBVisibilityToggleItem.InitiateAction;
begin
UpdateProps;
end;
procedure TTBVisibilityToggleItem.Notification(AComponent: TComponent;
Operation: TOperation);
begin
inherited;
if (Operation = opRemove) and (AComponent = FControl) then
Control := nil;
end;
procedure TTBVisibilityToggleItem.SetControl(Value: TControl);
begin
if FControl <> Value then begin
FControl := Value;
if Assigned(Value) then begin
Value.FreeNotification(Self);
if (Caption = '') and not(csLoading in ComponentState) then
{$IFNDEF CLR}
Caption := TControlAccess(Value).Caption;
{$ELSE}
Caption := Value.GetText;
{$ENDIF}
end;
UpdateProps;
end;
end;
procedure TTBVisibilityToggleItem.UpdateProps;
begin
if (ComponentState * [csDesigning, csLoading, csDestroying] = []) then
Checked := Assigned(FControl) and FControl.Visible;
end;
end.

View File

@@ -0,0 +1,344 @@
unit TB2Hook;
{
Toolbar2000
Copyright (C) 1998-2006 by Jordan Russell
All rights reserved.
The contents of this file are subject to the "Toolbar2000 License"; you may
not use or distribute this file except in compliance with the
"Toolbar2000 License". A copy of the "Toolbar2000 License" may be found in
TB2k-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/TB2k-LICENSE.txt
Alternatively, the contents of this file may be used under the terms of the
GNU General Public License (the "GPL"), in which case the provisions of the
GPL are applicable instead of those in the "Toolbar2000 License". A copy of
the GPL may be found in GPL-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/GPL-LICENSE.txt
If you wish to allow use of your version of this file only under the terms of
the GPL and not to allow others to use your version of this file under the
"Toolbar2000 License", indicate your decision by deleting the provisions
above and replace them with the notice and other provisions required by the
GPL. If you do not delete the provisions above, a recipient may use your
version of this file under either the "Toolbar2000 License" or the GPL.
$jrsoftware: tb2k/Source/TB2Hook.pas,v 1.17 2006/03/12 23:11:59 jr Exp $
}
interface
uses
Windows;
type
THookProcCode = (hpSendActivate, hpSendActivateApp, hpSendWindowPosChanged,
hpPreDestroy, hpGetMessage);
THookProcCodes = set of THookProcCode;
THookProc = procedure(Code: THookProcCode; Wnd: HWND; WParam: WPARAM; LParam: LPARAM);
procedure InstallHookProc(AUser: TObject; AProc: THookProc; ACodes: THookProcCodes);
procedure UninstallHookProc(AUser: TObject; AProc: THookProc);
implementation
uses
{$IFDEF CLR} System.Runtime.InteropServices, {$ENDIF}
SysUtils, Classes, Messages, TB2Common;
type
THookType = (htCallWndProc, htCBT, htGetMessage);
THookTypes = set of THookType;
THookUserData = class
Prev: THookUserData;
User: TObject;
InstalledHookTypes: THookTypes;
end;
THookProcData = class
Proc: THookProc;
Codes: THookProcCodes;
LastUserData: THookUserData;
end;
THookInfo = class
Handles: array[THookType] of HHOOK;
Counts: array[THookType] of Longint;
end;
threadvar
HookInfo: THookInfo;
HookProcList: TList;
function CallWndProcHook(Code: Integer; WParam: WPARAM; LParam: LPARAM): LRESULT;
{$IFNDEF CLR} stdcall; {$ENDIF}
type
THookProcCodeMsgs = hpSendActivate..hpSendWindowPosChanged;
const
MsgMap: array[THookProcCodeMsgs] of UINT =
(WM_ACTIVATE, WM_ACTIVATEAPP, WM_WINDOWPOSCHANGED);
var
J: THookProcCodeMsgs;
I: Integer;
CWPStruct: {$IFNDEF CLR} PCWPStruct {$ELSE} TCWPStruct {$ENDIF};
begin
if Assigned(HookProcList) and (Code = HC_ACTION) then begin
{$IFNDEF CLR}
CWPStruct := PCWPStruct(LParam);
{$ELSE}
CWPStruct := TCWPStruct(Marshal.PtrToStructure(IntPtr(LParam), TypeOf(TCWPStruct)));
{$ENDIF}
for J := Low(J) to High(J) do
if CWPStruct.Message = MsgMap[J] then begin
for I := 0 to HookProcList.Count-1 do
try
with THookProcData(HookProcList.List[I]) do
if J in Codes then
Proc(J, CWPStruct.hwnd, CWPStruct.WParam, CWPStruct.LParam);
except
end;
Break;
end;
end;
Result := CallNextHookEx(HookInfo.Handles[htCallWndProc], Code, WParam, LParam);
end;
function CBTHook(Code: Integer; WParam: WPARAM; LParam: LPARAM): LRESULT;
{$IFNDEF CLR} stdcall; {$ENDIF}
var
I: Integer;
begin
if Assigned(HookProcList) and (Code = HCBT_DESTROYWND) then
for I := 0 to HookProcList.Count-1 do
try
with THookProcData(HookProcList.List[I]) do
if hpPreDestroy in Codes then
Proc(hpPreDestroy, HWND(WParam), 0, 0);
except
end;
Result := CallNextHookEx(HookInfo.Handles[htCBT], Code, WParam, LParam);
end;
function GetMessageHook(Code: Integer; WParam: WPARAM; LParam: LPARAM): LRESULT;
{$IFNDEF CLR} stdcall; {$ENDIF}
var
I: Integer;
begin
if Assigned(HookProcList) and (Code = HC_ACTION) then
for I := 0 to HookProcList.Count-1 do
try
with THookProcData(HookProcList.List[I]) do
if hpGetMessage in Codes then
Proc(hpGetMessage, 0, WParam, LParam);
except
end;
Result := CallNextHookEx(HookInfo.Handles[htGetMessage], Code, WParam, LParam);
end;
function HookCodesToTypes(Codes: THookProcCodes): THookTypes;
const
HookCodeToType: array[THookProcCode] of THookType =
(htCallWndProc, htCallWndProc, htCallWndProc, htCBT, htGetMessage);
var
J: THookProcCode;
begin
Result := [];
for J := Low(J) to High(J) do
if J in Codes then
Include(Result, HookCodeToType[J]);
end;
var
HookProcs: array[THookType] of TFNHookProc;
const
HookIDs: array[THookType] of Integer =
(WH_CALLWNDPROC, WH_CBT, WH_GETMESSAGE);
procedure InstallHooks(ATypes: THookTypes; var InstalledTypes: THookTypes);
var
T: THookType;
begin
if HookInfo = nil then
HookInfo := THookInfo.Create;
{ Don't increment reference counts for hook types that were already
installed previously }
ATypes := ATypes - InstalledTypes;
{ Increment reference counts first. This should never raise an exception. }
for T := Low(T) to High(T) do
if T in ATypes then begin
Inc(HookInfo.Counts[T]);
Include(InstalledTypes, T);
end;
{ Then install the hooks }
for T := Low(T) to High(T) do
if T in InstalledTypes then begin
if HookInfo.Handles[T] = 0 then begin
{ On Windows NT platforms, SetWindowsHookExW is used to work around an
apparent bug in Windows NT/2000/XP: if an 'ANSI' WH_GETMESSAGE hook
is called *before* a 'wide' WH_GETMESSAGE hook, then WM_*CHAR
messages passed to the 'wide' hook use ANSI character codes.
This is needed for compatibility with the combination of Tnt Unicode
Controls and Keyman. See "Widechar's and tb2k" thread on the
newsgroup from 2003-09-23 for more information. }
if Win32Platform = VER_PLATFORM_WIN32_NT then
HookInfo.Handles[T] := SetWindowsHookExW(HookIDs[T], HookProcs[T],
0, GetCurrentThreadId)
else
HookInfo.Handles[T] := SetWindowsHookEx(HookIDs[T], HookProcs[T],
0, GetCurrentThreadId);
{ .NET note: A reference to the delegate passed to SetWindowsHookEx
must exist for as long as the hook is installed, otherwise the GC
will collect it and the app will crash. Hence we always pass a
global variable (HookProcs[]) to SetWindowsHookEx. }
end;
end;
end;
procedure UninstallHooks(const ATypes: THookTypes; const Force: Boolean);
var
T: THookType;
begin
{ HookInfo can be nil if InstallHooks was never called previously (e.g. when
we're being called with Force=True), or if it was called but failed with
an exception }
if HookInfo = nil then
Exit;
{ Decrement reference counts first. This should never raise an exception. }
if not Force then
for T := Low(T) to High(T) do
if T in ATypes then
Dec(HookInfo.Counts[T]);
{ Then uninstall the hooks }
for T := Low(T) to High(T) do
if T in ATypes then begin
if (Force or (HookInfo.Counts[T] = 0)) and (HookInfo.Handles[T] <> 0) then begin
UnhookWindowsHookEx(HookInfo.Handles[T]);
HookInfo.Handles[T] := 0;
end;
end;
{ If all hooks are uninstalled, free HookInfo }
for T := Low(T) to High(T) do
if (HookInfo.Counts[T] <> 0) or (HookInfo.Handles[T] <> 0) then
Exit;
FreeAndNil(HookInfo);
end;
procedure InstallHookProc(AUser: TObject; AProc: THookProc; ACodes: THookProcCodes);
var
Found: Boolean;
I: Integer;
UserData: THookUserData;
ProcData: THookProcData;
label 1;
begin
if HookProcList = nil then
HookProcList := TList.Create;
Found := False;
UserData := nil; { avoid warning }
for I := 0 to HookProcList.Count-1 do begin
ProcData := THookProcData(HookProcList[I]);
if @ProcData.Proc = @AProc then begin
UserData := ProcData.LastUserData;
while Assigned(UserData) do begin
if UserData.User = AUser then begin
{ InstallHookProc was already called for AUser/AProc. Go ahead and
call InstallHooks again just in case the hooks weren't successfully
installed last time. }
goto 1;
end;
UserData := UserData.Prev;
end;
UserData := THookUserData.Create;
UserData.Prev := ProcData.LastUserData;
UserData.User := AUser;
UserData.InstalledHookTypes := [];
ProcData.LastUserData := UserData;
Found := True;
Break;
end;
end;
if not Found then begin
UserData := THookUserData.Create;
try
UserData.Prev := nil;
UserData.User := AUser;
UserData.InstalledHookTypes := [];
HookProcList.Expand;
ProcData := THookProcData.Create;
except
UserData.Free;
raise;
end;
ProcData.Proc := AProc;
ProcData.Codes := ACodes;
ProcData.LastUserData := UserData;
HookProcList.Add(ProcData);
end;
1:InstallHooks(HookCodesToTypes(ACodes), UserData.InstalledHookTypes);
end;
procedure UninstallHookProc(AUser: TObject; AProc: THookProc);
var
I: Integer;
ProcData: THookProcData;
NextUserData, UserData: THookUserData;
T: THookTypes;
begin
if HookProcList = nil then Exit;
for I := 0 to HookProcList.Count-1 do begin
ProcData := THookProcData(HookProcList[I]);
if @ProcData.Proc = @AProc then begin
{ Locate the UserData record }
NextUserData := nil;
UserData := ProcData.LastUserData;
while Assigned(UserData) and (UserData.User <> AUser) do begin
NextUserData := UserData;
UserData := UserData.Prev;
end;
if UserData = nil then
Exit;
{ Remove record from linked list }
if NextUserData = nil then begin
{ It's the last item in the list }
if UserData.Prev = nil then begin
{ It's the only item in the list, so destroy the ProcData record }
HookProcList.Delete(I);
ProcData.Free;
end
else
ProcData.LastUserData := UserData.Prev;
end
else
NextUserData.Prev := UserData.Prev;
T := UserData.InstalledHookTypes;
UserData.Free;
UninstallHooks(T, False);
Break;
end;
end;
if HookProcList.Count = 0 then
FreeAndNil(HookProcList);
end;
initialization
{ Work around Delphi.NET 2005 bug: declaring a constant array of procedural
types crashes the compiler (see QC #10381; 2006 fixes it). So we instead
declare HookProcs as a variable, and initialize the elements here. }
HookProcs[htCallWndProc] := CallWndProcHook;
HookProcs[htCBT] := CBTHook;
HookProcs[htGetMessage] := GetMessageHook;
finalization
UninstallHooks([Low(THookType)..High(THookType)], True);
end.

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,714 @@
unit TB2MDI;
{
Toolbar2000
Copyright (C) 1998-2008 by Jordan Russell
All rights reserved.
The contents of this file are subject to the "Toolbar2000 License"; you may
not use or distribute this file except in compliance with the
"Toolbar2000 License". A copy of the "Toolbar2000 License" may be found in
TB2k-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/TB2k-LICENSE.txt
Alternatively, the contents of this file may be used under the terms of the
GNU General Public License (the "GPL"), in which case the provisions of the
GPL are applicable instead of those in the "Toolbar2000 License". A copy of
the GPL may be found in GPL-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/GPL-LICENSE.txt
If you wish to allow use of your version of this file only under the terms of
the GPL and not to allow others to use your version of this file under the
"Toolbar2000 License", indicate your decision by deleting the provisions
above and replace them with the notice and other provisions required by the
GPL. If you do not delete the provisions above, a recipient may use your
version of this file under either the "Toolbar2000 License" or the GPL.
$jrsoftware: tb2k/Source/TB2MDI.pas,v 1.15 2008/04/23 21:54:37 jr Exp $
}
interface
{$I TB2Ver.inc}
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Menus, TB2Item, TB2Toolbar;
type
TTBMDIButtonsItem = class;
TTBMDISystemMenuItem = class;
TTBMDIHandler = class(TComponent)
private
FButtonsItem: TTBMDIButtonsItem;
FSystemMenuItem: TTBMDISystemMenuItem;
FToolbar: TTBCustomToolbar;
procedure SetToolbar(Value: TTBCustomToolbar);
protected
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
published
property Toolbar: TTBCustomToolbar read FToolbar write SetToolbar;
end;
TTBMDIWindowItem = class(TTBCustomItem)
private
FForm: TForm;
FOnUpdate: TNotifyEvent;
FWindowMenu: TMenuItem;
procedure ItemClick(Sender: TObject);
procedure SetForm(AForm: TForm);
protected
procedure EnabledChanged; override;
procedure GetChildren(Proc: TGetChildProc; Root: TComponent); override;
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
public
constructor Create(AOwner: TComponent); override;
procedure InitiateAction; override;
published
property Enabled;
property OnUpdate: TNotifyEvent read FOnUpdate write FOnUpdate;
end;
TTBMDISystemMenuItem = class(TTBCustomItem)
private
FImageList: TImageList;
procedure CommandClick(Sender: TObject);
protected
function GetItemViewerClass(AView: TTBView): TTBItemViewerClass; override;
public
constructor Create(AOwner: TComponent); override;
procedure Click; override;
end;
TTBMDISystemMenuItemViewer = class(TTBItemViewer)
protected
procedure CalcSize(const Canvas: TCanvas; var AWidth, AHeight: Integer);
override;
procedure Paint(const Canvas: TCanvas; const ClientAreaRect: TRect;
IsSelected, IsPushed, UseDisabledShadow: Boolean); override;
end;
TTBMDIButtonType = (tbmbMinimize, tbmbRestore, tbmbClose);
TTBMDIButtonItem = class(TTBCustomItem)
private
FButtonType: TTBMDIButtonType;
protected
function GetItemViewerClass(AView: TTBView): TTBItemViewerClass; override;
public
constructor Create(AOwner: TComponent); override;
end;
TTBMDIButtonItemViewer = class(TTBItemViewer)
protected
procedure CalcSize(const Canvas: TCanvas; var AWidth, AHeight: Integer);
override;
procedure Paint(const Canvas: TCanvas; const ClientAreaRect: TRect;
IsSelected, IsPushed, UseDisabledShadow: Boolean); override;
end;
TTBMDISepItem = class(TTBSeparatorItem)
protected
function GetItemViewerClass(AView: TTBView): TTBItemViewerClass; override;
end;
TTBMDISepItemViewer = class(TTBSeparatorItemViewer)
protected
procedure CalcSize(const Canvas: TCanvas; var AWidth, AHeight: Integer);
override;
end;
TTBMDIButtonsItem = class(TTBCustomItem)
private
FMinimizeItem: TTBMDIButtonItem;
FRestoreItem: TTBMDIButtonItem;
FCloseItem: TTBMDIButtonItem;
FSep1, FSep2: TTBMDISepItem;
procedure InvalidateSystemMenuItem;
procedure ItemClick(Sender: TObject);
procedure UpdateState(W: HWND; Maximized: Boolean);
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;
implementation
uses
{$IFDEF CLR} System.Text, System.Runtime.InteropServices, WinUtils, {$ENDIF}
TB2Common, TB2Consts, CommCtrl;
type
TTBCustomToolbarAccess = class(TTBCustomToolbar);
function GetMenuItemStr(const AMenu: HMENU; const APos: Integer): String;
{$IFNDEF CLR}
var
Buf: array[0..1023] of Char;
begin
if GetMenuString(AMenu, APos, Buf, SizeOf(Buf) div SizeOf(Buf[0]), MF_BYPOSITION) > 0 then
Result := Buf
else
Result := '';
end;
{$ELSE}
var
Buf: StringBuilder;
begin
Buf := StringBuilder.Create(1024);
if GetMenuString(AMenu, APos, Buf, Buf.Capacity, MF_BYPOSITION) > 0 then
Result := Buf.ToString
else
Result := '';
end;
{$ENDIF}
{ TTBMDIHandler }
constructor TTBMDIHandler.Create(AOwner: TComponent);
begin
inherited;
FSystemMenuItem := TTBMDISystemMenuItem.Create(Self);
FButtonsItem := TTBMDIButtonsItem.Create(Self);
end;
destructor TTBMDIHandler.Destroy;
begin
Toolbar := nil;
inherited;
end;
procedure TTBMDIHandler.Notification(AComponent: TComponent; Operation: TOperation);
begin
inherited;
if (AComponent = FToolbar) and (Operation = opRemove) then
Toolbar := nil;
end;
procedure TTBMDIHandler.SetToolbar(Value: TTBCustomToolbar);
var
Rebuild: Boolean;
begin
if FToolbar <> Value then begin
if Assigned(FToolbar) then begin
Rebuild := False;
if TTBCustomToolbarAccess(FToolbar).FMDIButtonsItem = FButtonsItem then begin
TTBCustomToolbarAccess(FToolbar).FMDIButtonsItem := nil;
Rebuild := True;
end;
if TTBCustomToolbarAccess(FToolbar).FMDISystemMenuItem = FSystemMenuItem then begin
TTBCustomToolbarAccess(FToolbar).FMDISystemMenuItem := nil;
Rebuild := True;
end;
if Rebuild and Assigned(FToolbar.View) then
FToolbar.View.RecreateAllViewers;
end;
FToolbar := Value;
if Assigned(Value) then begin
Value.FreeNotification(Self);
TTBCustomToolbarAccess(Value).FMDIButtonsItem := FButtonsItem;
TTBCustomToolbarAccess(Value).FMDISystemMenuItem := FSystemMenuItem;
Value.View.RecreateAllViewers;
end;
end;
end;
{ TTBMDISystemMenuItem }
constructor TTBMDISystemMenuItem.Create(AOwner: TComponent);
begin
inherited;
ItemStyle := ItemStyle + [tbisSubMenu, tbisDontSelectFirst] -
[tbisRedrawOnSelChange, tbisRedrawOnMouseOverChange];
Caption := '&-';
{$R TB2MDI.res}
FImageList := TImageList.Create(Self);
FImageList.Handle := ImageList_LoadBitmap(HInstance, 'TB2SYSMENUIMAGES',
16, 0, clSilver);
SubMenuImages := FImageList;
end;
function TTBMDISystemMenuItem.GetItemViewerClass(AView: TTBView): TTBItemViewerClass;
begin
Result := TTBMDISystemMenuItemViewer;
end;
procedure TTBMDISystemMenuItem.Click;
var
I: Integer;
Form: TForm;
M: HMENU;
State: UINT;
ID: Word;
Item: TTBCustomItem;
begin
inherited;
Clear;
if Application.MainForm = nil then
Exit;
Form := Application.MainForm.ActiveMDIChild;
if Form = nil then
Exit;
M := GetSystemMenu(Form.Handle, False);
for I := 0 to GetMenuItemCount(M)-1 do begin
State := GetMenuState(M, I, MF_BYPOSITION);
if State and MF_SEPARATOR <> 0 then
Add(TTBSeparatorItem.Create(Self))
else begin
Item := TTBCustomItem.Create(Self);
if State and MF_GRAYED <> 0 then
Item.Enabled := False;
Item.Caption := GetMenuItemStr(M, I);
ID := Word(GetMenuItemID(M, I));
Item.Tag := {$IFDEF CLR}TTag{$ENDIF}(ID);
case ID and $FFF0 of
SC_RESTORE: Item.ImageIndex := 3;
SC_MINIMIZE: Item.ImageIndex := 2;
SC_MAXIMIZE: Item.ImageIndex := 1;
SC_CLOSE: begin
Item.ImageIndex := 0;
Item.Options := Item.Options + [tboDefault];
end;
end;
Item.OnClick := CommandClick;
Add(Item);
end;
end;
end;
procedure TTBMDISystemMenuItem.CommandClick(Sender: TObject);
var
Form: TForm;
begin
if Assigned(Application.MainForm) then begin
Form := Application.MainForm.ActiveMDIChild;
if Assigned(Form) then
SendMessage(Form.Handle, WM_SYSCOMMAND, Word(TTBCustomItem(Sender).Tag),
LPARAM(GetMessagePos()));
end;
end;
{ TTBMDISystemMenuItemViewer }
procedure TTBMDISystemMenuItemViewer.CalcSize(const Canvas: TCanvas;
var AWidth, AHeight: Integer);
begin
AWidth := GetSystemMetrics(SM_CXSMICON) + 2;
AHeight := GetSystemMetrics(SM_CYSMICON) + 2;
end;
procedure TTBMDISystemMenuItemViewer.Paint(const Canvas: TCanvas;
const ClientAreaRect: TRect; IsSelected, IsPushed, UseDisabledShadow: Boolean);
function GetIconHandle: HICON;
var
Form: TForm;
begin
Result := 0;
if Assigned(Application.MainForm) then begin
Form := Application.MainForm.ActiveMDIChild;
if Assigned(Form) then
Result := Form.Icon.Handle;
end;
if Result = 0 then
Result := Application.Icon.Handle;
if Result = 0 then
Result := LoadIcon(0, IDI_APPLICATION);
end;
var
R: TRect;
TempIcon: HICON;
begin
R := ClientAreaRect;
InflateRect(R, -1, -1);
TempIcon := CopyImage(GetIconHandle, IMAGE_ICON, R.Right - R.Left,
R.Bottom - R.Top, LR_COPYFROMRESOURCE);
DrawIconEx(Canvas.Handle, R.Left, R.Top, TempIcon, 0, 0, 0, 0, DI_NORMAL);
DestroyIcon(TempIcon);
end;
{ TTBMDIButtonItem }
constructor TTBMDIButtonItem.Create(AOwner: TComponent);
begin
inherited;
ItemStyle := ItemStyle - [tbisSelectable, tbisRedrawOnSelChange] +
[tbisRightAlign];
end;
function TTBMDIButtonItem.GetItemViewerClass(AView: TTBView): TTBItemViewerClass;
begin
Result := TTBMDIButtonItemViewer;
end;
{ TTBMDIButtonItemViewer }
procedure TTBMDIButtonItemViewer.CalcSize(const Canvas: TCanvas;
var AWidth, AHeight: Integer);
begin
if NewStyleControls then begin
AWidth := GetSystemMetrics(SM_CXMENUSIZE) - 2;
if AWidth < 0 then AWidth := 0;
AHeight := GetSystemMetrics(SM_CYMENUSIZE) - 4;
if AHeight < 0 then AHeight := 0;
end
else begin
AWidth := 16;
AHeight := 14;
end;
end;
procedure TTBMDIButtonItemViewer.Paint(const Canvas: TCanvas;
const ClientAreaRect: TRect; IsSelected, IsPushed, UseDisabledShadow: Boolean);
const
ButtonTypeFlags: array[TTBMDIButtonType] of UINT = (DFCS_CAPTIONMIN,
DFCS_CAPTIONRESTORE, DFCS_CAPTIONCLOSE);
PushedFlags: array[Boolean] of UINT = (0, DFCS_PUSHED);
EnabledFlags: array[Boolean] of UINT = (DFCS_INACTIVE, 0);
begin
DrawFrameControl(Canvas.Handle, ClientAreaRect, DFC_CAPTION,
ButtonTypeFlags[TTBMDIButtonItem(Item).FButtonType] or
PushedFlags[IsPushed] or EnabledFlags[Item.Enabled]);
end;
{ TTBMDISepItem }
function TTBMDISepItem.GetItemViewerClass(AView: TTBView): TTBItemViewerClass;
begin
Result := TTBMDISepItemViewer;
end;
{ TTBMDISepItemViewer }
procedure TTBMDISepItemViewer.CalcSize(const Canvas: TCanvas;
var AWidth, AHeight: Integer);
begin
if View.Orientation <> tbvoVertical then begin
AWidth := 2;
AHeight := 6;
end
else begin
AWidth := 6;
AHeight := 2;
end;
end;
{ TTBMDIButtonsItem }
var
CBTHookHandle: HHOOK;
MDIButtonsItems: TList;
function WindowIsMDIChild(W: HWND): Boolean;
var
I: Integer;
MainForm, ChildForm: TForm;
begin
MainForm := Application.MainForm;
if Assigned(MainForm) then
for I := 0 to MainForm.MDIChildCount-1 do begin
ChildForm := MainForm.MDIChildren[I];
if ChildForm.HandleAllocated and (ChildForm.Handle = W) then begin
Result := True;
Exit;
end;
end;
Result := False;
end;
function CBTHook(Code: Integer; WParam: WPARAM; LParam: LPARAM): LRESULT;
{$IFNDEF CLR} stdcall; {$ENDIF}
var
Maximizing: Boolean;
WindowPlacement: TWindowPlacement;
I: Integer;
begin
case Code of
HCBT_SETFOCUS: begin
if WindowIsMDIChild(HWND(WParam)) and Assigned(MDIButtonsItems) then begin
for I := 0 to MDIButtonsItems.Count-1 do
TTBMDIButtonsItem(MDIButtonsItems[I]).InvalidateSystemMenuItem;
end;
end;
HCBT_MINMAX: begin
if WindowIsMDIChild(HWND(WParam)) and Assigned(MDIButtonsItems) and
(Word(LParam) in [SW_SHOWNORMAL, SW_SHOWMAXIMIZED, SW_MINIMIZE, SW_RESTORE]) then begin
Maximizing := (Word(LParam) = SW_MAXIMIZE);
if (Word(LParam) = SW_RESTORE) and not IsZoomed(HWND(WParam)) then begin
{$IFNDEF CLR}
WindowPlacement.length := SizeOf(WindowPlacement);
{$ELSE}
WindowPlacement.length := Marshal.SizeOf(TypeOf(TWindowPlacement));
{$ENDIF}
GetWindowPlacement(HWND(WParam), {$IFNDEF CLR}@{$ENDIF} WindowPlacement);
Maximizing := (WindowPlacement.flags and WPF_RESTORETOMAXIMIZED <> 0);
end;
for I := 0 to MDIButtonsItems.Count-1 do
TTBMDIButtonsItem(MDIButtonsItems[I]).UpdateState(HWND(WParam),
Maximizing);
end;
end;
HCBT_DESTROYWND: begin
if WindowIsMDIChild(HWND(WParam)) and Assigned(MDIButtonsItems) then begin
for I := 0 to MDIButtonsItems.Count-1 do
TTBMDIButtonsItem(MDIButtonsItems[I]).UpdateState(HWND(WParam),
False);
end;
end;
end;
Result := CallNextHookEx(CBTHookHandle, Code, WParam, LParam);
end;
const
{ Note: On .NET, we must keep a reference to the delegate alive for as long
as the hook is installed, otherwise the GC will collect it and the app
will crash. Storing the delegate in a typed constant will do the trick. }
CBTHookDelegate: TFNHookProc = CBTHook;
constructor TTBMDIButtonsItem.Create(AOwner: TComponent);
function CreateItem(const AType: TTBMDIButtonType): TTBMDIButtonItem;
begin
Result := TTBMDIButtonItem.Create(Self);
Result.FButtonType := AType;
Result.OnClick := ItemClick;
end;
begin
inherited;
ItemStyle := ItemStyle + [tbisEmbeddedGroup];
FMinimizeItem := CreateItem(tbmbMinimize);
FRestoreItem := CreateItem(tbmbRestore);
FCloseItem := CreateItem(tbmbClose);
FSep1 := TTBMDISepItem.Create(Self);
FSep1.Blank := True;
FSep1.ItemStyle := FSep1.ItemStyle + [tbisRightAlign, tbisNoLineBreak];
FSep2 := TTBMDISepItem.Create(Self);
FSep2.Blank := True;
FSep2.ItemStyle := FSep2.ItemStyle + [tbisRightAlign, tbisNoLineBreak];
Add(FSep1);
Add(FMinimizeItem);
Add(FRestoreItem);
Add(FSep2);
Add(FCloseItem);
UpdateState(0, False);
if not(csDesigning in ComponentState) then begin
AddToList(MDIButtonsItems, Self);
if CBTHookHandle = 0 then
CBTHookHandle := SetWindowsHookEx(WH_CBT, CBTHookDelegate, 0, GetCurrentThreadId);
end;
end;
destructor TTBMDIButtonsItem.Destroy;
begin
RemoveFromList(MDIButtonsItems, Self);
if (MDIButtonsItems = nil) and (CBTHookHandle <> 0) then begin
UnhookWindowsHookEx(CBTHookHandle);
CBTHookHandle := 0;
end;
inherited;
end;
procedure TTBMDIButtonsItem.UpdateState(W: HWND; Maximized: Boolean);
var
HasMaxChild, VisibilityChanged: Boolean;
procedure UpdateVisibleEnabled(const Item: TTBCustomItem;
const AEnabled: Boolean);
begin
if (Item.Visible <> HasMaxChild) or (Item.Enabled <> AEnabled) then begin
Item.Visible := HasMaxChild;
Item.Enabled := AEnabled;
VisibilityChanged := True;
end;
end;
var
MainForm, ActiveMDIChild, ChildForm: TForm;
I: Integer;
begin
HasMaxChild := False;
ActiveMDIChild := nil;
if not(csDesigning in ComponentState) then begin
MainForm := Application.MainForm;
if Assigned(MainForm) then begin
for I := 0 to MainForm.MDIChildCount-1 do begin
ChildForm := MainForm.MDIChildren[I];
if ChildForm.HandleAllocated and
(((ChildForm.Handle = W) and Maximized) or
((ChildForm.Handle <> W) and IsZoomed(ChildForm.Handle))) then begin
HasMaxChild := True;
Break;
end;
end;
ActiveMDIChild := MainForm.ActiveMDIChild;
end;
end;
VisibilityChanged := False;
UpdateVisibleEnabled(TTBMDIHandler(Owner).FSystemMenuItem, True);
UpdateVisibleEnabled(FSep1, True);
UpdateVisibleEnabled(FMinimizeItem, (ActiveMDIChild = nil) or
(GetWindowLong(ActiveMDIChild.Handle, GWL_STYLE) and WS_MINIMIZEBOX <> 0));
UpdateVisibleEnabled(FRestoreItem, True);
UpdateVisibleEnabled(FSep2, True);
UpdateVisibleEnabled(FCloseItem, True);
if VisibilityChanged and Assigned((Owner as TTBMDIHandler).FToolbar) then begin
TTBMDIHandler(Owner).FToolbar.View.InvalidatePositions;
TTBMDIHandler(Owner).FToolbar.View.TryValidatePositions;
end;
end;
procedure TTBMDIButtonsItem.ItemClick(Sender: TObject);
var
MainForm, ChildForm: TForm;
Cmd: WPARAM;
begin
MainForm := Application.MainForm;
if Assigned(MainForm) then begin
ChildForm := MainForm.ActiveMDIChild;
if Assigned(ChildForm) then begin
{ Send WM_SYSCOMMAND messages so that we get sounds }
if Sender = FRestoreItem then
Cmd := SC_RESTORE
else if Sender = FCloseItem then
Cmd := SC_CLOSE
else
Cmd := SC_MINIMIZE;
SendMessage(ChildForm.Handle, WM_SYSCOMMAND, Cmd, LPARAM(GetMessagePos()));
end;
end;
end;
procedure TTBMDIButtonsItem.InvalidateSystemMenuItem;
var
View: TTBView;
begin
if Assigned((Owner as TTBMDIHandler).FToolbar) then begin
View := TTBMDIHandler(Owner).FToolbar.View;
View.Invalidate(View.Find(TTBMDIHandler(Owner).FSystemMenuItem));
end;
end;
{ TTBMDIWindowItem }
constructor TTBMDIWindowItem.Create(AOwner: TComponent);
var
Form: TForm;
begin
inherited;
ItemStyle := ItemStyle + [tbisEmbeddedGroup];
Caption := STBMDIWindowItemDefCaption;
FWindowMenu := TMenuItem.Create(Self);
if not(csDesigning in ComponentState) then begin
{ Need to set WindowMenu before MDI children are created. Otherwise the
list incorrectly shows the first 9 child windows, even if window 10+ is
active. }
Form := Application.MainForm;
if (Form = nil) and (Screen.FormCount > 0) then
Form := Screen.Forms[0];
SetForm(Form);
end;
end;
procedure TTBMDIWindowItem.GetChildren(Proc: TGetChildProc; Root: TComponent);
begin
end;
procedure TTBMDIWindowItem.Notification(AComponent: TComponent; Operation: TOperation);
begin
inherited;
if (Operation = opRemove) and (AComponent = FForm) then
SetForm(nil);
end;
procedure TTBMDIWindowItem.SetForm(AForm: TForm);
begin
if FForm <> AForm then begin
if Assigned(FForm) and (FForm.WindowMenu = FWindowMenu) then
FForm.WindowMenu := nil;
FForm := AForm;
if Assigned(FForm) then
FForm.FreeNotification(Self);
end;
if Assigned(FForm) then
FForm.WindowMenu := FWindowMenu;
end;
procedure TTBMDIWindowItem.EnabledChanged;
var
I: Integer;
begin
inherited;
for I := 0 to Count-1 do
Items[I].Enabled := Enabled;
end;
procedure TTBMDIWindowItem.InitiateAction;
var
MainForm: TForm;
I: Integer;
M: HMENU;
Item: TTBCustomItem;
ItemCount: Integer;
begin
inherited;
if csDesigning in ComponentState then
Exit;
MainForm := Application.MainForm;
if Assigned(MainForm) then
SetForm(MainForm);
if FForm = nil then
Exit;
if FForm.ClientHandle <> 0 then
{ This is needed, otherwise windows selected on the More Windows dialog
don't move back into the list }
SendMessage(FForm.ClientHandle, WM_MDIREFRESHMENU, 0, 0);
M := FWindowMenu.Handle;
ItemCount := GetMenuItemCount(M) - 1;
if ItemCount < 0 then
ItemCount := 0;
while Count < ItemCount do begin
Item := TTBCustomItem.Create(Self);
Item.Enabled := Enabled;
Item.OnClick := ItemClick;
Add(Item);
end;
while Count > ItemCount do
Items[Count-1].Free;
for I := 0 to ItemCount-1 do begin
Item := Items[I];
Item.Tag := {$IFDEF CLR}TTag{$ENDIF}(Word(GetMenuItemID(M, I+1)));
Item.Caption := GetMenuItemStr(M, I+1);
Item.Checked := GetMenuState(M, I+1, MF_BYPOSITION) and MF_CHECKED <> 0;
end;
if Assigned(FOnUpdate) then
FOnUpdate(Self);
end;
procedure TTBMDIWindowItem.ItemClick(Sender: TObject);
var
Form: TForm;
begin
Form := Application.MainForm;
if Assigned(Form) then
PostMessage(Form.Handle, WM_COMMAND, Word(TTBCustomItem(Sender).Tag), 0);
end;
end.

View File

@@ -0,0 +1,417 @@
unit TB2MRU;
{
Toolbar2000
Copyright (C) 1998-2006 by Jordan Russell
All rights reserved.
The contents of this file are subject to the "Toolbar2000 License"; you may
not use or distribute this file except in compliance with the
"Toolbar2000 License". A copy of the "Toolbar2000 License" may be found in
TB2k-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/TB2k-LICENSE.txt
Alternatively, the contents of this file may be used under the terms of the
GNU General Public License (the "GPL"), in which case the provisions of the
GPL are applicable instead of those in the "Toolbar2000 License". A copy of
the GPL may be found in GPL-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/GPL-LICENSE.txt
If you wish to allow use of your version of this file only under the terms of
the GPL and not to allow others to use your version of this file under the
"Toolbar2000 License", indicate your decision by deleting the provisions
above and replace them with the notice and other provisions required by the
GPL. If you do not delete the provisions above, a recipient may use your
version of this file under either the "Toolbar2000 License" or the GPL.
$jrsoftware: tb2k/Source/TB2MRU.pas,v 1.24 2006/03/12 23:11:59 jr Exp $
}
interface
{$I TB2Ver.inc}
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
TB2Item, IniFiles, Registry;
type
TTBMRUListClickEvent = procedure(Sender: TObject; const Filename: String) of object;
TTBMRUList = class(TComponent)
private
FAddFullPath: Boolean;
FContainer: TTBCustomItem;
FHidePathExtension: Boolean;
FList: TStrings;
FMaxItems: Integer;
FOnChange: TNotifyEvent;
FOnClick: TTBMRUListClickEvent;
FPrefix: String;
procedure ClickHandler(Sender: TObject);
procedure SetHidePathExtension(Value: Boolean);
procedure SetList(Value: TStrings);
procedure SetMaxItems(Value: Integer);
protected
property Container: TTBCustomItem read FContainer;
function GetItemClass: TTBCustomItemClass; virtual;
procedure SetItemCaptions; virtual;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Add(Filename: String);
procedure Remove(const Filename: String);
procedure LoadFromIni(Ini: TCustomIniFile; const Section: String);
procedure LoadFromRegIni(Ini: TRegIniFile; const Section: String);
procedure SaveToIni(Ini: TCustomIniFile; const Section: String);
procedure SaveToRegIni(Ini: TRegIniFile; const Section: String);
published
{ MaxItems must be published before Items }
property AddFullPath: Boolean read FAddFullPath write FAddFullPath default True;
property HidePathExtension: Boolean read FHidePathExtension write SetHidePathExtension default True;
property MaxItems: Integer read FMaxItems write SetMaxItems default 4;
property Items: TStrings read FList write SetList;
property OnClick: TTBMRUListClickEvent read FOnClick write FOnClick;
property OnChange: TNotifyEvent read FOnChange write FOnChange;
property Prefix: String read FPrefix write FPrefix;
end;
TTBMRUListItem = class(TTBCustomItem)
private
FMRUList: TTBMRUList;
procedure SetMRUList(Value: TTBMRUList);
protected
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
public
constructor Create(AOwner: TComponent); override;
published
property MRUList: TTBMRUList read FMRUList write SetMRUList;
//property Caption;
//property LinkSubitems;
end;
implementation
uses
{$IFDEF CLR} System.Text, System.IO, {$ENDIF}
TB2Common, TB2Consts, CommDlg;
procedure ChangeFileNameToTitle(var S: String);
{$IFNDEF CLR}
var
Buf: array[0..MAX_PATH-1] of Char;
begin
if GetFileTitle(PChar(S), Buf, SizeOf(Buf) div SizeOf(Buf[0])) = 0 then
S := Buf;
end;
{$ELSE}
var
Buf: StringBuilder;
begin
Buf := StringBuilder.Create(MAX_PATH);
if GetFileTitle(S, Buf, Buf.Capacity) = 0 then
S := Buf.ToString;
end;
{$ENDIF}
{ TTBMRUListStrings }
type
TTBMRUListStrings = class(TStrings)
private
FInternalList: TStrings;
FMRUList: TTBMRUList;
procedure Changed;
public
constructor Create;
destructor Destroy; override;
procedure Clear; override;
procedure Delete(Index: Integer); override;
function Get(Index: Integer): String; override;
function GetCount: Integer; override;
function IndexOf(const S: String): Integer; override;
procedure Insert(Index: Integer; const S: String); override;
procedure Move(CurIndex, NewIndex: Integer); override;
procedure Put(Index: Integer; const S: String); override;
end;
constructor TTBMRUListStrings.Create;
begin
inherited;
FInternalList := TStringList.Create;
end;
destructor TTBMRUListStrings.Destroy;
begin
inherited;
FInternalList.Free;
end;
procedure TTBMRUListStrings.Changed;
begin
if Assigned(FMRUList.FOnChange) and
not(csLoading in FMRUList.ComponentState) then
FMRUList.FOnChange(FMRUList);
end;
procedure TTBMRUListStrings.Clear;
var
I: Integer;
begin
for I := FInternalList.Count-1 downto 0 do
Delete(I);
end;
procedure TTBMRUListStrings.Delete(Index: Integer);
begin
FMRUList.FContainer[Index].Free;
FInternalList.Delete(Index);
FMRUList.SetItemCaptions;
Changed;
end;
function TTBMRUListStrings.Get(Index: Integer): String;
begin
Result := FInternalList[Index];
end;
function TTBMRUListStrings.GetCount: Integer;
begin
Result := FInternalList.Count;
end;
function TTBMRUListStrings.IndexOf(const S: String): Integer;
begin
{ This is identical to TStrings.IndexOf except we use SameFileName. }
for Result := 0 to GetCount - 1 do
{$IFDEF JR_D6}
if SameFileName(Get(Result), S) then Exit;
{$ELSE}
if AnsiCompareFileName(Get(Result), S) = 0 then Exit;
{$ENDIF}
Result := -1;
end;
procedure TTBMRUListStrings.Insert(Index: Integer; const S: String);
var
Item: TTBCustomItem;
begin
Item := FMRUList.GetItemClass.Create(FMRUList.FContainer);
Item.OnClick := FMRUList.ClickHandler;
FMRUList.FContainer.Insert(Index, Item);
FInternalList.Insert(Index, S);
FMRUList.SetItemCaptions;
Changed;
end;
procedure TTBMRUListStrings.Move(CurIndex, NewIndex: Integer);
begin
FInternalList.Move(CurIndex, NewIndex);
FMRUList.FContainer.Move(CurIndex, NewIndex);
FMRUList.SetItemCaptions;
Changed;
end;
procedure TTBMRUListStrings.Put(Index: Integer; const S: String);
begin
FInternalList[Index] := S;
FMRUList.SetItemCaptions;
Changed;
end;
{ TTBMRUList }
constructor TTBMRUList.Create(AOwner: TComponent);
begin
inherited;
FAddFullPath := True;
FHidePathExtension := True;
FMaxItems := 4;
FPrefix := 'MRU';
FList := TTBMRUListStrings.Create;
TTBMRUListStrings(FList).FMRUList := Self;
FContainer := TTBCustomItem.Create(nil);
end;
destructor TTBMRUList.Destroy;
begin
FContainer.Free;
FList.Free;
inherited;
end;
procedure TTBMRUList.Add(Filename: String);
var
I: Integer;
begin
if AddFullPath then
Filename := ExpandFileName(Filename);
{ If Filename is already in the MRU list, move it to the top }
I := FList.IndexOf(Filename);
if I <> -1 then begin
if I > 0 then
FList.Move(I, 0);
FList[0] := Filename; { ...in case the capitalization changed }
end
else
FList.Insert(0, Filename);
end;
procedure TTBMRUList.Remove(const Filename: String);
var
I: Integer;
begin
I := FList.IndexOf(Filename);
if I <> -1 then
FList.Delete(I);
end;
procedure TTBMRUList.LoadFromIni(Ini: TCustomIniFile; const Section: String);
var
I: Integer;
S: String;
begin
FList.Clear;
for I := 1 to FMaxItems do begin
S := Ini.ReadString(Section, FPrefix + IntToStr(I), '');
if S <> '' then
FList.Add(S);
end;
end;
procedure TTBMRUList.LoadFromRegIni(Ini: TRegIniFile; const Section: String);
var
I: Integer;
S: String;
begin
FList.Clear;
for I := 1 to FMaxItems do begin
S := Ini.ReadString(Section, FPrefix + IntToStr(I), '');
if S <> '' then
FList.Add(S);
end;
end;
procedure TTBMRUList.SaveToIni(Ini: TCustomIniFile; const Section: String);
var
I: Integer;
begin
for I := 1 to FMaxItems do begin
if I <= FList.Count then
Ini.WriteString(Section, FPrefix + IntToStr(I), FList[I-1])
else
Ini.DeleteKey(Section, FPrefix + IntToStr(I));
end;
end;
procedure TTBMRUList.SaveToRegIni(Ini: TRegIniFile; const Section: String);
var
I: Integer;
begin
for I := 1 to FMaxItems do begin
if I <= FList.Count then
Ini.WriteString(Section, FPrefix + IntToStr(I), FList[I-1])
else
Ini.DeleteKey(Section, FPrefix + IntToStr(I));
end;
end;
procedure TTBMRUList.SetItemCaptions;
var
I, J: Integer;
Key: Char;
S: String;
begin
while FList.Count > FMaxItems do
FList.Delete(FList.Count-1);
for I := 0 to FContainer.Count-1 do begin
Key := #0;
if I < 9 then
Key := Chr(Ord('1') + I)
else begin
{ No more numbers; try letters }
J := I - 9;
if J < 26 then
Key := Chr(Ord('A') + J);
end;
S := FList[I];
if HidePathExtension then
ChangeFileNameToTitle(S);
S := EscapeAmpersands(S);
if Key <> #0 then
FContainer[I].Caption := Format('&%s %s', [Key, S])
else
FContainer[I].Caption := S;
end;
end;
procedure TTBMRUList.ClickHandler(Sender: TObject);
var
I: Integer;
begin
I := FContainer.IndexOf(TTBCustomItem(Sender));
if I <> -1 then begin
if I > 0 then
FList.Move(I, 0);
if Assigned(FOnClick) then
FOnClick(Self, FList[0]);
end;
end;
procedure TTBMRUList.SetHidePathExtension(Value: Boolean);
begin
if FHidePathExtension <> Value then begin
FHidePathExtension := Value;
SetItemCaptions;
end;
end;
procedure TTBMRUList.SetList(Value: TStrings);
begin
FList.Assign(Value);
end;
procedure TTBMRUList.SetMaxItems(Value: Integer);
begin
FMaxItems := Value;
SetItemCaptions;
end;
function TTBMRUList.GetItemClass: TTBCustomItemClass;
begin
Result := TTBCustomItem;
end;
{ TTBMRUListItem }
constructor TTBMRUListItem.Create(AOwner: TComponent);
begin
inherited;
ItemStyle := ItemStyle + [tbisEmbeddedGroup];
Caption := STBMRUListItemDefCaption;
end;
procedure TTBMRUListItem.Notification(AComponent: TComponent;
Operation: TOperation);
begin
inherited;
if (AComponent = FMRUList) and (Operation = opRemove) then
SetMRUList(nil);
end;
procedure TTBMRUListItem.SetMRUList(Value: TTBMRUList);
begin
if FMRUList <> Value then begin
FMRUList := Value;
if Assigned(FMRUList) then begin
Value.FreeNotification(Self);
LinkSubitems := FMRUList.FContainer;
end
else
LinkSubitems := nil;
end;
end;
end.

View File

@@ -0,0 +1,258 @@
unit TB2ToolWindow;
{
Toolbar2000
Copyright (C) 1998-2005 by Jordan Russell
All rights reserved.
The contents of this file are subject to the "Toolbar2000 License"; you may
not use or distribute this file except in compliance with the
"Toolbar2000 License". A copy of the "Toolbar2000 License" may be found in
TB2k-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/TB2k-LICENSE.txt
Alternatively, the contents of this file may be used under the terms of the
GNU General Public License (the "GPL"), in which case the provisions of the
GPL are applicable instead of those in the "Toolbar2000 License". A copy of
the GPL may be found in GPL-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/GPL-LICENSE.txt
If you wish to allow use of your version of this file only under the terms of
the GPL and not to allow others to use your version of this file under the
"Toolbar2000 License", indicate your decision by deleting the provisions
above and replace them with the notice and other provisions required by the
GPL. If you do not delete the provisions above, a recipient may use your
version of this file under either the "Toolbar2000 License" or the GPL.
$jrsoftware: tb2k/Source/TB2ToolWindow.pas,v 1.18 2005/01/06 03:56:50 jr Exp $
}
interface
{$I TB2Ver.inc}
uses
Windows, Classes, Graphics, Controls, TB2Dock;
type
{ TTBToolWindow }
TTBToolWindow = class(TTBCustomDockableWindow)
private
FMinClientWidth, FMinClientHeight, FMaxClientWidth, FMaxClientHeight: Integer;
FBarHeight, FBarWidth: Integer;
function CalcSize(ADock: TTBDock): TPoint;
function GetClientAreaWidth: Integer;
procedure SetClientAreaWidth(Value: Integer);
function GetClientAreaHeight: Integer;
procedure SetClientAreaHeight(Value: Integer);
procedure SetClientAreaSize(AWidth, AHeight: Integer);
protected
function DoArrange(CanMoveControls: Boolean; PreviousDockType: TTBDockType;
NewFloating: Boolean; NewDock: TTBDock): TPoint; override;
procedure GetBaseSize(var ASize: TPoint); override;
procedure GetMinMaxSize(var AMinClientWidth, AMinClientHeight,
AMaxClientWidth, AMaxClientHeight: Integer); override;
procedure Paint; override;
procedure SizeChanging(const AWidth, AHeight: Integer); override;
public
constructor Create(AOwner: TComponent); override;
procedure ReadPositionData(const Data: TTBReadPositionData); override;
procedure WritePositionData(const Data: TTBWritePositionData); override;
published
property ActivateParent;
property Align;
property Anchors;
property BorderStyle;
property Caption;
property Color;
property CloseButton;
property CloseButtonWhenDocked;
property ClientAreaHeight: Integer read GetClientAreaHeight write SetClientAreaHeight;
property ClientAreaWidth: Integer read GetClientAreaWidth write SetClientAreaWidth;
property CurrentDock;
property DefaultDock;
property DockableTo;
property DockMode;
property DockPos;
property DockRow;
property DragHandleStyle;
property FloatingMode;
property Font;
property FullSize;
property HideWhenInactive;
property LastDock;
property MaxClientHeight: Integer read FMaxClientHeight write FMaxClientHeight default 0;
property MaxClientWidth: Integer read FMaxClientWidth write FMaxClientWidth default 0;
property MinClientHeight: Integer read FMinClientHeight write FMinClientHeight default 32;
property MinClientWidth: Integer read FMinClientWidth write FMinClientWidth default 32;
property ParentFont;
property ParentShowHint;
property PopupMenu;
property Resizable;
property ShowCaption;
property ShowHint;
property Stretch;
property SmoothDrag;
property TabOrder;
property UseLastDock;
{}{property Version;}
property Visible;
property OnClose;
property OnCloseQuery;
{$IFDEF JR_D5}
property OnContextPopup;
{$ENDIF}
property OnDragDrop;
property OnDragOver;
property OnDockChanged;
property OnDockChanging;
property OnDockChangingHidden;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnMove;
property OnRecreated;
property OnRecreating;
property OnResize;
property OnVisibleChanged;
end;
implementation
const
{ Constants for TTBToolWindow-specific registry values. Do not localize! }
rvClientWidth = 'ClientWidth';
rvClientHeight = 'ClientHeight';
{ TTBToolWindow }
constructor TTBToolWindow.Create(AOwner: TComponent);
begin
inherited;
FMinClientWidth := 32;
FMinClientHeight := 32;
{ Initialize the client size to 32x32 }
SetBounds(Left, Top, 32, 32);
end;
procedure TTBToolWindow.Paint;
var
R: TRect;
begin
{ Draw dotted border in design mode }
if csDesigning in ComponentState then
with Canvas do begin
R := ClientRect;
Pen.Style := psDot;
Pen.Color := clBtnShadow;
Brush.Style := bsClear;
Rectangle(R.Left, R.Top, R.Right, R.Bottom);
Pen.Style := psSolid;
end;
end;
procedure TTBToolWindow.ReadPositionData(const Data: TTBReadPositionData);
begin
inherited;
{ Restore ClientAreaWidth/ClientAreaHeight variables }
if Resizable then
with Data do
SetClientAreaSize(ReadIntProc(Name, rvClientWidth, FBarWidth, ExtraData),
ReadIntProc(Name, rvClientHeight, FBarHeight, ExtraData));
end;
procedure TTBToolWindow.WritePositionData(const Data: TTBWritePositionData);
begin
inherited;
{ Write values of FBarWidth/FBarHeight }
with Data do begin
WriteIntProc(Name, rvClientWidth, FBarWidth, ExtraData);
WriteIntProc(Name, rvClientHeight, FBarHeight, ExtraData);
end;
end;
procedure TTBToolWindow.GetMinMaxSize(var AMinClientWidth, AMinClientHeight,
AMaxClientWidth, AMaxClientHeight: Integer);
begin
AMinClientWidth := FMinClientWidth;
AMinClientHeight := FMinClientHeight;
AMaxClientWidth := FMaxClientWidth;
AMaxClientHeight := FMaxClientHeight;
end;
procedure TTBToolWindow.SizeChanging(const AWidth, AHeight: Integer);
begin
FBarWidth := AWidth;
if Parent <> nil then Dec(FBarWidth, Width - ClientWidth);
FBarHeight := AHeight;
if Parent <> nil then Dec(FBarHeight, Height - ClientHeight);
end;
function TTBToolWindow.CalcSize(ADock: TTBDock): TPoint;
begin
Result.X := FBarWidth;
Result.Y := FBarHeight;
if Assigned(ADock) and (FullSize or Stretch) then begin
{ If docked and stretching, return the minimum size so that the toolbar
can shrink below FBarWidth/FBarHeight }
if not(ADock.Position in [dpLeft, dpRight]) then
Result.X := FMinClientWidth
else
Result.Y := FMinClientHeight;
end;
end;
procedure TTBToolWindow.GetBaseSize(var ASize: TPoint);
begin
ASize := CalcSize(CurrentDock);
end;
function TTBToolWindow.DoArrange(CanMoveControls: Boolean;
PreviousDockType: TTBDockType; NewFloating: Boolean; NewDock: TTBDock): TPoint;
begin
Result := CalcSize(NewDock);
end;
function TTBToolWindow.GetClientAreaWidth: Integer;
begin
if Parent = nil then
Result := Width
else
Result := ClientWidth;
end;
procedure TTBToolWindow.SetClientAreaWidth(Value: Integer);
begin
SetClientAreaSize(Value, ClientAreaHeight);
end;
function TTBToolWindow.GetClientAreaHeight: Integer;
begin
if Parent = nil then
Result := Height
else
Result := ClientHeight;
end;
procedure TTBToolWindow.SetClientAreaHeight(Value: Integer);
begin
SetClientAreaSize(ClientAreaWidth, Value);
end;
procedure TTBToolWindow.SetClientAreaSize(AWidth, AHeight: Integer);
var
Client: TRect;
begin
if Parent = nil then
SetBounds(Left, Top, AWidth, AHeight)
else begin
Client := GetClientRect;
SetBounds(Left, Top, Width - Client.Right + AWidth,
Height - Client.Bottom + AHeight);
end;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,64 @@
{ $jrsoftware: tb2k/Source/TB2Ver.inc,v 1.11 2008/09/13 21:06:45 jr Exp $ }
{ Determine Delphi/C++Builder version }
{$IFNDEF VER90} { if it's not Delphi 2.0 }
{$IFNDEF VER93} { and it's not C++Builder 1.0 }
{$DEFINE JR_D3} { then it must be at least Delphi 3 or C++Builder 3 }
{$IFNDEF VER100} { if it's not Delphi 3.0 }
{$IFNDEF VER120} { Delphi 4/5's command line compiler doesn't like the ObjExportAll directive, so don't include it on Delphi 4/5 }
{$IFNDEF VER130}
{$ObjExportAll On} { <- needed for compatibility with run-time packages in C++Builder 3+ }
{$ENDIF}
{$ENDIF}
{$IFNDEF VER110} { and it's not C++Builder 3.0 }
{$DEFINE JR_D4} { then it must be at least Delphi 4 or C++Builder 4 }
{$IFNDEF VER120} {$IFNDEF VER125} { if it's not Delphi 4 or C++Builder 4 }
{$DEFINE JR_D5} { then it must be at least Delphi 5 or C++Builder 5 }
{$IFNDEF VER130} { if it's not Delphi 5 or C++Builder 5 }
{$DEFINE JR_D6} { then it must be at least Delphi 6 or C++Builder 6 }
{$IFNDEF VER140} { if it's not Delphi 6 or C++Builder 6 }
{$DEFINE JR_D7} { then it must be at least Delphi 7 }
{$IFNDEF VER150} { if it's not Delphi 7 }
{$DEFINE JR_D8} { then it must be at least Delphi 8 }
{$IFNDEF VER160} { if it's not Delphi 8 }
{$DEFINE JR_D9} { then it must be at least Delphi 9 (2005) }
{$IFNDEF VER170} { if it's not Delphi 9 (2005) }
{$DEFINE JR_D10} { then it must be at least Delphi 10 (2006) }
{ Delphi 11 (2007) is an odd case: it defines VER180 and VER185 on Win32, and VER190 on .NET }
{$IFDEF VER185} { if it's Win32 Delphi 11 (2007) exactly }
{$DEFINE JR_D11} { then it must be at least Delphi 11 (2007) }
{$ENDIF}
{$IFNDEF VER180} { if it's neither Delphi 10 (2006) nor Win32 Delphi 11 (2007) }
{$DEFINE JR_D11} { then it must be at least Delphi 11 (2007) }
{$IFNDEF VER190} { if it's not .NET Delphi 11 (2007) }
{$DEFINE JR_D12} { then it must be at least Delphi 12 (2009) }
{$ENDIF}
{$ENDIF}
{$ENDIF}
{$ENDIF}
{$ENDIF}
{$ENDIF}
{$ENDIF}
{$ENDIF} {$ENDIF}
{$ENDIF}
{$ENDIF}
{$ENDIF}
{$ENDIF}
{$IFDEF JR_D6}
{$IF SizeOf(Char) > 1}
{$DEFINE JR_WIDESTR} { defined if String type = WideString }
{$IFEND}
{$IF not Defined(CLR) and (SizeOf(Pointer) <> 4)}
{$MESSAGE WARN 'This version of Toolbar2000 has not been tested on 64-bit Delphi for Win32'}
{$IFEND}
{$ENDIF}
{$ALIGN ON}
{$BOOLEVAL OFF}
{$LONGSTRINGS ON}
{$TYPEDADDRESS OFF}
{$WRITEABLECONST ON}
{$IFDEF JR_D6}
{$WARN SYMBOL_PLATFORM OFF}
{$ENDIF}

View File

@@ -0,0 +1,63 @@
unit TB2Version;
{
Toolbar2000
Copyright (C) 1998-2008 by Jordan Russell
All rights reserved.
The contents of this file are subject to the "Toolbar2000 License"; you may
not use or distribute this file except in compliance with the
"Toolbar2000 License". A copy of the "Toolbar2000 License" may be found in
TB2k-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/TB2k-LICENSE.txt
Alternatively, the contents of this file may be used under the terms of the
GNU General Public License (the "GPL"), in which case the provisions of the
GPL are applicable instead of those in the "Toolbar2000 License". A copy of
the GPL may be found in GPL-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/GPL-LICENSE.txt
If you wish to allow use of your version of this file only under the terms of
the GPL and not to allow others to use your version of this file under the
"Toolbar2000 License", indicate your decision by deleting the provisions
above and replace them with the notice and other provisions required by the
GPL. If you do not delete the provisions above, a recipient may use your
version of this file under either the "Toolbar2000 License" or the GPL.
$jrsoftware: tb2k/Source/TB2Version.pas,v 1.69 2008/09/13 21:39:24 jr Exp $
}
interface
{$I TB2Ver.inc}
const
Toolbar2000Version = '2.2.2';
Toolbar2000VersionPropText = 'Toolbar2000 version ' + Toolbar2000Version
{$IFDEF CLR} + ' (.NET)' {$ENDIF};
type
TToolbar2000Version = type string;
implementation
const
Sig: {$IFNDEF CLR} PAnsiChar {$ELSE} AnsiString {$ENDIF} =
'- ' + Toolbar2000VersionPropText +
{$IFDEF VER90} '/D2'+ {$ENDIF} {$IFDEF VER93} '/CB1'+ {$ENDIF}
{$IFDEF VER100} '/D3'+ {$ENDIF} {$IFDEF VER110} '/CB3'+ {$ENDIF}
{$IFDEF VER120} '/D4'+ {$ENDIF} {$IFDEF VER125} '/CB4'+ {$ENDIF}
{$IFNDEF BCB} {$IFDEF VER130} '/D5'+ {$ENDIF} {$ELSE} {$IFDEF VER130} '/CB5'+ {$ENDIF} {$ENDIF}
{$IFNDEF BCB} {$IFDEF VER140} '/D6'+ {$ENDIF} {$ELSE} {$IFDEF VER140} '/CB6'+ {$ENDIF} {$ENDIF}
{$IFNDEF BCB} {$IFDEF VER150} '/D7'+ {$ENDIF} {$ELSE} {$IFDEF VER150} '/CB7'+ {$ENDIF} {$ENDIF}
{$IFNDEF BCB} {$IFDEF VER170} '/D9'+ {$ENDIF} {$ELSE} {$IFDEF VER170} '/CB9'+ {$ENDIF} {$ENDIF}
{$IFNDEF VER185} {$IFNDEF BCB} {$IFDEF VER180} '/D10'+ {$ENDIF} {$ELSE} {$IFDEF VER180} '/CB10'+ {$ENDIF} {$ENDIF} {$ENDIF}
{$IFNDEF BCB} {$IFDEF VER185} '/D11'+ {$ENDIF} {$ELSE} {$IFDEF VER185} '/CB11'+ {$ENDIF} {$ENDIF}
{$IFNDEF BCB} {$IFDEF VER190} '/D11'+ {$ENDIF} {$ELSE} {$IFDEF VER190} '/CB11'+ {$ENDIF} {$ENDIF}
{$IFNDEF BCB} {$IFDEF VER200} '/D12'+ {$ENDIF} {$ELSE} {$IFDEF VER200} '/CB12'+ {$ENDIF} {$ENDIF}
', Copyright (C) 1998-2008 by Jordan Russell -';
{$IFNDEF CLR}
initialization
Sig := Sig;
{$ENDIF}
end.

View File

@@ -0,0 +1,48 @@
package tb2k_d7;
{$R *.res}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3FC00000}
{$DESCRIPTION 'Toolbar2000 Components (Jordan Russell)'}
{$RUNONLY}
{$IMPLICITBUILD ON}
requires
vcl;
contains
TB2Version in '..\Source\TB2Version.pas',
TB2Toolbar in '..\Source\TB2Toolbar.pas',
TB2Consts in '..\Source\TB2Consts.pas',
TB2Dock in '..\Source\TB2Dock.pas',
TB2ExtItems in '..\Source\TB2ExtItems.pas',
TB2Item in '..\Source\TB2Item.pas',
TB2Common in '..\Source\TB2Common.pas',
TB2Hook in '..\Source\TB2Hook.pas',
TB2ToolWindow in '..\Source\TB2ToolWindow.pas',
TB2MRU in '..\Source\TB2MRU.pas',
TB2Anim in '..\Source\TB2Anim.pas',
TB2MDI in '..\Source\TB2MDI.pas',
TB2Acc in '..\Source\TB2Acc.pas';
end.

View File

@@ -0,0 +1,183 @@
# ---------------------------------------------------------------------------
!if !$d(BCB)
BCB = $(MAKEDIR)\..
!endif
# ---------------------------------------------------------------------------
# IDE SECTION
# ---------------------------------------------------------------------------
# The following section of the project makefile is managed by the BCB IDE.
# It is recommended to use the IDE to change any of the values in this
# section.
# ---------------------------------------------------------------------------
VERSION = BCB.04.04
# ---------------------------------------------------------------------------
PROJECT = tb2k_cb4.bpl
OBJFILES = ..\Source\TB2Common.obj ..\Source\TB2Consts.obj ..\Source\TB2Dock.obj \
..\Source\TB2ExtItems.obj ..\Source\TB2Item.obj ..\Source\TB2Toolbar.obj \
..\Source\TB2Version.obj ..\Source\TB2Hook.obj ..\Source\TB2ToolWindow.obj \
..\Source\TB2MRU.obj ..\Source\TB2Anim.obj ..\Source\TB2MDI.obj \
..\Source\TB2Acc.obj tb2k_cb4.obj
RESFILES =
RESDEPEN = $(RESFILES)
LIBFILES =
LIBRARIES =
SPARELIBS = Vcl40.lib
PACKAGES = vcl40.bpi
DEFFILE =
# ---------------------------------------------------------------------------
PATHCPP = .;
PATHASM = .;
PATHPAS = .;..\Source
PATHRC = .;
DEBUGLIBPATH = $(BCB)\lib\debug
RELEASELIBPATH = $(BCB)\lib\release
USERDEFINES =
SYSDEFINES = _RTLDLL;NO_STRICT;USEPACKAGES
# ---------------------------------------------------------------------------
CFLAG1 = -I..\Source;$(BCB)\include;$(BCB)\include\vcl -Od -Hc -H=$(BCB)\lib\vcl40.csm \
-w -Ve -r- -a8 -k -y -v -vi- -c -b- -w-par -w-inl -Vx -tWM \
-D$(SYSDEFINES);$(USERDEFINES)
PFLAGS = -U..\Source;$(BCB)\lib\obj;$(BCB)\lib;$(RELEASELIBPATH) \
-I..\Source;$(BCB)\include;$(BCB)\include\vcl -$YD -$J- -v -JPHNE -M
RFLAGS = -i..\Source;$(BCB)\include;$(BCB)\include\vcl
AFLAGS = /i..\Source /i$(BCB)\include /i$(BCB)\include\vcl /mx /w2 /zd
LFLAGS = -L..\Source;$(BCB)\lib\obj;$(BCB)\lib;$(RELEASELIBPATH) \
-D"Toolbar2000 Components (Jordan Russell)" -aa -Tpp -Gpr -x -Gn -Gl -Gi -v
# ---------------------------------------------------------------------------
ALLOBJ = c0pkg32.obj Memmgr.Lib $(PACKAGES) sysinit.obj $(OBJFILES)
ALLRES = $(RESFILES)
ALLLIB = $(LIBFILES) $(LIBRARIES) import32.lib cp32mti.lib
# ---------------------------------------------------------------------------
!ifdef IDEOPTIONS
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1033
CodePage=1252
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[Debugging]
DebugSourceDirs=$(BCB)\source\vcl
[Parameters]
RunParams=
HostApplication=
RemoteHost=
RemotePath=
RemoteDebug=0
[Compiler]
InMemoryExe=0
ShowInfoMsgs=0
!endif
# ---------------------------------------------------------------------------
# MAKE SECTION
# ---------------------------------------------------------------------------
# This section of the project file is not used by the BCB IDE. It is for
# the benefit of building from the command-line using the MAKE utility.
# ---------------------------------------------------------------------------
.autodepend
# ---------------------------------------------------------------------------
!if !$d(BCC32)
BCC32 = bcc32
!endif
!if !$d(CPP32)
CPP32 = cpp32
!endif
!if !$d(DCC32)
DCC32 = dcc32
!endif
!if !$d(TASM32)
TASM32 = tasm32
!endif
!if !$d(LINKER)
LINKER = ilink32
!endif
!if !$d(BRCC32)
BRCC32 = brcc32
!endif
# ---------------------------------------------------------------------------
!if $d(PATHCPP)
.PATH.CPP = $(PATHCPP)
.PATH.C = $(PATHCPP)
!endif
!if $d(PATHPAS)
.PATH.PAS = $(PATHPAS)
!endif
!if $d(PATHASM)
.PATH.ASM = $(PATHASM)
!endif
!if $d(PATHRC)
.PATH.RC = $(PATHRC)
!endif
# ---------------------------------------------------------------------------
$(PROJECT): $(OBJFILES) $(RESDEPEN) $(DEFFILE)
$(BCB)\BIN\$(LINKER) @&&!
$(LFLAGS) +
$(ALLOBJ), +
$(PROJECT),, +
$(ALLLIB), +
$(DEFFILE), +
$(ALLRES)
!
# ---------------------------------------------------------------------------
.pas.hpp:
$(BCB)\BIN\$(DCC32) $(PFLAGS) {$< }
.pas.obj:
$(BCB)\BIN\$(DCC32) $(PFLAGS) {$< }
.cpp.obj:
$(BCB)\BIN\$(BCC32) $(CFLAG1) -n$(@D) {$< }
.c.obj:
$(BCB)\BIN\$(BCC32) $(CFLAG1) -n$(@D) {$< }
.c.i:
$(BCB)\BIN\$(CPP32) $(CFLAG1) -n. {$< }
.cpp.i:
$(BCB)\BIN\$(CPP32) $(CFLAG1) -n. {$< }
.asm.obj:
$(BCB)\BIN\$(TASM32) $(AFLAGS) $<, $@
.rc.res:
$(BCB)\BIN\$(BRCC32) $(RFLAGS) -fo$@ $<
# ---------------------------------------------------------------------------

View File

@@ -0,0 +1,29 @@
// $jrsoftware: tb2k/Packages/tb2k_cb4.cpp,v 1.9 2003/07/04 22:53:21 jr Exp $
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
USEPACKAGE("vcl40.bpi");
USEUNIT("..\Source\TB2Common.pas");
USEUNIT("..\Source\TB2Consts.pas");
USEUNIT("..\Source\TB2Dock.pas");
USEUNIT("..\Source\TB2ExtItems.pas");
USEUNIT("..\Source\TB2Item.pas");
USEUNIT("..\Source\TB2Toolbar.pas");
USEUNIT("..\Source\TB2Version.pas");
USEUNIT("..\Source\TB2Hook.pas");
USEUNIT("..\Source\TB2ToolWindow.pas");
USEUNIT("..\Source\TB2MRU.pas");
USEUNIT("..\Source\TB2Anim.pas");
USEUNIT("..\Source\TB2MDI.pas");
USEUNIT("..\Source\TB2Acc.pas");
//---------------------------------------------------------------------------
#pragma package(smart_init)
//---------------------------------------------------------------------------
// Package source.
//---------------------------------------------------------------------------
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void*)
{
return 1;
}
//---------------------------------------------------------------------------

View File

@@ -0,0 +1,96 @@
<?xml version='1.0' encoding='utf-8' ?>
<!-- C++Builder XML Project -->
<PROJECT>
<MACROS>
<VERSION value="BCB.05.03"/>
<PROJECT value="tb2k_cb5.bpl"/>
<OBJFILES value="..\Source\TB2Common.obj ..\Source\TB2Consts.obj ..\Source\TB2Dock.obj
..\Source\TB2ExtItems.obj ..\Source\TB2Item.obj ..\Source\TB2Toolbar.obj
..\Source\TB2Version.obj ..\Source\TB2Hook.obj ..\Source\TB2ToolWindow.obj
..\Source\TB2MRU.obj ..\Source\TB2Anim.obj ..\Source\TB2MDI.obj
..\Source\TB2Acc.obj tb2k_cb5.obj"/>
<RESFILES value=""/>
<IDLFILES value=""/>
<DEFFILE value=""/>
<RESDEPEN value="$(RESFILES)"/>
<LIBFILES value=""/>
<LIBRARIES value=""/>
<SPARELIBS value="vcl50.lib"/>
<PACKAGES value="vcl50.bpi"/>
<PATHCPP value=".;"/>
<PATHPAS value=".;..\Source"/>
<PATHRC value=".;"/>
<PATHASM value=".;"/>
<DEBUGLIBPATH value="$(BCB)\lib\debug"/>
<RELEASELIBPATH value="$(BCB)\lib\release"/>
<LINKER value="ilink32"/>
<USERDEFINES value=""/>
<SYSDEFINES value="_RTLDLL;NO_STRICT;USEPACKAGES"/>
<MAINSOURCE value="tb2k_cb5.cpp"/>
<INCLUDEPATH value="..\Source;$(BCB)\include;$(BCB)\include\vcl"/>
<LIBPATH value="..\Source;$(BCB)\lib\obj;$(BCB)\lib"/>
<WARNINGS value="-w-par -w-8027 -w-8026"/>
<WARNOPTSTR value=""/>
</MACROS>
<OPTIONS>
<CFLAG1 value="-Od -H=$(BCB)\lib\vcl50.csm -Hc -Vx -Ve -X- -r- -a8 -b- -k -y -v -vi- -c
-tWM"/>
<PFLAGS value="-$YD -$J- -v -JPHNE -M"/>
<RFLAGS value=""/>
<AFLAGS value="/mx /w2 /zd"/>
<LFLAGS value="-D&quot;Toolbar2000 Components (Jordan Russell)&quot; -aa -Tpp -Gpr -x -Gn -Gl -Gi -v"/>
</OPTIONS>
<LINKER>
<ALLOBJ value="c0pkg32.obj $(PACKAGES) Memmgr.Lib sysinit.obj $(OBJFILES)"/>
<ALLRES value="$(RESFILES)"/>
<ALLLIB value="$(LIBFILES) $(LIBRARIES) import32.lib cp32mti.lib"/>
</LINKER>
<IDEOPTIONS>
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1033
CodePage=1252
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[Debugging]
DebugSourceDirs=$(BCB)\source\vcl
[Parameters]
RunParams=
HostApplication=
RemoteHost=
RemotePath=
RemoteDebug=0
[Compiler]
ShowInfoMsgs=0
LinkDebugVcl=0
LinkCGLIB=0
[Language]
ActiveLang=
ProjectLang=
RootDir=
</IDEOPTIONS>
</PROJECT>

View File

@@ -0,0 +1,29 @@
// $jrsoftware: tb2k/Packages/tb2k_cb5.cpp,v 1.9 2003/07/04 22:53:21 jr Exp $
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
USEPACKAGE("vcl50.bpi");
USEUNIT("..\Source\TB2Common.pas");
USEUNIT("..\Source\TB2Consts.pas");
USEUNIT("..\Source\TB2Dock.pas");
USEUNIT("..\Source\TB2ExtItems.pas");
USEUNIT("..\Source\TB2Item.pas");
USEUNIT("..\Source\TB2Toolbar.pas");
USEUNIT("..\Source\TB2Version.pas");
USEUNIT("..\Source\TB2Hook.pas");
USEUNIT("..\Source\TB2ToolWindow.pas");
USEUNIT("..\Source\TB2MRU.pas");
USEUNIT("..\Source\TB2Anim.pas");
USEUNIT("..\Source\TB2MDI.pas");
USEUNIT("..\Source\TB2Acc.pas");
//---------------------------------------------------------------------------
#pragma package(smart_init)
//---------------------------------------------------------------------------
// Package source.
//---------------------------------------------------------------------------
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void*)
{
return 1;
}
//---------------------------------------------------------------------------

View File

@@ -0,0 +1,130 @@
<?xml version='1.0' encoding='utf-8' ?>
<!-- C++Builder XML Project -->
<PROJECT>
<MACROS>
<VERSION value="BCB.06.00"/>
<PROJECT value="tb2k_cb6.bpl"/>
<OBJFILES value="tb2k_cb6.obj ..\Source\TB2Common.obj ..\Source\TB2Consts.obj
..\Source\TB2Dock.obj ..\Source\TB2ExtItems.obj ..\Source\TB2Item.obj
..\Source\TB2Toolbar.obj ..\Source\TB2Version.obj ..\Source\TB2Hook.obj
..\Source\TB2ToolWindow.obj ..\Source\TB2MRU.obj ..\Source\TB2Anim.obj
..\Source\TB2MDI.obj ..\Source\TB2Acc.obj"/>
<RESFILES value=""/>
<IDLFILES value=""/>
<DEFFILE value=""/>
<RESDEPEN value="$(RESFILES)"/>
<LIBFILES value=""/>
<LIBRARIES value=""/>
<SPARELIBS value="rtl.lib vcl.lib"/>
<PACKAGES value="rtl.bpi vcl.bpi"/>
<PATHCPP value=".;"/>
<PATHPAS value=".;..\Source"/>
<PATHRC value=".;"/>
<PATHASM value=".;"/>
<DEBUGLIBPATH value="$(BCB)\lib\debug"/>
<RELEASELIBPATH value="$(BCB)\lib\release"/>
<LINKER value="ilink32"/>
<USERDEFINES value=""/>
<SYSDEFINES value="_RTLDLL;NO_STRICT;USEPACKAGES"/>
<MAINSOURCE value="tb2k_cb6.cpp"/>
<INCLUDEPATH value="..\Source;$(BCB)\include;$(BCB)\include\vcl"/>
<LIBPATH value="..\Source;$(BCB)\lib\obj;$(BCB)\lib"/>
<WARNINGS value="-w-par -w-8027 -w-8026"/>
<WARNOPTSTR value=""/>
<OTHERFILES value=""/>
</MACROS>
<OPTIONS>
<CFLAG1 value="-Od -H=$(BCB)\lib\vcl60.csm -Hc -Vx -Ve -X- -r- -a8 -b- -k -y -v -vi- -c
-tWM"/>
<PFLAGS value="-$YD -$A8 -v -JPHNE -M"/>
<RFLAGS value=""/>
<AFLAGS value="/mx /w2 /zd"/>
<LFLAGS value="-D&quot;Toolbar2000 Components (Jordan Russell)&quot; -aa -Tpp -Gpr -x -Gn -Gl -Gi -v"/>
<OTHERFILES value=""/>
</OPTIONS>
<LINKER>
<ALLOBJ value="c0pkg32.obj $(PACKAGES) Memmgr.Lib sysinit.obj $(OBJFILES)"/>
<ALLRES value="$(RESFILES)"/>
<ALLLIB value="$(LIBFILES) $(LIBRARIES) import32.lib cp32mti.lib"/>
<OTHERFILES value=""/>
</LINKER>
<FILELIST>
<FILE FILENAME="tb2k_cb6.cpp" FORMNAME="" UNITNAME="tb2k_cb6" CONTAINERID="CCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2Common.pas" FORMNAME="" UNITNAME="TB2Common" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2Consts.pas" FORMNAME="" UNITNAME="TB2Consts" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2Dock.pas" FORMNAME="" UNITNAME="TB2Dock" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2ExtItems.pas" FORMNAME="" UNITNAME="TB2ExtItems" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2Item.pas" FORMNAME="" UNITNAME="TB2Item" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2Toolbar.pas" FORMNAME="" UNITNAME="TB2Toolbar" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2Version.pas" FORMNAME="" UNITNAME="TB2Version" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2Hook.pas" FORMNAME="" UNITNAME="TB2Hook" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2ToolWindow.pas" FORMNAME="" UNITNAME="TB2ToolWindow" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2MRU.pas" FORMNAME="" UNITNAME="TB2MRU" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2Anim.pas" FORMNAME="" UNITNAME="TB2Anim" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2MDI.pas" FORMNAME="" UNITNAME="TB2MDI" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2Acc.pas" FORMNAME="" UNITNAME="TB2Acc" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="rtl.bpi" FORMNAME="" UNITNAME="rtl" CONTAINERID="BPITool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="vcl.bpi" FORMNAME="" UNITNAME="vcl" CONTAINERID="BPITool" DESIGNCLASS="" LOCALCOMMAND=""/>
</FILELIST>
<BUILDTOOLS>
</BUILDTOOLS>
<IDEOPTIONS>
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1033
CodePage=1252
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[Debugging]
DebugSourceDirs=$(BCB)\source\vcl
[Parameters]
RunParams=
Launcher=
UseLauncher=0
DebugCWD=
HostApplication=
RemoteHost=
RemotePath=
RemoteLauncher=
RemoteCWD=
RemoteDebug=0
[Compiler]
ShowInfoMsgs=0
LinkDebugVcl=0
LinkCGLIB=0
[Language]
ActiveLang=
ProjectLang=
RootDir=
[Linker]
LibPrefix=
LibSuffix=
LibVersion=
</IDEOPTIONS>
</PROJECT>

View File

@@ -0,0 +1,14 @@
// $jrsoftware: tb2k/Packages/tb2k_cb6.cpp,v 1.2 2002/11/14 18:07:19 jr Exp $
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#pragma package(smart_init)
//---------------------------------------------------------------------------
// Package source.
//---------------------------------------------------------------------------
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void*)
{
return 1;
}
//---------------------------------------------------------------------------

View File

@@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<BorlandProject>
<PersonalityInfo>
<Option>
<Option Name="Personality">Delphi.Personality</Option>
<Option Name="ProjectType">VCLApplication</Option>
<Option Name="Version">1.0</Option>
<Option Name="GUID">{5A0E40F2-077C-4014-A127-68EF570C11C6}</Option>
</Option>
</PersonalityInfo>
<Delphi.Personality>
<Source>
<Source Name="MainSource">tb2k_d10.dpk</Source>
</Source>
<FileVersion>
<FileVersion Name="Version">7.0</FileVersion>
</FileVersion>
<Compiler>
<Compiler Name="A">8</Compiler>
<Compiler Name="B">0</Compiler>
<Compiler Name="C">1</Compiler>
<Compiler Name="D">1</Compiler>
<Compiler Name="E">0</Compiler>
<Compiler Name="F">0</Compiler>
<Compiler Name="G">1</Compiler>
<Compiler Name="H">1</Compiler>
<Compiler Name="I">1</Compiler>
<Compiler Name="J">0</Compiler>
<Compiler Name="K">0</Compiler>
<Compiler Name="L">1</Compiler>
<Compiler Name="M">0</Compiler>
<Compiler Name="N">1</Compiler>
<Compiler Name="O">1</Compiler>
<Compiler Name="P">1</Compiler>
<Compiler Name="Q">0</Compiler>
<Compiler Name="R">0</Compiler>
<Compiler Name="S">0</Compiler>
<Compiler Name="T">0</Compiler>
<Compiler Name="U">0</Compiler>
<Compiler Name="V">1</Compiler>
<Compiler Name="W">0</Compiler>
<Compiler Name="X">1</Compiler>
<Compiler Name="Y">1</Compiler>
<Compiler Name="Z">1</Compiler>
<Compiler Name="ShowHints">True</Compiler>
<Compiler Name="ShowWarnings">True</Compiler>
<Compiler Name="UnitAliases">WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;</Compiler>
<Compiler Name="NamespacePrefix"></Compiler>
<Compiler Name="GenerateDocumentation">False</Compiler>
<Compiler Name="DefaultNamespace"></Compiler>
<Compiler Name="SymbolDeprecated">True</Compiler>
<Compiler Name="SymbolLibrary">True</Compiler>
<Compiler Name="SymbolPlatform">True</Compiler>
<Compiler Name="SymbolExperimental">True</Compiler>
<Compiler Name="UnitLibrary">True</Compiler>
<Compiler Name="UnitPlatform">True</Compiler>
<Compiler Name="UnitDeprecated">True</Compiler>
<Compiler Name="UnitExperimental">True</Compiler>
<Compiler Name="HResultCompat">True</Compiler>
<Compiler Name="HidingMember">True</Compiler>
<Compiler Name="HiddenVirtual">True</Compiler>
<Compiler Name="Garbage">True</Compiler>
<Compiler Name="BoundsError">True</Compiler>
<Compiler Name="ZeroNilCompat">True</Compiler>
<Compiler Name="StringConstTruncated">True</Compiler>
<Compiler Name="ForLoopVarVarPar">True</Compiler>
<Compiler Name="TypedConstVarPar">True</Compiler>
<Compiler Name="AsgToTypedConst">True</Compiler>
<Compiler Name="CaseLabelRange">True</Compiler>
<Compiler Name="ForVariable">True</Compiler>
<Compiler Name="ConstructingAbstract">True</Compiler>
<Compiler Name="ComparisonFalse">True</Compiler>
<Compiler Name="ComparisonTrue">True</Compiler>
<Compiler Name="ComparingSignedUnsigned">True</Compiler>
<Compiler Name="CombiningSignedUnsigned">True</Compiler>
<Compiler Name="UnsupportedConstruct">True</Compiler>
<Compiler Name="FileOpen">True</Compiler>
<Compiler Name="FileOpenUnitSrc">True</Compiler>
<Compiler Name="BadGlobalSymbol">True</Compiler>
<Compiler Name="DuplicateConstructorDestructor">True</Compiler>
<Compiler Name="InvalidDirective">True</Compiler>
<Compiler Name="PackageNoLink">True</Compiler>
<Compiler Name="PackageThreadVar">True</Compiler>
<Compiler Name="ImplicitImport">True</Compiler>
<Compiler Name="HPPEMITIgnored">True</Compiler>
<Compiler Name="NoRetVal">True</Compiler>
<Compiler Name="UseBeforeDef">True</Compiler>
<Compiler Name="ForLoopVarUndef">True</Compiler>
<Compiler Name="UnitNameMismatch">True</Compiler>
<Compiler Name="NoCFGFileFound">True</Compiler>
<Compiler Name="ImplicitVariants">True</Compiler>
<Compiler Name="UnicodeToLocale">True</Compiler>
<Compiler Name="LocaleToUnicode">True</Compiler>
<Compiler Name="ImagebaseMultiple">True</Compiler>
<Compiler Name="SuspiciousTypecast">True</Compiler>
<Compiler Name="PrivatePropAccessor">True</Compiler>
<Compiler Name="UnsafeType">False</Compiler>
<Compiler Name="UnsafeCode">False</Compiler>
<Compiler Name="UnsafeCast">False</Compiler>
<Compiler Name="OptionTruncated">True</Compiler>
<Compiler Name="WideCharReduced">True</Compiler>
<Compiler Name="DuplicatesIgnored">True</Compiler>
<Compiler Name="UnitInitSeq">True</Compiler>
<Compiler Name="LocalPInvoke">True</Compiler>
<Compiler Name="MessageDirective">True</Compiler>
<Compiler Name="CodePage"></Compiler>
</Compiler>
<Linker>
<Linker Name="MapFile">0</Linker>
<Linker Name="OutputObjs">44</Linker>
<Linker Name="GenerateHpps">False</Linker>
<Linker Name="ConsoleApp">1</Linker>
<Linker Name="DebugInfo">False</Linker>
<Linker Name="RemoteSymbols">False</Linker>
<Linker Name="GenerateDRC">False</Linker>
<Linker Name="MinStackSize">16384</Linker>
<Linker Name="MaxStackSize">1048576</Linker>
<Linker Name="ImageBase">1069547520</Linker>
<Linker Name="ExeDescription">Toolbar2000 Components (Jordan Russell)</Linker>
</Linker>
<Directories>
<Directories Name="OutputDir"></Directories>
<Directories Name="UnitOutputDir">..\Lib\D10</Directories>
<Directories Name="PackageDLLOutputDir"></Directories>
<Directories Name="PackageDCPOutputDir"></Directories>
<Directories Name="SearchPath"></Directories>
<Directories Name="Packages"></Directories>
<Directories Name="Conditionals"></Directories>
<Directories Name="DebugSourceDirs"></Directories>
<Directories Name="UsePackages">False</Directories>
</Directories>
<Parameters>
<Parameters Name="RunParams"></Parameters>
<Parameters Name="HostApplication"></Parameters>
<Parameters Name="Launcher"></Parameters>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="DebugCWD"></Parameters>
<Parameters Name="Debug Symbols Search Path"></Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<Language>
<Language Name="ActiveLang"></Language>
<Language Name="ProjectLang">$00000000</Language>
<Language Name="RootDir"></Language>
</Language>
<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">1033</VersionInfo>
<VersionInfo Name="CodePage">1252</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
</Delphi.Personality>
</BorlandProject>

View File

@@ -0,0 +1,48 @@
package tb2k_d10;
{$R *.res}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3FC00000}
{$DESCRIPTION 'Toolbar2000 Components (Jordan Russell)'}
{$RUNONLY}
{$IMPLICITBUILD OFF}
requires
vcl;
contains
TB2Version in '..\Source\TB2Version.pas',
TB2Toolbar in '..\Source\TB2Toolbar.pas',
TB2Consts in '..\Source\TB2Consts.pas',
TB2Dock in '..\Source\TB2Dock.pas',
TB2ExtItems in '..\Source\TB2ExtItems.pas',
TB2Item in '..\Source\TB2Item.pas',
TB2Common in '..\Source\TB2Common.pas',
TB2Hook in '..\Source\TB2Hook.pas',
TB2ToolWindow in '..\Source\TB2ToolWindow.pas',
TB2MRU in '..\Source\TB2MRU.pas',
TB2Anim in '..\Source\TB2Anim.pas',
TB2MDI in '..\Source\TB2MDI.pas',
TB2Acc in '..\Source\TB2Acc.pas';
end.

View File

@@ -0,0 +1,49 @@
package tb2k_d11;
{$R *.res}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3FC00000}
{$DESCRIPTION 'Toolbar2000 Components (Jordan Russell)'}
{$RUNONLY}
{$IMPLICITBUILD OFF}
{$DEFINE DEBUG}
requires
rtl,
vcl;
contains
TB2Version in '..\Source\TB2Version.pas',
TB2Toolbar in '..\Source\TB2Toolbar.pas',
TB2Consts in '..\Source\TB2Consts.pas',
TB2Dock in '..\Source\TB2Dock.pas',
TB2ExtItems in '..\Source\TB2ExtItems.pas',
TB2Item in '..\Source\TB2Item.pas',
TB2Common in '..\Source\TB2Common.pas',
TB2Hook in '..\Source\TB2Hook.pas',
TB2ToolWindow in '..\Source\TB2ToolWindow.pas',
TB2MRU in '..\Source\TB2MRU.pas',
TB2Anim in '..\Source\TB2Anim.pas',
TB2MDI in '..\Source\TB2MDI.pas',
TB2Acc in '..\Source\TB2Acc.pas';
end.

View File

@@ -0,0 +1,60 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{42085cda-8f18-4859-a681-a3109ff5e295}</ProjectGuid>
<MainSource>tb2k_d11.dpk</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>tb2k_d11.bpl</DCC_DependencyCheckOutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE</DCC_Define>
<DCC_CBuilderOutput>All</DCC_CBuilderOutput>
<DCC_ImageBase>3FC00000</DCC_ImageBase>
<DCC_DcuOutput>..\Lib\D11</DCC_DcuOutput>
<DCC_ObjOutput>..\Lib\D11</DCC_ObjOutput>
<DCC_HppOutput>..\Lib\D11</DCC_HppOutput>
<DCC_BpiOutput>..\Lib\D11</DCC_BpiOutput>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_Define>DEBUG</DCC_Define>
<DCC_CBuilderOutput>All</DCC_CBuilderOutput>
<DCC_ImageBase>3FC00000</DCC_ImageBase>
<DCC_DcuOutput>..\Lib\D11</DCC_DcuOutput>
<DCC_ObjOutput>..\Lib\D11</DCC_ObjOutput>
<DCC_HppOutput>..\Lib\D11</DCC_HppOutput>
<DCC_BpiOutput>..\Lib\D11</DCC_BpiOutput>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">True</Package_Options><Package_Options Name="PackageDescription">Toolbar2000 Components (Jordan Russell)</Package_Options></Package_Options><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">1033</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">tb2k_d11.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>
<DelphiCompile Include="tb2k_d11.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="rtl.dcp" />
<DCCReference Include="vcl.dcp" />
<DCCReference Include="..\Source\TB2Acc.pas" />
<DCCReference Include="..\Source\TB2Anim.pas" />
<DCCReference Include="..\Source\TB2Common.pas" />
<DCCReference Include="..\Source\TB2Consts.pas" />
<DCCReference Include="..\Source\TB2Dock.pas" />
<DCCReference Include="..\Source\TB2ExtItems.pas" />
<DCCReference Include="..\Source\TB2Hook.pas" />
<DCCReference Include="..\Source\TB2Item.pas" />
<DCCReference Include="..\Source\TB2MDI.pas" />
<DCCReference Include="..\Source\TB2MRU.pas" />
<DCCReference Include="..\Source\TB2Toolbar.pas" />
<DCCReference Include="..\Source\TB2ToolWindow.pas" />
<DCCReference Include="..\Source\TB2Version.pas" />
</ItemGroup>
</Project>

View File

@@ -0,0 +1,48 @@
package tb2k_d12;
{$R *.res}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3FC00000}
{$DESCRIPTION 'Toolbar2000 Components (Jordan Russell)'}
{$RUNONLY}
{$IMPLICITBUILD OFF}
requires
rtl,
vcl;
contains
TB2Version in '..\Source\TB2Version.pas',
TB2Toolbar in '..\Source\TB2Toolbar.pas',
TB2Consts in '..\Source\TB2Consts.pas',
TB2Dock in '..\Source\TB2Dock.pas',
TB2ExtItems in '..\Source\TB2ExtItems.pas',
TB2Item in '..\Source\TB2Item.pas',
TB2Common in '..\Source\TB2Common.pas',
TB2Hook in '..\Source\TB2Hook.pas',
TB2ToolWindow in '..\Source\TB2ToolWindow.pas',
TB2MRU in '..\Source\TB2MRU.pas',
TB2Anim in '..\Source\TB2Anim.pas',
TB2MDI in '..\Source\TB2MDI.pas',
TB2Acc in '..\Source\TB2Acc.pas';
end.

View File

@@ -0,0 +1,130 @@
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{1EA50D74-2EC7-4FC2-AA38-747CD0E9BCCA}</ProjectGuid>
<MainSource>tb2k_d12.dpk</MainSource>
<ProjectVersion>12.0</ProjectVersion>
<Config Condition="'$(Config)'==''">Debug</Config>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
<Cfg_1>true</Cfg_1>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
<Cfg_2>true</Cfg_2>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<RuntimeOnlyPackage>true</RuntimeOnlyPackage>
<DesignOnlyPackage>false</DesignOnlyPackage>
<DCC_DcuOutput>..\Lib\D12</DCC_DcuOutput>
<DCC_ObjOutput>..\Lib\D12</DCC_ObjOutput>
<DCC_HppOutput>..\Lib\D12</DCC_HppOutput>
<DCC_BpiOutput>..\Lib\D12</DCC_BpiOutput>
<DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
<DCC_CBuilderOutput>All</DCC_CBuilderOutput>
<DCC_Description>Toolbar2000 Components (Jordan Russell)</DCC_Description>
<DCC_ImageBase>3FC00000</DCC_ImageBase>
<DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
<GenPackage>true</GenPackage>
<DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;$(DCC_UnitAlias)</DCC_UnitAlias>
<DCC_Platform>x86</DCC_Platform>
<DCC_DependencyCheckOutputName>tb2k_d12.bpl</DCC_DependencyCheckOutputName>
<DCC_N>false</DCC_N>
<DCC_S>false</DCC_S>
<GenDll>true</GenDll>
<DCC_E>false</DCC_E>
<DCC_F>false</DCC_F>
<DCC_K>false</DCC_K>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_DebugInformation>false</DCC_DebugInformation>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
</PropertyGroup>
<ItemGroup>
<DelphiCompile Include="tb2k_d12.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/>
<DCCReference Include="..\Source\TB2Version.pas"/>
<DCCReference Include="..\Source\TB2Toolbar.pas"/>
<DCCReference Include="..\Source\TB2Consts.pas"/>
<DCCReference Include="..\Source\TB2Dock.pas"/>
<DCCReference Include="..\Source\TB2ExtItems.pas"/>
<DCCReference Include="..\Source\TB2Item.pas"/>
<DCCReference Include="..\Source\TB2Common.pas"/>
<DCCReference Include="..\Source\TB2Hook.pas"/>
<DCCReference Include="..\Source\TB2ToolWindow.pas"/>
<DCCReference Include="..\Source\TB2MRU.pas"/>
<DCCReference Include="..\Source\TB2Anim.pas"/>
<DCCReference Include="..\Source\TB2MDI.pas"/>
<DCCReference Include="..\Source\TB2Acc.pas"/>
<BuildConfiguration Include="Base">
<Key>Base</Key>
</BuildConfiguration>
<BuildConfiguration Include="Debug">
<Key>Cfg_2</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
<BuildConfiguration Include="Release">
<Key>Cfg_1</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
</ItemGroup>
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<Delphi.Personality>
<Source>
<Source Name="MainSource">tb2k_d12.dpk</Source>
</Source>
<Parameters>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<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">1033</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>
</Delphi.Personality>
</BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion>
</ProjectExtensions>
</Project>

View File

@@ -0,0 +1,47 @@
package tb2k_d4;
{$R *.RES}
{$ALIGN ON}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3FC00000}
{$DESCRIPTION 'Toolbar2000 Components (Jordan Russell)'}
{$IMPLICITBUILD ON}
requires
vcl40;
contains
TB2Version in '..\Source\TB2Version.pas',
TB2Toolbar in '..\Source\TB2Toolbar.pas',
TB2Consts in '..\Source\TB2Consts.pas',
TB2Dock in '..\Source\TB2Dock.pas',
TB2ExtItems in '..\Source\TB2ExtItems.pas',
TB2Item in '..\Source\TB2Item.pas',
TB2Common in '..\Source\TB2Common.pas',
TB2Hook in '..\Source\TB2Hook.pas',
TB2ToolWindow in '..\Source\TB2ToolWindow.pas',
TB2MRU in '..\Source\TB2MRU.pas',
TB2Anim in '..\Source\TB2Anim.pas',
TB2MDI in '..\Source\TB2MDI.pas',
TB2Acc in '..\Source\TB2Acc.pas';
end.

View File

@@ -0,0 +1,48 @@
package tb2k_d5;
{$R *.RES}
{$ALIGN ON}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3FC00000}
{$DESCRIPTION 'Toolbar2000 Components (Jordan Russell)'}
{$RUNONLY}
{$IMPLICITBUILD ON}
requires
vcl50;
contains
TB2Version in '..\Source\TB2Version.pas',
TB2Toolbar in '..\Source\TB2Toolbar.pas',
TB2Consts in '..\Source\TB2Consts.pas',
TB2Dock in '..\Source\TB2Dock.pas',
TB2ExtItems in '..\Source\TB2ExtItems.pas',
TB2Item in '..\Source\TB2Item.pas',
TB2Common in '..\Source\TB2Common.pas',
TB2Hook in '..\Source\TB2Hook.pas',
TB2ToolWindow in '..\Source\TB2ToolWindow.pas',
TB2MRU in '..\Source\TB2MRU.pas',
TB2Anim in '..\Source\TB2Anim.pas',
TB2MDI in '..\Source\TB2MDI.pas',
TB2Acc in '..\Source\TB2Acc.pas';
end.

View File

@@ -0,0 +1,48 @@
package tb2k_d6;
{$R *.res}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3FC00000}
{$DESCRIPTION 'Toolbar2000 Components (Jordan Russell)'}
{$RUNONLY}
{$IMPLICITBUILD ON}
requires
vcl;
contains
TB2Version in '..\Source\TB2Version.pas',
TB2Toolbar in '..\Source\TB2Toolbar.pas',
TB2Consts in '..\Source\TB2Consts.pas',
TB2Dock in '..\Source\TB2Dock.pas',
TB2ExtItems in '..\Source\TB2ExtItems.pas',
TB2Item in '..\Source\TB2Item.pas',
TB2Common in '..\Source\TB2Common.pas',
TB2Hook in '..\Source\TB2Hook.pas',
TB2ToolWindow in '..\Source\TB2ToolWindow.pas',
TB2MRU in '..\Source\TB2MRU.pas',
TB2Anim in '..\Source\TB2Anim.pas',
TB2MDI in '..\Source\TB2MDI.pas',
TB2Acc in '..\Source\TB2Acc.pas';
end.

View File

@@ -0,0 +1,44 @@
package tb2k_d7;
{$MODE Delphi}
{$R *.res}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3FC00000}
{$DESCRIPTION 'Toolbar2000 Components (Jordan Russell)'}
{$RUNONLY}
{$IMPLICITBUILD ON}
requires
vcl;
contains
TB2Version in '..\Source\TB2Version.pas',
TB2Toolbar in '..\Source\TB2Toolbar.pas',
TB2Consts in '..\Source\TB2Consts.pas',
TB2Dock in '..\Source\TB2Dock.pas',
TB2ExtItems in '..\Source\TB2ExtItems.pas',
TB2Item in '..\Source\TB2Item.pas',
TB2Common in '..\Source\TB2Common.pas',
TB2Hook in '..\Source\TB2Hook.pas',
TB2ToolWindow in '..\Source\TB2ToolWindow.pas',
TB2MRU in '..\Source\TB2MRU.pas',
TB2Anim in '..\Source\TB2Anim.pas',
TB2MDI in '..\Source\TB2MDI.pas',
TB2Acc in '..\Source\TB2Acc.pas';
end.

View File

@@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<CONFIG>
<Package Version="4">
<PathDelim Value="\"/>
<Name Value="tb2k_d7"/>
<Type Value="RunAndDesignTime"/>
<CompilerOptions>
<Version Value="11"/>
<PathDelim Value="\"/>
<SearchPaths>
<IncludeFiles Value="D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\"/>
<OtherUnitFiles Value="D:\Programs\Programming\lazarus\external_components\ToolBar 2000\Source\"/>
<UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)\"/>
</SearchPaths>
<Parsing>
<SyntaxOptions>
<SyntaxMode Value="delphi"/>
</SyntaxOptions>
</Parsing>
<Other>
<CustomOptions Value="-dBorland -dVer150 -dDelphi7 -dCompiler6_Up -dPUREPASCAL"/>
</Other>
</CompilerOptions>
<Files Count="13">
<Item1>
<Filename Value="..\Source\TB2Version.pas"/>
<UnitName Value="TB2Version"/>
</Item1>
<Item2>
<Filename Value="..\Source\TB2Toolbar.pas"/>
<UnitName Value="TB2Toolbar"/>
</Item2>
<Item3>
<Filename Value="..\Source\TB2Consts.pas"/>
<UnitName Value="TB2Consts"/>
</Item3>
<Item4>
<Filename Value="..\Source\TB2Dock.pas"/>
<UnitName Value="TB2Dock"/>
</Item4>
<Item5>
<Filename Value="..\Source\TB2ExtItems.pas"/>
<UnitName Value="TB2ExtItems"/>
</Item5>
<Item6>
<Filename Value="..\Source\TB2Item.pas"/>
<UnitName Value="TB2Item"/>
</Item6>
<Item7>
<Filename Value="..\Source\TB2Common.pas"/>
<UnitName Value="TB2Common"/>
</Item7>
<Item8>
<Filename Value="..\Source\TB2Hook.pas"/>
<UnitName Value="TB2Hook"/>
</Item8>
<Item9>
<Filename Value="..\Source\TB2ToolWindow.pas"/>
<UnitName Value="TB2ToolWindow"/>
</Item9>
<Item10>
<Filename Value="..\Source\TB2MRU.pas"/>
<UnitName Value="TB2MRU"/>
</Item10>
<Item11>
<Filename Value="..\Source\TB2Anim.pas"/>
<UnitName Value="TB2Anim"/>
</Item11>
<Item12>
<Filename Value="..\Source\TB2MDI.pas"/>
<UnitName Value="TB2MDI"/>
</Item12>
<Item13>
<Filename Value="..\Source\TB2Acc.pas"/>
<UnitName Value="TB2Acc"/>
</Item13>
</Files>
<RequiredPkgs Count="1">
<Item1>
<PackageName Value="LCL"/>
</Item1>
</RequiredPkgs>
<UsageOptions>
<UnitPath Value="$(PkgOutDir)"/>
</UsageOptions>
<PublishOptions>
<Version Value="2"/>
</PublishOptions>
</Package>
</CONFIG>

View File

@@ -0,0 +1,21 @@
{ This file was automatically created by Lazarus. Do not edit!
This source is only used to compile and install the package.
}
unit tb2k_d7;
interface
uses
TB2Version, TB2Toolbar, TB2Consts, TB2Dock, TB2ExtItems, TB2Item, TB2Common,
TB2Hook, TB2ToolWindow, TB2MRU, TB2Anim, TB2MDI, TB2Acc, LazarusPackageIntf;
implementation
procedure Register;
begin
end;
initialization
RegisterPackage('tb2k_d7', @Register);
end.

View File

@@ -0,0 +1,48 @@
package tb2k_d9;
{$R *.res}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3FC00000}
{$DESCRIPTION 'Toolbar2000 Components (Jordan Russell)'}
{$RUNONLY}
{$IMPLICITBUILD ON}
requires
vcl;
contains
TB2Version in '..\Source\TB2Version.pas',
TB2Toolbar in '..\Source\TB2Toolbar.pas',
TB2Consts in '..\Source\TB2Consts.pas',
TB2Dock in '..\Source\TB2Dock.pas',
TB2ExtItems in '..\Source\TB2ExtItems.pas',
TB2Item in '..\Source\TB2Item.pas',
TB2Common in '..\Source\TB2Common.pas',
TB2Hook in '..\Source\TB2Hook.pas',
TB2ToolWindow in '..\Source\TB2ToolWindow.pas',
TB2MRU in '..\Source\TB2MRU.pas',
TB2Anim in '..\Source\TB2Anim.pas',
TB2MDI in '..\Source\TB2MDI.pas',
TB2Acc in '..\Source\TB2Acc.pas';
end.

View File

@@ -0,0 +1,197 @@
<?xml version="1.0" encoding="utf-8"?>
<BorlandProject>
<PersonalityInfo>
<Option>
<Option Name="Personality">DelphiDotNet.Personality</Option>
<Option Name="ProjectType">Package</Option>
<Option Name="Version">2.0</Option>
<Option Name="GUID">{BE0CD3E8-CD41-4DE5-84E8-8D8CFB0FC834}</Option>
</Option>
</PersonalityInfo>
<DelphiDotNet.Personality>
<Source>
<Source Name="MainSource">tb2k_dn10.dpk</Source>
</Source>
<FileVersion>
<FileVersion Name="Version">7.0</FileVersion>
</FileVersion>
<Compiler>
<Compiler Name="A">0</Compiler>
<Compiler Name="B">0</Compiler>
<Compiler Name="C">1</Compiler>
<Compiler Name="D">1</Compiler>
<Compiler Name="E">0</Compiler>
<Compiler Name="F">0</Compiler>
<Compiler Name="G">1</Compiler>
<Compiler Name="H">1</Compiler>
<Compiler Name="I">1</Compiler>
<Compiler Name="J">0</Compiler>
<Compiler Name="K">0</Compiler>
<Compiler Name="L">1</Compiler>
<Compiler Name="M">0</Compiler>
<Compiler Name="N">1</Compiler>
<Compiler Name="O">1</Compiler>
<Compiler Name="P">1</Compiler>
<Compiler Name="Q">0</Compiler>
<Compiler Name="R">0</Compiler>
<Compiler Name="S">0</Compiler>
<Compiler Name="T">0</Compiler>
<Compiler Name="U">0</Compiler>
<Compiler Name="V">1</Compiler>
<Compiler Name="W">0</Compiler>
<Compiler Name="X">1</Compiler>
<Compiler Name="Y">1</Compiler>
<Compiler Name="Z">1</Compiler>
<Compiler Name="ShowHints">True</Compiler>
<Compiler Name="ShowWarnings">True</Compiler>
<Compiler Name="UnitAliases">WinTypes=Borland.Vcl.Windows;WinProcs=Borland.Vcl.Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;</Compiler>
<Compiler Name="NamespacePrefix"></Compiler>
<Compiler Name="GenerateDocumentation">False</Compiler>
<Compiler Name="DefaultNamespace"></Compiler>
<Compiler Name="SymbolDeprecated">True</Compiler>
<Compiler Name="SymbolLibrary">True</Compiler>
<Compiler Name="SymbolPlatform">True</Compiler>
<Compiler Name="SymbolExperimental">True</Compiler>
<Compiler Name="UnitLibrary">True</Compiler>
<Compiler Name="UnitPlatform">False</Compiler>
<Compiler Name="UnitDeprecated">True</Compiler>
<Compiler Name="UnitExperimental">True</Compiler>
<Compiler Name="HResultCompat">True</Compiler>
<Compiler Name="HidingMember">True</Compiler>
<Compiler Name="HiddenVirtual">True</Compiler>
<Compiler Name="Garbage">True</Compiler>
<Compiler Name="BoundsError">True</Compiler>
<Compiler Name="ZeroNilCompat">True</Compiler>
<Compiler Name="StringConstTruncated">True</Compiler>
<Compiler Name="ForLoopVarVarPar">True</Compiler>
<Compiler Name="TypedConstVarPar">True</Compiler>
<Compiler Name="AsgToTypedConst">True</Compiler>
<Compiler Name="CaseLabelRange">True</Compiler>
<Compiler Name="ForVariable">True</Compiler>
<Compiler Name="ConstructingAbstract">True</Compiler>
<Compiler Name="ComparisonFalse">True</Compiler>
<Compiler Name="ComparisonTrue">True</Compiler>
<Compiler Name="ComparingSignedUnsigned">True</Compiler>
<Compiler Name="CombiningSignedUnsigned">True</Compiler>
<Compiler Name="UnsupportedConstruct">True</Compiler>
<Compiler Name="FileOpen">True</Compiler>
<Compiler Name="FileOpenUnitSrc">True</Compiler>
<Compiler Name="BadGlobalSymbol">True</Compiler>
<Compiler Name="DuplicateConstructorDestructor">True</Compiler>
<Compiler Name="InvalidDirective">True</Compiler>
<Compiler Name="PackageNoLink">True</Compiler>
<Compiler Name="PackageThreadVar">True</Compiler>
<Compiler Name="ImplicitImport">True</Compiler>
<Compiler Name="HPPEMITIgnored">True</Compiler>
<Compiler Name="NoRetVal">True</Compiler>
<Compiler Name="UseBeforeDef">True</Compiler>
<Compiler Name="ForLoopVarUndef">True</Compiler>
<Compiler Name="UnitNameMismatch">True</Compiler>
<Compiler Name="NoCFGFileFound">True</Compiler>
<Compiler Name="ImplicitVariants">True</Compiler>
<Compiler Name="UnicodeToLocale">True</Compiler>
<Compiler Name="LocaleToUnicode">True</Compiler>
<Compiler Name="ImagebaseMultiple">True</Compiler>
<Compiler Name="SuspiciousTypecast">True</Compiler>
<Compiler Name="PrivatePropAccessor">True</Compiler>
<Compiler Name="UnsafeType">True</Compiler>
<Compiler Name="UnsafeCode">True</Compiler>
<Compiler Name="UnsafeCast">True</Compiler>
<Compiler Name="OptionTruncated">True</Compiler>
<Compiler Name="WideCharReduced">True</Compiler>
<Compiler Name="DuplicatesIgnored">True</Compiler>
<Compiler Name="UnitInitSeq">True</Compiler>
<Compiler Name="LocalPInvoke">True</Compiler>
<Compiler Name="MessageDirective">True</Compiler>
<Compiler Name="CodePage"></Compiler>
</Compiler>
<Linker>
<Linker Name="MapFile">0</Linker>
<Linker Name="OutputObjs">0</Linker>
<Linker Name="GenerateHpps">False</Linker>
<Linker Name="ConsoleApp">1</Linker>
<Linker Name="DebugInfo">True</Linker>
<Linker Name="RemoteSymbols">False</Linker>
<Linker Name="GenerateDRC">False</Linker>
<Linker Name="MinStackSize">4096</Linker>
<Linker Name="MaxStackSize">1048576</Linker>
<Linker Name="ImageBase">1061158912</Linker>
<Linker Name="ExeDescription">Toolbar2000 .NET Components (Jordan Russell)</Linker>
</Linker>
<Directories>
<Directories Name="OutputDir"></Directories>
<Directories Name="UnitOutputDir">..\Lib\DN10</Directories>
<Directories Name="PackageDLLOutputDir">$(BDSPROJECTSDIR)\Bpl</Directories>
<Directories Name="PackageDCPOutputDir">$(BDSPROJECTSDIR)\Bpl</Directories>
<Directories Name="SearchPath"></Directories>
<Directories Name="Packages"></Directories>
<Directories Name="Conditionals"></Directories>
<Directories Name="DebugSourceDirs"></Directories>
<Directories Name="UsePackages">False</Directories>
</Directories>
<Parameters>
<Parameters Name="RunParams"></Parameters>
<Parameters Name="HostApplication"></Parameters>
<Parameters Name="Launcher"></Parameters>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="DebugCWD"></Parameters>
<Parameters Name="Debug Symbols Search Path"></Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<Language>
<Language Name="ActiveLang"></Language>
<Language Name="ProjectLang">$00000000</Language>
<Language Name="RootDir"></Language>
</Language>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</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">1033</VersionInfo>
<VersionInfo Name="CodePage">1252</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
<FileList>
<File FileName="$(SystemRoot)\microsoft.net\framework\v1.1.4322\System.Drawing.dll" ContainerId="DelphiDotNetAssemblyCompiler" ModuleName="System.Drawing" AssemblyName="System.Drawing" Version="1.0.5000.0" LinkUnits="False"/>
<File FileName="Borland.Delphi.dll" ContainerId="DelphiDotNetAssemblyCompiler" ModuleName="Borland.Delphi" AssemblyName="Borland.Delphi" Version="10.0.4143.0" LinkUnits="False"/>
<File FileName="Borland.Vcl.dll" ContainerId="DelphiDotNetAssemblyCompiler" ModuleName="Borland.Vcl" AssemblyName="Borland.Vcl" Version="10.0.4143.0" LinkUnits="False"/>
<File FileName="Borland.VclRtl.dll" ContainerId="DelphiDotNetAssemblyCompiler" ModuleName="Borland.VclRtl" AssemblyName="Borland.VclRtl" Version="10.0.4143.0" LinkUnits="False"/>
<File FileName="..\Source\TB2Version.pas" ContainerId="" ModuleName="TB2Version"/>
<File FileName="..\Source\TB2Toolbar.pas" ContainerId="" ModuleName="TB2Toolbar"/>
<File FileName="..\Source\TB2Consts.pas" ContainerId="" ModuleName="TB2Consts"/>
<File FileName="..\Source\TB2Dock.pas" ContainerId="" ModuleName="TB2Dock"/>
<File FileName="..\Source\TB2ExtItems.pas" ContainerId="" ModuleName="TB2ExtItems"/>
<File FileName="..\Source\TB2Item.pas" ContainerId="" ModuleName="TB2Item"/>
<File FileName="..\Source\TB2Common.pas" ContainerId="" ModuleName="TB2Common"/>
<File FileName="..\Source\TB2Hook.pas" ContainerId="" ModuleName="TB2Hook"/>
<File FileName="..\Source\TB2ToolWindow.pas" ContainerId="" ModuleName="TB2ToolWindow"/>
<File FileName="..\Source\TB2MRU.pas" ContainerId="" ModuleName="TB2MRU"/>
<File FileName="..\Source\TB2Anim.pas" ContainerId="" ModuleName="TB2Anim"/>
<File FileName="..\Source\TB2MDI.pas" ContainerId="" ModuleName="TB2MDI"/>
<File FileName="..\Source\TB2Acc.pas" ContainerId="" ModuleName="TB2Acc"/>
<File FileName="..\Source\TB2OleMarshal.pas" ContainerId="" ModuleName="TB2OleMarshal"/>
</FileList>
</DelphiDotNet.Personality>
</BorlandProject>

View File

@@ -0,0 +1,120 @@
package tb2k_dn10;
{$ALIGN 0}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F400000}
{$DESCRIPTION 'Toolbar2000 .NET Components (Jordan Russell)'}
{$RUNONLY}
{$IMPLICITBUILD OFF}
requires
System.Drawing,
Borland.Delphi,
Borland.Vcl,
Borland.VclRtl;
contains
TB2Version in '..\Source\TB2Version.pas',
TB2Toolbar in '..\Source\TB2Toolbar.pas',
TB2Consts in '..\Source\TB2Consts.pas',
TB2Dock in '..\Source\TB2Dock.pas',
TB2ExtItems in '..\Source\TB2ExtItems.pas',
TB2Item in '..\Source\TB2Item.pas',
TB2Common in '..\Source\TB2Common.pas',
TB2Hook in '..\Source\TB2Hook.pas',
TB2ToolWindow in '..\Source\TB2ToolWindow.pas',
TB2MRU in '..\Source\TB2MRU.pas',
TB2Anim in '..\Source\TB2Anim.pas',
TB2MDI in '..\Source\TB2MDI.pas',
TB2Acc in '..\Source\TB2Acc.pas',
TB2OleMarshal in '..\Source\TB2OleMarshal.pas';
[assembly: AssemblyDescription('')]
[assembly: AssemblyConfiguration('')]
[assembly: AssemblyCompany('')]
[assembly: AssemblyProduct('')]
[assembly: AssemblyCopyright('')]
[assembly: AssemblyTrademark('')]
[assembly: AssemblyCulture('')]
// The Delphi compiler controls the AssemblyTitleAttribute via the ExeDescription.
// You can set this in the IDE via the Project Options.
// Manually setting the AssemblyTitle attribute below will override the IDE
// setting.
// [assembly: AssemblyTitle('')]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
//[assembly: AssemblyVersion('1.0.*')]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile('mykey.snk')], provided your output
// directory is the project directory (the default).
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile('')]
[assembly: AssemblyKeyName('')]
//
// Use the attributes below to control the COM visibility of your assembly. By
// default the entire assembly is visible to COM. Setting ComVisible to false
// is the recommended default for your assembly. To then expose a class and interface
// to COM set ComVisible to true on each one. It is also recommended to add a
// Guid attribute.
//
[assembly: ComVisible(False)]
//[assembly: Guid('')]
//[assembly: TypeLibVersion(1, 0)]
end.

View File

@@ -0,0 +1,120 @@
package tb2k_dn11;
{$ALIGN 0}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F400000}
{$DESCRIPTION 'Toolbar2000 .NET Components (Jordan Russell)'}
{$RUNONLY}
{$IMPLICITBUILD OFF}
{$DEFINE DEBUG}
requires
Borland.Delphi,
Borland.VclRtl,
Borland.Vcl;
contains
TB2Version in '..\Source\TB2Version.pas',
TB2Toolbar in '..\Source\TB2Toolbar.pas',
TB2Consts in '..\Source\TB2Consts.pas',
TB2Dock in '..\Source\TB2Dock.pas',
TB2ExtItems in '..\Source\TB2ExtItems.pas',
TB2Item in '..\Source\TB2Item.pas',
TB2Common in '..\Source\TB2Common.pas',
TB2Hook in '..\Source\TB2Hook.pas',
TB2ToolWindow in '..\Source\TB2ToolWindow.pas',
TB2MRU in '..\Source\TB2MRU.pas',
TB2Anim in '..\Source\TB2Anim.pas',
TB2MDI in '..\Source\TB2MDI.pas',
TB2Acc in '..\Source\TB2Acc.pas',
TB2OleMarshal in '..\Source\TB2OleMarshal.pas';
[assembly: AssemblyDescription('')]
[assembly: AssemblyConfiguration('')]
[assembly: AssemblyCompany('')]
[assembly: AssemblyProduct('')]
[assembly: AssemblyCopyright('')]
[assembly: AssemblyTrademark('')]
[assembly: AssemblyCulture('')]
// The Delphi compiler controls the AssemblyTitleAttribute via the ExeDescription.
// You can set this in the IDE via the Project Options.
// Manually setting the AssemblyTitle attribute below will override the IDE
// setting.
// [assembly: AssemblyTitle('')]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
//[assembly: AssemblyVersion('1.0.*')]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile('mykey.snk')], provided your output
// directory is the project directory (the default).
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile('')]
[assembly: AssemblyKeyName('')]
//
// Use the attributes below to control the COM visibility of your assembly. By
// default the entire assembly is visible to COM. Setting ComVisible to false
// is the recommended default for your assembly. To then expose a class and interface
// to COM set ComVisible to true on each one. It is also recommended to add a
// Guid attribute.
//
[assembly: ComVisible(False)]
//[assembly: Guid('')]
//[assembly: TypeLibVersion(1, 0)]
end.

View File

@@ -0,0 +1,82 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{e64e9cd0-bdee-45e5-a97a-7e85f9f52092}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCCIL</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>tb2k_dn11.dll</DCC_DependencyCheckOutputName>
<MainSource>tb2k_dn11.dpk</MainSource>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE</DCC_Define>
<DCC_ImageBase>3F400000</DCC_ImageBase>
<DCC_UNIT_PLATFORM>False</DCC_UNIT_PLATFORM>
<DCC_DcuOutput>..\Lib\DN11</DCC_DcuOutput>
<DCC_ObjOutput>..\Lib\DN11</DCC_ObjOutput>
<DCC_HppOutput>..\Lib\DN11</DCC_HppOutput>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
<DCC_DebugVN>True</DCC_DebugVN>
<DCC_Define>DEBUG</DCC_Define>
<DCC_ImageBase>3F400000</DCC_ImageBase>
<DCC_UNIT_PLATFORM>False</DCC_UNIT_PLATFORM>
<DCC_DcuOutput>..\Lib\DN11</DCC_DcuOutput>
<DCC_ObjOutput>..\Lib\DN11</DCC_ObjOutput>
<DCC_HppOutput>..\Lib\DN11</DCC_HppOutput>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>DelphiDotNet.Personality</Borland.Personality>
<Borland.ProjectType />
<BorlandProject>
<BorlandProject><DelphiDotNet.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">True</Package_Options><Package_Options Name="PackageDescription">Toolbar2000 .NET Components (Jordan Russell)</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</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">1033</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">tb2k_dn11.dpk</Source></Source></DelphiDotNet.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
<ItemGroup>
<Reference Include="Borland.VclRtl.dll">
<AssemblyName>Borland.VclRtl</AssemblyName>
<Version>11.0.5000.9245</Version>
<HintPath>Borland.VclRtl.dll</HintPath>
<AssemblyTag>Borland.VclRtl.dll</AssemblyTag>
<LinkUnits>False</LinkUnits>
</Reference>
<Reference Include="Borland.Vcl.dll">
<AssemblyName>Borland.Vcl</AssemblyName>
<Version>11.0.5000.9245</Version>
<HintPath>Borland.Vcl.dll</HintPath>
<AssemblyTag>Borland.Vcl.dll</AssemblyTag>
<LinkUnits>False</LinkUnits>
</Reference>
<Reference Include="Borland.Delphi.dll">
<AssemblyName>Borland.Delphi</AssemblyName>
<Version>11.0.5000.9245</Version>
<HintPath>Borland.Delphi.dll</HintPath>
<AssemblyTag>Borland.Delphi.dll</AssemblyTag>
<LinkUnits>False</LinkUnits>
</Reference>
</ItemGroup>
<ItemGroup>
<DelphiCompile Include="tb2k_dn11.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\Source\TB2Acc.pas" />
<DCCReference Include="..\Source\TB2Anim.pas" />
<DCCReference Include="..\Source\TB2Common.pas" />
<DCCReference Include="..\Source\TB2Consts.pas" />
<DCCReference Include="..\Source\TB2Dock.pas" />
<DCCReference Include="..\Source\TB2ExtItems.pas" />
<DCCReference Include="..\Source\TB2Hook.pas" />
<DCCReference Include="..\Source\TB2Item.pas" />
<DCCReference Include="..\Source\TB2MDI.pas" />
<DCCReference Include="..\Source\TB2MRU.pas" />
<DCCReference Include="..\Source\TB2OleMarshal.pas" />
<DCCReference Include="..\Source\TB2Toolbar.pas" />
<DCCReference Include="..\Source\TB2ToolWindow.pas" />
<DCCReference Include="..\Source\TB2Version.pas" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
</Project>

View File

@@ -0,0 +1,181 @@
# ---------------------------------------------------------------------------
!if !$d(BCB)
BCB = $(MAKEDIR)\..
!endif
# ---------------------------------------------------------------------------
# IDE SECTION
# ---------------------------------------------------------------------------
# The following section of the project makefile is managed by the BCB IDE.
# It is recommended to use the IDE to change any of the values in this
# section.
# ---------------------------------------------------------------------------
VERSION = BCB.04.04
# ---------------------------------------------------------------------------
PROJECT = tb2kdsgn_cb4.bpl
OBJFILES = ..\Source\TB2DsgnConverter.obj ..\Source\TB2DsgnItemEditor.obj \
..\Source\TB2DsgnConvertOptions.obj ..\Source\TB2Reg.obj tb2kdsgn_cb4.obj
RESFILES = ..\Source\TB2Reg.dcr
RESDEPEN = $(RESFILES) ..\Source\TB2DsgnConverter.dfm ..\Source\TB2DsgnItemEditor.dfm \
..\Source\TB2DsgnConvertOptions.dfm
LIBFILES =
LIBRARIES =
SPARELIBS = Vcl40.lib
PACKAGES = vcl40.bpi dclstd40.bpi tb2k_cb4.bpi
DEFFILE =
# ---------------------------------------------------------------------------
PATHCPP = .;
PATHASM = .;
PATHPAS = .;..\Source
PATHRC = .;
DEBUGLIBPATH = $(BCB)\lib\debug
RELEASELIBPATH = $(BCB)\lib\release
USERDEFINES =
SYSDEFINES = _RTLDLL;NO_STRICT;USEPACKAGES
# ---------------------------------------------------------------------------
CFLAG1 = -I..\Source;$(BCB)\include;$(BCB)\include\vcl -Od -Hc -H=$(BCB)\lib\vcl40.csm \
-w -Ve -r- -a8 -k -y -v -vi- -c -b- -w-par -w-inl -Vx -tWM \
-D$(SYSDEFINES);$(USERDEFINES)
PFLAGS = -U..\Source;$(BCB)\Projects\Lib;$(BCB)\lib\obj;$(BCB)\lib;$(RELEASELIBPATH) \
-I..\Source;$(BCB)\include;$(BCB)\include\vcl -$YD -$J- -v -JPHNE -M -LUdclstd40
RFLAGS = -i..\Source;$(BCB)\include;$(BCB)\include\vcl
AFLAGS = /i..\Source /i$(BCB)\include /i$(BCB)\include\vcl /mx /w2 /zd
LFLAGS = -L..\Source;$(BCB)\Projects\Lib;$(BCB)\lib\obj;$(BCB)\lib;$(RELEASELIBPATH) \
-D"Toolbar2000 Design Package (Jordan Russell)" -aa -Tpp -Gpd -x -Gn -Gl -Gi -v
# ---------------------------------------------------------------------------
ALLOBJ = c0pkg32.obj Memmgr.Lib $(PACKAGES) sysinit.obj $(OBJFILES)
ALLRES = $(RESFILES)
ALLLIB = $(LIBFILES) $(LIBRARIES) import32.lib cp32mti.lib
# ---------------------------------------------------------------------------
!ifdef IDEOPTIONS
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1033
CodePage=1252
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[Debugging]
DebugSourceDirs=$(BCB)\source\vcl
[Parameters]
RunParams=
HostApplication=
RemoteHost=
RemotePath=
RemoteDebug=0
[Compiler]
InMemoryExe=0
ShowInfoMsgs=0
!endif
# ---------------------------------------------------------------------------
# MAKE SECTION
# ---------------------------------------------------------------------------
# This section of the project file is not used by the BCB IDE. It is for
# the benefit of building from the command-line using the MAKE utility.
# ---------------------------------------------------------------------------
.autodepend
# ---------------------------------------------------------------------------
!if !$d(BCC32)
BCC32 = bcc32
!endif
!if !$d(CPP32)
CPP32 = cpp32
!endif
!if !$d(DCC32)
DCC32 = dcc32
!endif
!if !$d(TASM32)
TASM32 = tasm32
!endif
!if !$d(LINKER)
LINKER = ilink32
!endif
!if !$d(BRCC32)
BRCC32 = brcc32
!endif
# ---------------------------------------------------------------------------
!if $d(PATHCPP)
.PATH.CPP = $(PATHCPP)
.PATH.C = $(PATHCPP)
!endif
!if $d(PATHPAS)
.PATH.PAS = $(PATHPAS)
!endif
!if $d(PATHASM)
.PATH.ASM = $(PATHASM)
!endif
!if $d(PATHRC)
.PATH.RC = $(PATHRC)
!endif
# ---------------------------------------------------------------------------
$(PROJECT): $(OBJFILES) $(RESDEPEN) $(DEFFILE)
$(BCB)\BIN\$(LINKER) @&&!
$(LFLAGS) +
$(ALLOBJ), +
$(PROJECT),, +
$(ALLLIB), +
$(DEFFILE), +
$(ALLRES)
!
# ---------------------------------------------------------------------------
.pas.hpp:
$(BCB)\BIN\$(DCC32) $(PFLAGS) {$< }
.pas.obj:
$(BCB)\BIN\$(DCC32) $(PFLAGS) {$< }
.cpp.obj:
$(BCB)\BIN\$(BCC32) $(CFLAG1) -n$(@D) {$< }
.c.obj:
$(BCB)\BIN\$(BCC32) $(CFLAG1) -n$(@D) {$< }
.c.i:
$(BCB)\BIN\$(CPP32) $(CFLAG1) -n. {$< }
.cpp.i:
$(BCB)\BIN\$(CPP32) $(CFLAG1) -n. {$< }
.asm.obj:
$(BCB)\BIN\$(TASM32) $(AFLAGS) $<, $@
.rc.res:
$(BCB)\BIN\$(BRCC32) $(RFLAGS) -fo$@ $<
# ---------------------------------------------------------------------------

View File

@@ -0,0 +1,23 @@
// $jrsoftware: tb2k/Packages/tb2kdsgn_cb4.cpp,v 1.4 2002/11/14 18:15:59 jr Exp $
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
USEPACKAGE("vcl40.bpi");
USEFORMNS("..\Source\TB2DsgnConverter.pas", Tb2dsgnconverter, TBConverterForm);
USEFORMNS("..\Source\TB2DsgnItemEditor.pas", Tb2dsgnitemeditor, TBItemEditForm);
USEFORMNS("..\Source\TB2DsgnConvertOptions.pas", Tb2dsgnconvertoptions, TBConvertOptionsForm);
USEUNIT("..\Source\TB2Reg.pas");
USERES("..\Source\TB2Reg.dcr");
USEPACKAGE("dclstd40.bpi");
USEPACKAGE("tb2k_cb4.bpi");
//---------------------------------------------------------------------------
#pragma package(smart_init)
//---------------------------------------------------------------------------
// Package source.
//---------------------------------------------------------------------------
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void*)
{
return 1;
}
//---------------------------------------------------------------------------

View File

@@ -0,0 +1,95 @@
<?xml version='1.0' encoding='utf-8' ?>
<!-- C++Builder XML Project -->
<PROJECT>
<MACROS>
<VERSION value="BCB.05.03"/>
<PROJECT value="tb2kdsgn_cb5.bpl"/>
<OBJFILES value="..\Source\TB2DsgnConverter.obj ..\Source\TB2DsgnItemEditor.obj
..\Source\TB2DsgnConvertOptions.obj ..\Source\TB2Reg.obj tb2kdsgn_cb5.obj"/>
<RESFILES value="..\Source\TB2Reg.dcr"/>
<IDLFILES value=""/>
<DEFFILE value=""/>
<RESDEPEN value="$(RESFILES) ..\Source\TB2DsgnConverter.dfm ..\Source\TB2DsgnItemEditor.dfm
..\Source\TB2DsgnConvertOptions.dfm"/>
<LIBFILES value=""/>
<LIBRARIES value=""/>
<SPARELIBS value="vcl50.lib dclstd50.lib"/>
<PACKAGES value="vcl50.bpi dclstd50.bpi tb2k_cb5.bpi"/>
<PATHCPP value=".;"/>
<PATHPAS value=".;..\Source"/>
<PATHRC value=".;"/>
<PATHASM value=".;"/>
<DEBUGLIBPATH value="$(BCB)\lib\debug"/>
<RELEASELIBPATH value="$(BCB)\lib\release"/>
<LINKER value="ilink32"/>
<USERDEFINES value=""/>
<SYSDEFINES value="_RTLDLL;NO_STRICT;USEPACKAGES"/>
<MAINSOURCE value="tb2kdsgn_cb5.cpp"/>
<INCLUDEPATH value="..\Source;$(BCB)\include;$(BCB)\include\vcl"/>
<LIBPATH value="..\Source;$(BCB)\Projects\Lib;$(BCB)\lib\obj;$(BCB)\lib"/>
<WARNINGS value="-w-par -w-8027 -w-8026"/>
<WARNOPTSTR value=""/>
</MACROS>
<OPTIONS>
<CFLAG1 value="-Od -H=$(BCB)\lib\vcl50.csm -Hc -Vx -Ve -X- -r- -a8 -b- -k -y -v -vi- -c
-tWM"/>
<PFLAGS value="-$YD -$J- -v -JPHNE -M -LUdclstd50"/>
<RFLAGS value=""/>
<AFLAGS value="/mx /w2 /zd"/>
<LFLAGS value="-D&quot;Toolbar2000 Design Package (Jordan Russell)&quot; -aa -Tpp -Gpd -x -Gn -Gl
-Gi -v"/>
</OPTIONS>
<LINKER>
<ALLOBJ value="c0pkg32.obj $(PACKAGES) Memmgr.Lib sysinit.obj $(OBJFILES)"/>
<ALLRES value="$(RESFILES)"/>
<ALLLIB value="$(LIBFILES) $(LIBRARIES) import32.lib cp32mti.lib"/>
</LINKER>
<IDEOPTIONS>
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1033
CodePage=1252
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[Debugging]
DebugSourceDirs=$(BCB)\source\vcl
[Parameters]
RunParams=
HostApplication=
RemoteHost=
RemotePath=
RemoteDebug=0
[Compiler]
ShowInfoMsgs=0
LinkDebugVcl=0
LinkCGLIB=0
[Language]
ActiveLang=
ProjectLang=
RootDir=
</IDEOPTIONS>
</PROJECT>

View File

@@ -0,0 +1,23 @@
// $jrsoftware: tb2k/Packages/tb2kdsgn_cb5.cpp,v 1.4 2002/11/14 18:15:59 jr Exp $
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
USEPACKAGE("vcl50.bpi");
USEFORMNS("..\Source\TB2DsgnConverter.pas", Tb2dsgnconverter, TBConverterForm);
USEFORMNS("..\Source\TB2DsgnItemEditor.pas", Tb2dsgnitemeditor, TBItemEditForm);
USEFORMNS("..\Source\TB2DsgnConvertOptions.pas", Tb2dsgnconvertoptions, TBConvertOptionsForm);
USEUNIT("..\Source\TB2Reg.pas");
USERES("..\Source\TB2Reg.dcr");
USEPACKAGE("dclstd50.bpi");
USEPACKAGE("tb2k_cb5.bpi");
//---------------------------------------------------------------------------
#pragma package(smart_init)
//---------------------------------------------------------------------------
// Package source.
//---------------------------------------------------------------------------
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void*)
{
return 1;
}
//---------------------------------------------------------------------------

View File

@@ -0,0 +1,125 @@
<?xml version='1.0' encoding='utf-8' ?>
<!-- C++Builder XML Project -->
<PROJECT>
<MACROS>
<VERSION value="BCB.06.00"/>
<PROJECT value="tb2kdsgn_cb6.bpl"/>
<OBJFILES value="tb2kdsgn_cb6.obj ..\Source\TB2DsgnConverter.obj
..\Source\TB2DsgnItemEditor.obj ..\Source\TB2DsgnConvertOptions.obj
..\Source\TB2Reg.obj"/>
<RESFILES value="..\Source\TB2Reg.dcr"/>
<IDLFILES value=""/>
<DEFFILE value=""/>
<RESDEPEN value="$(RESFILES) ..\Source\TB2DsgnConverter.dfm ..\Source\TB2DsgnItemEditor.dfm
..\Source\TB2DsgnConvertOptions.dfm"/>
<LIBFILES value=""/>
<LIBRARIES value=""/>
<SPARELIBS value="rtl.lib vcl.lib dclstd.lib"/>
<PACKAGES value="tb2k_cb6.bpi rtl.bpi vcl.bpi dclstd.bpi designide.bpi"/>
<PATHCPP value=".;"/>
<PATHPAS value=".;..\Source"/>
<PATHRC value=".;"/>
<PATHASM value=".;"/>
<DEBUGLIBPATH value="$(BCB)\lib\debug"/>
<RELEASELIBPATH value="$(BCB)\lib\release"/>
<LINKER value="ilink32"/>
<USERDEFINES value=""/>
<SYSDEFINES value="_RTLDLL;NO_STRICT;USEPACKAGES"/>
<MAINSOURCE value="tb2kdsgn_cb6.cpp"/>
<INCLUDEPATH value="..\Source;$(BCB)\include;$(BCB)\include\vcl"/>
<LIBPATH value="..\Source;$(BCB)\Projects\Lib;$(BCB)\lib\obj;$(BCB)\lib"/>
<WARNINGS value="-w-par -w-8027 -w-8026"/>
<WARNOPTSTR value=""/>
<OTHERFILES value=""/>
</MACROS>
<OPTIONS>
<CFLAG1 value="-Od -H=$(BCB)\lib\vcl60.csm -Hc -Vx -Ve -X- -r- -a8 -b- -k -y -v -vi- -c
-tWM"/>
<PFLAGS value="-$YD -$A8 -v -JPHNE -M -LUdclstd -LUdesignide"/>
<RFLAGS value=""/>
<AFLAGS value="/mx /w2 /zd"/>
<LFLAGS value="-D&quot;Toolbar2000 Design Package (Jordan Russell)&quot; -aa -Tpp -Gpd -x -Gn -Gl
-Gi -v"/>
<OTHERFILES value=""/>
</OPTIONS>
<LINKER>
<ALLOBJ value="c0pkg32.obj $(PACKAGES) Memmgr.Lib sysinit.obj $(OBJFILES)"/>
<ALLRES value="$(RESFILES)"/>
<ALLLIB value="$(LIBFILES) $(LIBRARIES) import32.lib cp32mti.lib"/>
<OTHERFILES value=""/>
</LINKER>
<FILELIST>
<FILE FILENAME="tb2kdsgn_cb6.cpp" FORMNAME="" UNITNAME="tb2kdsgn_cb6" CONTAINERID="CCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2DsgnConverter.pas" FORMNAME="TBConverterForm" UNITNAME="Tb2dsgnconverter" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2DsgnItemEditor.pas" FORMNAME="TBItemEditForm" UNITNAME="Tb2dsgnitemeditor" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2DsgnConvertOptions.pas" FORMNAME="TBConvertOptionsForm" UNITNAME="Tb2dsgnconvertoptions" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2Reg.pas" FORMNAME="" UNITNAME="TB2Reg" CONTAINERID="PascalCompiler" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="..\Source\TB2Reg.dcr" FORMNAME="" UNITNAME="TB2Reg" CONTAINERID="DcrTool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="tb2k_cb6.bpi" FORMNAME="" UNITNAME="tb2k_cb6" CONTAINERID="BPITool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="rtl.bpi" FORMNAME="" UNITNAME="rtl" CONTAINERID="BPITool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="vcl.bpi" FORMNAME="" UNITNAME="vcl" CONTAINERID="BPITool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="dclstd.bpi" FORMNAME="" UNITNAME="dclstd" CONTAINERID="BPITool" DESIGNCLASS="" LOCALCOMMAND=""/>
<FILE FILENAME="designide.bpi" FORMNAME="" UNITNAME="designide" CONTAINERID="BPITool" DESIGNCLASS="" LOCALCOMMAND=""/>
</FILELIST>
<BUILDTOOLS>
</BUILDTOOLS>
<IDEOPTIONS>
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=1033
CodePage=1252
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[Debugging]
DebugSourceDirs=$(BCB)\source\vcl
[Parameters]
RunParams=
Launcher=
UseLauncher=0
DebugCWD=
HostApplication=
RemoteHost=
RemotePath=
RemoteLauncher=
RemoteCWD=
RemoteDebug=0
[Compiler]
ShowInfoMsgs=0
LinkDebugVcl=0
LinkCGLIB=0
[Language]
ActiveLang=
ProjectLang=
RootDir=
[Linker]
LibPrefix=
LibSuffix=
LibVersion=
</IDEOPTIONS>
</PROJECT>

View File

@@ -0,0 +1,18 @@
// $jrsoftware: tb2k/Packages/tb2kdsgn_cb6.cpp,v 1.2 2002/11/14 18:07:19 jr Exp $
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
USEFORMNS("..\Source\TB2DsgnConverter.pas", Tb2dsgnconverter, TBConverterForm);
USEFORMNS("..\Source\TB2DsgnItemEditor.pas", Tb2dsgnitemeditor, TBItemEditForm);
USEFORMNS("..\Source\TB2DsgnConvertOptions.pas", Tb2dsgnconvertoptions, TBConvertOptionsForm);
//---------------------------------------------------------------------------
#pragma package(smart_init)
//---------------------------------------------------------------------------
// Package source.
//---------------------------------------------------------------------------
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void*)
{
return 1;
}
//---------------------------------------------------------------------------

View File

@@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<BorlandProject>
<PersonalityInfo>
<Option>
<Option Name="Personality">Delphi.Personality</Option>
<Option Name="ProjectType">VCLApplication</Option>
<Option Name="Version">1.0</Option>
<Option Name="GUID">{C57FBB14-2A7A-4CF9-A96D-673A824CFAC5}</Option>
</Option>
</PersonalityInfo>
<Delphi.Personality>
<Source>
<Source Name="MainSource">tb2kdsgn_d10.dpk</Source>
</Source>
<FileVersion>
<FileVersion Name="Version">7.0</FileVersion>
</FileVersion>
<Compiler>
<Compiler Name="A">8</Compiler>
<Compiler Name="B">0</Compiler>
<Compiler Name="C">1</Compiler>
<Compiler Name="D">1</Compiler>
<Compiler Name="E">0</Compiler>
<Compiler Name="F">0</Compiler>
<Compiler Name="G">1</Compiler>
<Compiler Name="H">1</Compiler>
<Compiler Name="I">1</Compiler>
<Compiler Name="J">0</Compiler>
<Compiler Name="K">0</Compiler>
<Compiler Name="L">1</Compiler>
<Compiler Name="M">0</Compiler>
<Compiler Name="N">1</Compiler>
<Compiler Name="O">1</Compiler>
<Compiler Name="P">1</Compiler>
<Compiler Name="Q">0</Compiler>
<Compiler Name="R">0</Compiler>
<Compiler Name="S">0</Compiler>
<Compiler Name="T">0</Compiler>
<Compiler Name="U">0</Compiler>
<Compiler Name="V">1</Compiler>
<Compiler Name="W">0</Compiler>
<Compiler Name="X">1</Compiler>
<Compiler Name="Y">1</Compiler>
<Compiler Name="Z">1</Compiler>
<Compiler Name="ShowHints">True</Compiler>
<Compiler Name="ShowWarnings">True</Compiler>
<Compiler Name="UnitAliases">WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;</Compiler>
<Compiler Name="NamespacePrefix"></Compiler>
<Compiler Name="GenerateDocumentation">False</Compiler>
<Compiler Name="DefaultNamespace"></Compiler>
<Compiler Name="SymbolDeprecated">True</Compiler>
<Compiler Name="SymbolLibrary">True</Compiler>
<Compiler Name="SymbolPlatform">True</Compiler>
<Compiler Name="SymbolExperimental">True</Compiler>
<Compiler Name="UnitLibrary">True</Compiler>
<Compiler Name="UnitPlatform">True</Compiler>
<Compiler Name="UnitDeprecated">True</Compiler>
<Compiler Name="UnitExperimental">True</Compiler>
<Compiler Name="HResultCompat">True</Compiler>
<Compiler Name="HidingMember">True</Compiler>
<Compiler Name="HiddenVirtual">True</Compiler>
<Compiler Name="Garbage">True</Compiler>
<Compiler Name="BoundsError">True</Compiler>
<Compiler Name="ZeroNilCompat">True</Compiler>
<Compiler Name="StringConstTruncated">True</Compiler>
<Compiler Name="ForLoopVarVarPar">True</Compiler>
<Compiler Name="TypedConstVarPar">True</Compiler>
<Compiler Name="AsgToTypedConst">True</Compiler>
<Compiler Name="CaseLabelRange">True</Compiler>
<Compiler Name="ForVariable">True</Compiler>
<Compiler Name="ConstructingAbstract">True</Compiler>
<Compiler Name="ComparisonFalse">True</Compiler>
<Compiler Name="ComparisonTrue">True</Compiler>
<Compiler Name="ComparingSignedUnsigned">True</Compiler>
<Compiler Name="CombiningSignedUnsigned">True</Compiler>
<Compiler Name="UnsupportedConstruct">True</Compiler>
<Compiler Name="FileOpen">True</Compiler>
<Compiler Name="FileOpenUnitSrc">True</Compiler>
<Compiler Name="BadGlobalSymbol">True</Compiler>
<Compiler Name="DuplicateConstructorDestructor">True</Compiler>
<Compiler Name="InvalidDirective">True</Compiler>
<Compiler Name="PackageNoLink">True</Compiler>
<Compiler Name="PackageThreadVar">True</Compiler>
<Compiler Name="ImplicitImport">True</Compiler>
<Compiler Name="HPPEMITIgnored">True</Compiler>
<Compiler Name="NoRetVal">True</Compiler>
<Compiler Name="UseBeforeDef">True</Compiler>
<Compiler Name="ForLoopVarUndef">True</Compiler>
<Compiler Name="UnitNameMismatch">True</Compiler>
<Compiler Name="NoCFGFileFound">True</Compiler>
<Compiler Name="ImplicitVariants">True</Compiler>
<Compiler Name="UnicodeToLocale">True</Compiler>
<Compiler Name="LocaleToUnicode">True</Compiler>
<Compiler Name="ImagebaseMultiple">True</Compiler>
<Compiler Name="SuspiciousTypecast">True</Compiler>
<Compiler Name="PrivatePropAccessor">True</Compiler>
<Compiler Name="UnsafeType">False</Compiler>
<Compiler Name="UnsafeCode">False</Compiler>
<Compiler Name="UnsafeCast">False</Compiler>
<Compiler Name="OptionTruncated">True</Compiler>
<Compiler Name="WideCharReduced">True</Compiler>
<Compiler Name="DuplicatesIgnored">True</Compiler>
<Compiler Name="UnitInitSeq">True</Compiler>
<Compiler Name="LocalPInvoke">True</Compiler>
<Compiler Name="MessageDirective">True</Compiler>
<Compiler Name="CodePage"></Compiler>
</Compiler>
<Linker>
<Linker Name="MapFile">0</Linker>
<Linker Name="OutputObjs">44</Linker>
<Linker Name="GenerateHpps">False</Linker>
<Linker Name="ConsoleApp">1</Linker>
<Linker Name="DebugInfo">False</Linker>
<Linker Name="RemoteSymbols">False</Linker>
<Linker Name="GenerateDRC">False</Linker>
<Linker Name="MinStackSize">16384</Linker>
<Linker Name="MaxStackSize">1048576</Linker>
<Linker Name="ImageBase">1065353216</Linker>
<Linker Name="ExeDescription">Toolbar2000 Design Package (Jordan Russell)</Linker>
</Linker>
<Directories>
<Directories Name="OutputDir"></Directories>
<Directories Name="UnitOutputDir"></Directories>
<Directories Name="PackageDLLOutputDir"></Directories>
<Directories Name="PackageDCPOutputDir"></Directories>
<Directories Name="SearchPath"></Directories>
<Directories Name="Packages"></Directories>
<Directories Name="Conditionals"></Directories>
<Directories Name="DebugSourceDirs"></Directories>
<Directories Name="UsePackages">False</Directories>
</Directories>
<Parameters>
<Parameters Name="RunParams"></Parameters>
<Parameters Name="HostApplication"></Parameters>
<Parameters Name="Launcher"></Parameters>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="DebugCWD"></Parameters>
<Parameters Name="Debug Symbols Search Path"></Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<Language>
<Language Name="ActiveLang"></Language>
<Language Name="ProjectLang">$00000000</Language>
<Language Name="RootDir"></Language>
</Language>
<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">1033</VersionInfo>
<VersionInfo Name="CodePage">1252</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
</Delphi.Personality>
</BorlandProject>

View File

@@ -0,0 +1,42 @@
package tb2kdsgn_d10;
{$R *.res}
{$R '..\Source\TB2Reg.dcr'}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F800000}
{$DESCRIPTION 'Toolbar2000 Design Package (Jordan Russell)'}
{$DESIGNONLY}
{$IMPLICITBUILD OFF}
requires
vcl,
dclstd,
tb2k_d10;
contains
TB2Reg in '..\Source\TB2Reg.pas',
TB2DsgnItemEditor in '..\Source\TB2DsgnItemEditor.pas' {TBItemEditForm},
TB2DsgnConverter in '..\Source\TB2DsgnConverter.pas' {TBConverterForm},
TB2DsgnConvertOptions in '..\Source\TB2DsgnConvertOptions.pas' {TBConvertOptionsForm};
end.

View File

@@ -0,0 +1,43 @@
package tb2kdsgn_d11;
{$R *.res}
{$R '..\Source\TB2Reg.dcr'}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F800000}
{$DESCRIPTION 'Toolbar2000 Design Package (Jordan Russell)'}
{$DESIGNONLY}
{$IMPLICITBUILD OFF}
{$DEFINE DEBUG}
requires
rtl,
vcl,
dclstd,
tb2k_d11;
contains
TB2Reg in '..\Source\TB2Reg.pas',
TB2DsgnItemEditor in '..\Source\TB2DsgnItemEditor.pas' {TBItemEditForm},
TB2DsgnConverter in '..\Source\TB2DsgnConverter.pas' {TBConverterForm},
TB2DsgnConvertOptions in '..\Source\TB2DsgnConvertOptions.pas' {TBConvertOptionsForm};
end.

View File

@@ -0,0 +1,52 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{e51188c3-1c1e-47eb-b42e-bb80872f9ae7}</ProjectGuid>
<MainSource>tb2kdsgn_d11.dpk</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>tb2kdsgn_d11.bpl</DCC_DependencyCheckOutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE</DCC_Define>
<DCC_CBuilderOutput>All</DCC_CBuilderOutput>
<DCC_ImageBase>3F800000</DCC_ImageBase>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_Define>DEBUG</DCC_Define>
<DCC_CBuilderOutput>All</DCC_CBuilderOutput>
<DCC_ImageBase>3F800000</DCC_ImageBase>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">True</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options><Package_Options Name="PackageDescription">Toolbar2000 Design Package (Jordan Russell)</Package_Options></Package_Options><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">1033</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">tb2kdsgn_d11.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>
<DelphiCompile Include="tb2kdsgn_d11.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\Source\TB2DsgnConverter.pas">
<Form>TBConverterForm</Form>
</DCCReference>
<DCCReference Include="..\Source\TB2DsgnConvertOptions.pas">
<Form>TBConvertOptionsForm</Form>
</DCCReference>
<DCCReference Include="..\Source\TB2DsgnItemEditor.pas">
<Form>TBItemEditForm</Form>
</DCCReference>
<DCCReference Include="..\Source\TB2Reg.dcr" />
<DCCReference Include="..\Source\TB2Reg.pas" />
<DCCReference Include="dclstd.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="tb2k_d11.dcp" />
<DCCReference Include="vcl.dcp" />
</ItemGroup>
</Project>

View File

@@ -0,0 +1,42 @@
package tb2kdsgn_d12;
{$R *.res}
{$R '..\Source\TB2Reg.dcr'}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F800000}
{$DESCRIPTION 'Toolbar2000 Design Package (Jordan Russell)'}
{$DESIGNONLY}
{$IMPLICITBUILD OFF}
requires
rtl,
vcl,
dclstd,
tb2k_d12;
contains
TB2Reg in '..\Source\TB2Reg.pas',
TB2DsgnItemEditor in '..\Source\TB2DsgnItemEditor.pas' {TBItemEditForm},
TB2DsgnConverter in '..\Source\TB2DsgnConverter.pas' {TBConverterForm},
TB2DsgnConvertOptions in '..\Source\TB2DsgnConvertOptions.pas' {TBConvertOptionsForm};
end.

View File

@@ -0,0 +1,126 @@
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{D9827544-06D4-4C36-9AA3-5858B2C844EA}</ProjectGuid>
<MainSource>tb2kdsgn_d12.dpk</MainSource>
<ProjectVersion>12.0</ProjectVersion>
<Config Condition="'$(Config)'==''">Debug</Config>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
<Cfg_1>true</Cfg_1>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
<Cfg_2>true</Cfg_2>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<DCC_ImageBase>3F800000</DCC_ImageBase>
<DCC_DependencyCheckOutputName>tb2kdsgn_d12.bpl</DCC_DependencyCheckOutputName>
<DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
<DesignOnlyPackage>true</DesignOnlyPackage>
<DCC_Platform>x86</DCC_Platform>
<DCC_UnitAlias>WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;$(DCC_UnitAlias)</DCC_UnitAlias>
<DCC_Description>Toolbar2000 Design Package (Jordan Russell)</DCC_Description>
<DCC_CBuilderOutput>All</DCC_CBuilderOutput>
<DCC_S>false</DCC_S>
<DCC_N>false</DCC_N>
<GenDll>true</GenDll>
<DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
<DCC_E>false</DCC_E>
<GenPackage>true</GenPackage>
<DCC_K>false</DCC_K>
<DCC_F>false</DCC_F>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_DebugInformation>false</DCC_DebugInformation>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
</PropertyGroup>
<ItemGroup>
<DelphiCompile Include="tb2kdsgn_d12.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\Source\TB2Reg.dcr"/>
<DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/>
<DCCReference Include="dclstd.dcp"/>
<DCCReference Include="tb2k_d12.dcp"/>
<DCCReference Include="..\Source\TB2Reg.pas"/>
<DCCReference Include="..\Source\TB2DsgnItemEditor.pas">
<Form>TBItemEditForm</Form>
</DCCReference>
<DCCReference Include="..\Source\TB2DsgnConverter.pas">
<Form>TBConverterForm</Form>
</DCCReference>
<DCCReference Include="..\Source\TB2DsgnConvertOptions.pas">
<Form>TBConvertOptionsForm</Form>
</DCCReference>
<DCCReference Include="..\Source\TB2Reg.dcr"/>
<BuildConfiguration Include="Base">
<Key>Base</Key>
</BuildConfiguration>
<BuildConfiguration Include="Debug">
<Key>Cfg_2</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
<BuildConfiguration Include="Release">
<Key>Cfg_1</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
</ItemGroup>
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<Delphi.Personality>
<Source>
<Source Name="MainSource">tb2kdsgn_d12.dpk</Source>
</Source>
<Parameters>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<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">1033</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>
</Delphi.Personality>
</BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion>
</ProjectExtensions>
</Project>

View File

@@ -0,0 +1,42 @@
package tb2kdsgn_d4;
{$R *.RES}
{$R '..\Source\TB2Reg.dcr'}
{$ALIGN ON}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F800000}
{$DESCRIPTION 'Toolbar2000 Design Package (Jordan Russell)'}
{$DESIGNONLY}
{$IMPLICITBUILD ON}
requires
vcl40,
dclstd40,
tb2k_d4;
contains
TB2Reg in '..\Source\TB2Reg.pas',
TB2DsgnItemEditor in '..\Source\TB2DsgnItemEditor.pas' {TBItemEditForm},
TB2DsgnConverter in '..\Source\TB2DsgnConverter.pas' {TBConverterForm},
TB2DsgnConvertOptions in '..\Source\TB2DsgnConvertOptions.pas' {TBConvertOptionsForm};
end.

View File

@@ -0,0 +1,42 @@
package tb2kdsgn_d5;
{$R *.RES}
{$R '..\Source\TB2Reg.dcr'}
{$ALIGN ON}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F800000}
{$DESCRIPTION 'Toolbar2000 Design Package (Jordan Russell)'}
{$DESIGNONLY}
{$IMPLICITBUILD ON}
requires
vcl50,
dclstd50,
tb2k_d5;
contains
TB2Reg in '..\Source\TB2Reg.pas',
TB2DsgnItemEditor in '..\Source\TB2DsgnItemEditor.pas' {TBItemEditForm},
TB2DsgnConverter in '..\Source\TB2DsgnConverter.pas' {TBConverterForm},
TB2DsgnConvertOptions in '..\Source\TB2DsgnConvertOptions.pas' {TBConvertOptionsForm};
end.

View File

@@ -0,0 +1,42 @@
package tb2kdsgn_d6;
{$R *.res}
{$R '..\Source\TB2Reg.dcr'}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F800000}
{$DESCRIPTION 'Toolbar2000 Design Package (Jordan Russell)'}
{$DESIGNONLY}
{$IMPLICITBUILD ON}
requires
vcl,
dclstd,
tb2k_d6;
contains
TB2Reg in '..\Source\TB2Reg.pas',
TB2DsgnItemEditor in '..\Source\TB2DsgnItemEditor.pas' {TBItemEditForm},
TB2DsgnConverter in '..\Source\TB2DsgnConverter.pas' {TBConverterForm},
TB2DsgnConvertOptions in '..\Source\TB2DsgnConvertOptions.pas' {TBConvertOptionsForm};
end.

View File

@@ -0,0 +1,42 @@
package tb2kdsgn_d7;
{$R *.res}
{$R '..\Source\TB2Reg.dcr'}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F800000}
{$DESCRIPTION 'Toolbar2000 Design Package (Jordan Russell)'}
{$DESIGNONLY}
{$IMPLICITBUILD ON}
requires
vcl,
dclstd,
tb2k_d7;
contains
TB2Reg in '..\Source\TB2Reg.pas',
TB2DsgnItemEditor in '..\Source\TB2DsgnItemEditor.pas' {TBItemEditForm},
TB2DsgnConverter in '..\Source\TB2DsgnConverter.pas' {TBConverterForm},
TB2DsgnConvertOptions in '..\Source\TB2DsgnConvertOptions.pas' {TBConvertOptionsForm};
end.

View File

@@ -0,0 +1,42 @@
package tb2kdsgn_d9;
{$R *.res}
{$R '..\Source\TB2Reg.dcr'}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F800000}
{$DESCRIPTION 'Toolbar2000 Design Package (Jordan Russell)'}
{$DESIGNONLY}
{$IMPLICITBUILD ON}
requires
vcl,
dclstd,
tb2k_d9;
contains
TB2Reg in '..\Source\TB2Reg.pas',
TB2DsgnItemEditor in '..\Source\TB2DsgnItemEditor.pas' {TBItemEditForm},
TB2DsgnConverter in '..\Source\TB2DsgnConverter.pas' {TBConverterForm},
TB2DsgnConvertOptions in '..\Source\TB2DsgnConvertOptions.pas' {TBConvertOptionsForm};
end.

View File

@@ -0,0 +1,188 @@
<?xml version="1.0" encoding="utf-8"?>
<BorlandProject>
<PersonalityInfo>
<Option>
<Option Name="Personality">DelphiDotNet.Personality</Option>
<Option Name="ProjectType">Package</Option>
<Option Name="Version">2.0</Option>
<Option Name="GUID">{0B9FDBFB-1B45-44C4-91C4-BFC0E7A2F437}</Option>
</Option>
</PersonalityInfo>
<DelphiDotNet.Personality>
<Source>
<Source Name="MainSource">tb2kdsgn_dn10.dpk</Source>
</Source>
<FileVersion>
<FileVersion Name="Version">7.0</FileVersion>
</FileVersion>
<Compiler>
<Compiler Name="A">0</Compiler>
<Compiler Name="B">0</Compiler>
<Compiler Name="C">1</Compiler>
<Compiler Name="D">1</Compiler>
<Compiler Name="E">0</Compiler>
<Compiler Name="F">0</Compiler>
<Compiler Name="G">1</Compiler>
<Compiler Name="H">1</Compiler>
<Compiler Name="I">1</Compiler>
<Compiler Name="J">0</Compiler>
<Compiler Name="K">0</Compiler>
<Compiler Name="L">1</Compiler>
<Compiler Name="M">0</Compiler>
<Compiler Name="N">1</Compiler>
<Compiler Name="O">1</Compiler>
<Compiler Name="P">1</Compiler>
<Compiler Name="Q">0</Compiler>
<Compiler Name="R">0</Compiler>
<Compiler Name="S">0</Compiler>
<Compiler Name="T">0</Compiler>
<Compiler Name="U">0</Compiler>
<Compiler Name="V">1</Compiler>
<Compiler Name="W">0</Compiler>
<Compiler Name="X">1</Compiler>
<Compiler Name="Y">1</Compiler>
<Compiler Name="Z">1</Compiler>
<Compiler Name="ShowHints">True</Compiler>
<Compiler Name="ShowWarnings">True</Compiler>
<Compiler Name="UnitAliases">WinTypes=Borland.Vcl.Windows;WinProcs=Borland.Vcl.Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;</Compiler>
<Compiler Name="NamespacePrefix">Borland.Vcl.Design</Compiler>
<Compiler Name="GenerateDocumentation">False</Compiler>
<Compiler Name="DefaultNamespace"></Compiler>
<Compiler Name="SymbolDeprecated">True</Compiler>
<Compiler Name="SymbolLibrary">True</Compiler>
<Compiler Name="SymbolPlatform">True</Compiler>
<Compiler Name="SymbolExperimental">True</Compiler>
<Compiler Name="UnitLibrary">True</Compiler>
<Compiler Name="UnitPlatform">False</Compiler>
<Compiler Name="UnitDeprecated">True</Compiler>
<Compiler Name="UnitExperimental">True</Compiler>
<Compiler Name="HResultCompat">True</Compiler>
<Compiler Name="HidingMember">True</Compiler>
<Compiler Name="HiddenVirtual">True</Compiler>
<Compiler Name="Garbage">True</Compiler>
<Compiler Name="BoundsError">True</Compiler>
<Compiler Name="ZeroNilCompat">True</Compiler>
<Compiler Name="StringConstTruncated">True</Compiler>
<Compiler Name="ForLoopVarVarPar">True</Compiler>
<Compiler Name="TypedConstVarPar">True</Compiler>
<Compiler Name="AsgToTypedConst">True</Compiler>
<Compiler Name="CaseLabelRange">True</Compiler>
<Compiler Name="ForVariable">True</Compiler>
<Compiler Name="ConstructingAbstract">True</Compiler>
<Compiler Name="ComparisonFalse">True</Compiler>
<Compiler Name="ComparisonTrue">True</Compiler>
<Compiler Name="ComparingSignedUnsigned">True</Compiler>
<Compiler Name="CombiningSignedUnsigned">True</Compiler>
<Compiler Name="UnsupportedConstruct">True</Compiler>
<Compiler Name="FileOpen">True</Compiler>
<Compiler Name="FileOpenUnitSrc">True</Compiler>
<Compiler Name="BadGlobalSymbol">True</Compiler>
<Compiler Name="DuplicateConstructorDestructor">True</Compiler>
<Compiler Name="InvalidDirective">True</Compiler>
<Compiler Name="PackageNoLink">True</Compiler>
<Compiler Name="PackageThreadVar">True</Compiler>
<Compiler Name="ImplicitImport">True</Compiler>
<Compiler Name="HPPEMITIgnored">True</Compiler>
<Compiler Name="NoRetVal">True</Compiler>
<Compiler Name="UseBeforeDef">True</Compiler>
<Compiler Name="ForLoopVarUndef">True</Compiler>
<Compiler Name="UnitNameMismatch">True</Compiler>
<Compiler Name="NoCFGFileFound">True</Compiler>
<Compiler Name="ImplicitVariants">True</Compiler>
<Compiler Name="UnicodeToLocale">True</Compiler>
<Compiler Name="LocaleToUnicode">True</Compiler>
<Compiler Name="ImagebaseMultiple">True</Compiler>
<Compiler Name="SuspiciousTypecast">True</Compiler>
<Compiler Name="PrivatePropAccessor">True</Compiler>
<Compiler Name="UnsafeType">True</Compiler>
<Compiler Name="UnsafeCode">True</Compiler>
<Compiler Name="UnsafeCast">True</Compiler>
<Compiler Name="OptionTruncated">True</Compiler>
<Compiler Name="WideCharReduced">True</Compiler>
<Compiler Name="DuplicatesIgnored">True</Compiler>
<Compiler Name="UnitInitSeq">True</Compiler>
<Compiler Name="LocalPInvoke">True</Compiler>
<Compiler Name="MessageDirective">True</Compiler>
<Compiler Name="CodePage"></Compiler>
</Compiler>
<Linker>
<Linker Name="MapFile">0</Linker>
<Linker Name="OutputObjs">0</Linker>
<Linker Name="GenerateHpps">False</Linker>
<Linker Name="ConsoleApp">1</Linker>
<Linker Name="DebugInfo">True</Linker>
<Linker Name="RemoteSymbols">False</Linker>
<Linker Name="GenerateDRC">False</Linker>
<Linker Name="MinStackSize">4096</Linker>
<Linker Name="MaxStackSize">1048576</Linker>
<Linker Name="ImageBase">1056964608</Linker>
<Linker Name="ExeDescription">Toolbar2000 .NET Design Package (Jordan Russell)</Linker>
</Linker>
<Directories>
<Directories Name="OutputDir"></Directories>
<Directories Name="UnitOutputDir"></Directories>
<Directories Name="PackageDLLOutputDir">$(BDSPROJECTSDIR)\Bpl</Directories>
<Directories Name="PackageDCPOutputDir">$(BDSPROJECTSDIR)\Bpl</Directories>
<Directories Name="SearchPath"></Directories>
<Directories Name="Packages"></Directories>
<Directories Name="Conditionals"></Directories>
<Directories Name="DebugSourceDirs"></Directories>
<Directories Name="UsePackages">True</Directories>
</Directories>
<Parameters>
<Parameters Name="RunParams"></Parameters>
<Parameters Name="HostApplication"></Parameters>
<Parameters Name="Launcher"></Parameters>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="DebugCWD"></Parameters>
<Parameters Name="Debug Symbols Search Path"></Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<Language>
<Language Name="ActiveLang"></Language>
<Language Name="ProjectLang">$00000000</Language>
<Language Name="RootDir"></Language>
</Language>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</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">1033</VersionInfo>
<VersionInfo Name="CodePage">1252</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
<FileList>
<File FileName="$(SystemRoot)\microsoft.net\framework\v1.1.4322\System.Drawing.dll" ContainerId="DelphiDotNetAssemblyCompiler" ModuleName="System.Drawing" AssemblyName="System.Drawing" Version="1.0.5000.0" LinkUnits="False"/>
<File FileName="Borland.Delphi.dll" ContainerId="DelphiDotNetAssemblyCompiler" ModuleName="Borland.Delphi" AssemblyName="Borland.Delphi" Version="10.0.4143.0" LinkUnits="False"/>
<File FileName="$(BDS)\bin\Borland.Studio.Vcl.Design.dll" ContainerId="DelphiDotNetAssemblyCompiler" ModuleName="Borland.Studio.Vcl.Design" AssemblyName="Borland.Studio.Vcl.Design" CopyLocal="False" Version="10.0.4143.0" LinkUnits="False"/>
<File FileName="$(BDS)\bin\Borland.Vcl.Design.Standard.dll" ContainerId="DelphiDotNetAssemblyCompiler" ModuleName="Borland.Vcl.Design.Standard" AssemblyName="Borland.Vcl.Design.Standard" CopyLocal="False" Version="10.0.4143.0" LinkUnits="False"/>
<File FileName="tb2k_dn10.dll" ContainerId="DelphiDotNetAssemblyCompiler" ModuleName="tb2k_dn10" AssemblyName="tb2k_dn10" CopyLocal="False" Version="0.0.0.0" LinkUnits="False"/>
<File FileName="..\Source\TB2Reg.pas" ContainerId="" ModuleName="TB2Reg"/>
<File FileName="..\Source\TB2DsgnItemEditor.pas" ContainerId="" ModuleName="TB2DsgnItemEditor"/>
<File FileName="..\Source\TB2DsgnConverter.pas" ContainerId="" ModuleName="TB2DsgnConverter"/>
<File FileName="..\Source\TB2DsgnConvertOptions.pas" ContainerId="" ModuleName="TB2DsgnConvertOptions"/>
</FileList>
</DelphiDotNet.Personality>
</BorlandProject>

View File

@@ -0,0 +1,111 @@
package tb2kdsgn_dn10;
{$ALIGN 0}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F000000}
{$DESCRIPTION 'Toolbar2000 .NET Design Package (Jordan Russell)'}
{$DESIGNONLY}
{$IMPLICITBUILD OFF}
requires
System.Drawing,
Borland.Delphi,
Borland.Studio.Vcl.Design,
Borland.Vcl.Design.Standard,
tb2k_dn10;
contains
TB2Reg in '..\Source\TB2Reg.pas',
TB2DsgnItemEditor in '..\Source\TB2DsgnItemEditor.pas',
TB2DsgnConverter in '..\Source\TB2DsgnConverter.pas',
TB2DsgnConvertOptions in '..\Source\TB2DsgnConvertOptions.pas';
[assembly: AssemblyDescription('')]
[assembly: AssemblyConfiguration('')]
[assembly: AssemblyCompany('')]
[assembly: AssemblyProduct('')]
[assembly: AssemblyCopyright('')]
[assembly: AssemblyTrademark('')]
[assembly: AssemblyCulture('')]
// The Delphi compiler controls the AssemblyTitleAttribute via the ExeDescription.
// You can set this in the IDE via the Project Options.
// Manually setting the AssemblyTitle attribute below will override the IDE
// setting.
// [assembly: AssemblyTitle('')]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
//[assembly: AssemblyVersion('1.0.*')]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile('mykey.snk')], provided your output
// directory is the project directory (the default).
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile('')]
[assembly: AssemblyKeyName('')]
//
// Use the attributes below to control the COM visibility of your assembly. By
// default the entire assembly is visible to COM. Setting ComVisible to false
// is the recommended default for your assembly. To then expose a class and interface
// to COM set ComVisible to true on each one. It is also recommended to add a
// Guid attribute.
//
[assembly: ComVisible(False)]
//[assembly: Guid('')]
//[assembly: TypeLibVersion(1, 0)]
end.

View File

@@ -0,0 +1,112 @@
package tb2kdsgn_dn11;
{$ALIGN 0}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $3F000000}
{$DESCRIPTION 'Toolbar2000 .NET Design Package (Jordan Russell)'}
{$DESIGNONLY}
{$IMPLICITBUILD OFF}
{$DEFINE DEBUG}
requires
Borland.Delphi,
Borland.Vcl,
Borland.VclRtl,
Borland.Vcl.Design.Standard,
tb2k_dn11;
contains
TB2Reg in '..\Source\TB2Reg.pas',
TB2DsgnItemEditor in '..\Source\TB2DsgnItemEditor.pas',
TB2DsgnConverter in '..\Source\TB2DsgnConverter.pas',
TB2DsgnConvertOptions in '..\Source\TB2DsgnConvertOptions.pas';
[assembly: AssemblyDescription('')]
[assembly: AssemblyConfiguration('')]
[assembly: AssemblyCompany('')]
[assembly: AssemblyProduct('')]
[assembly: AssemblyCopyright('')]
[assembly: AssemblyTrademark('')]
[assembly: AssemblyCulture('')]
// The Delphi compiler controls the AssemblyTitleAttribute via the ExeDescription.
// You can set this in the IDE via the Project Options.
// Manually setting the AssemblyTitle attribute below will override the IDE
// setting.
// [assembly: AssemblyTitle('')]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
//[assembly: AssemblyVersion('1.0.*')]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile('mykey.snk')], provided your output
// directory is the project directory (the default).
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile('')]
[assembly: AssemblyKeyName('')]
//
// Use the attributes below to control the COM visibility of your assembly. By
// default the entire assembly is visible to COM. Setting ComVisible to false
// is the recommended default for your assembly. To then expose a class and interface
// to COM set ComVisible to true on each one. It is also recommended to add a
// Guid attribute.
//
[assembly: ComVisible(False)]
//[assembly: Guid('')]
//[assembly: TypeLibVersion(1, 0)]
end.

View File

@@ -0,0 +1,82 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{be3d3497-f4e5-4f7b-a5f7-0ad1f00fddb2}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCCIL</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>tb2kdsgn_dn11.dll</DCC_DependencyCheckOutputName>
<MainSource>tb2kdsgn_dn11.dpk</MainSource>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE</DCC_Define>
<DCC_ImageBase>3F000000</DCC_ImageBase>
<DCC_UNIT_PLATFORM>False</DCC_UNIT_PLATFORM>
<DCC_NameSpace>Borland.Vcl.Design</DCC_NameSpace>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
<DCC_DebugVN>True</DCC_DebugVN>
<DCC_Define>DEBUG</DCC_Define>
<DCC_ImageBase>3F000000</DCC_ImageBase>
<DCC_UNIT_PLATFORM>False</DCC_UNIT_PLATFORM>
<DCC_NameSpace>Borland.Vcl.Design</DCC_NameSpace>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>DelphiDotNet.Personality</Borland.Personality>
<Borland.ProjectType />
<BorlandProject>
<BorlandProject><DelphiDotNet.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">True</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options><Package_Options Name="PackageDescription">Toolbar2000 .NET Design Package (Jordan Russell)</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</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">1033</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">tb2kdsgn_dn11.dpk</Source></Source></DelphiDotNet.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
<ItemGroup>
<Reference Include="Borland.VclRtl.dll">
<AssemblyName>Borland.VclRtl</AssemblyName>
<Version>11.0.5000.9245</Version>
<HintPath>Borland.VclRtl.dll</HintPath>
<AssemblyTag>Borland.VclRtl.dll</AssemblyTag>
<LinkUnits>False</LinkUnits>
</Reference>
<Reference Include="Borland.Vcl.dll">
<AssemblyName>Borland.Vcl</AssemblyName>
<Version>11.0.5000.9245</Version>
<HintPath>Borland.Vcl.dll</HintPath>
<AssemblyTag>Borland.Vcl.dll</AssemblyTag>
<LinkUnits>False</LinkUnits>
</Reference>
<Reference Include="tb2k_dn11.dll">
<AssemblyName>tb2k_dn11</AssemblyName>
<Version>0.0.0.0</Version>
<HintPath>tb2k_dn11.dll</HintPath>
<AssemblyTag>tb2k_dn11.dll</AssemblyTag>
<LinkUnits>False</LinkUnits>
</Reference>
<Reference Include="Borland.Delphi.dll">
<AssemblyName>Borland.Delphi</AssemblyName>
<Version>11.0.5000.9245</Version>
<HintPath>Borland.Delphi.dll</HintPath>
<AssemblyTag>Borland.Delphi.dll</AssemblyTag>
<LinkUnits>False</LinkUnits>
</Reference>
<Reference Include="Borland.Vcl.Design.Standard.dll">
<AssemblyName>Borland.Vcl.Design.Standard</AssemblyName>
<Version>11.0.5000.9245</Version>
<HintPath>Borland.Vcl.Design.Standard.dll</HintPath>
<AssemblyTag>Borland.Vcl.Design.Standard.dll</AssemblyTag>
<LinkUnits>False</LinkUnits>
</Reference>
</ItemGroup>
<ItemGroup>
<DelphiCompile Include="tb2kdsgn_dn11.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\Source\TB2DsgnConverter.pas" />
<DCCReference Include="..\Source\TB2DsgnConvertOptions.pas" />
<DCCReference Include="..\Source\TB2DsgnItemEditor.pas" />
<DCCReference Include="..\Source\TB2Reg.pas" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
</Project>

22
ToolBar 2000/README.txt Normal file
View File

@@ -0,0 +1,22 @@
===========================================================================
Toolbar2000 README
===========================================================================
Thank you for downloading Toolbar2000.
For details on installing and using Toolbar2000, please refer to the
Toolbar2000 help file - tb2k.chm. To open it, double-click it in Windows
Explorer.
This file is in HTML Help format. If you are using an older version of
Windows that does not come with HTML Help, it can be downloaded at:
http://msdn.microsoft.com/library/en-us/htmlhelp/html/hwMicrosoftHTMLHelpDownloads.asp
You will also need Internet Explorer 4.0 or later (5.0 is preferred),
downloadable from:
http://www.microsoft.com/ie/
- Jordan Russell (www.jrsoftware.org)

View File

@@ -0,0 +1,5 @@
*.dcu
*.dcuil
*.obj
*.hpp
_*

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,325 @@
unit TB2Anim;
{$MODE Delphi}
{
Toolbar2000
Copyright (C) 1998-2008 by Jordan Russell
All rights reserved.
The contents of this file are subject to the "Toolbar2000 License"; you may
not use or distribute this file except in compliance with the
"Toolbar2000 License". A copy of the "Toolbar2000 License" may be found in
TB2k-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/TB2k-LICENSE.txt
Alternatively, the contents of this file may be used under the terms of the
GNU General Public License (the "GPL"), in which case the provisions of the
GPL are applicable instead of those in the "Toolbar2000 License". A copy of
the GPL may be found in GPL-LICENSE.txt or at:
http://www.jrsoftware.org/files/tb2k/GPL-LICENSE.txt
If you wish to allow use of your version of this file only under the terms of
the GPL and not to allow others to use your version of this file under the
"Toolbar2000 License", indicate your decision by deleting the provisions
above and replace them with the notice and other provisions required by the
GPL. If you do not delete the provisions above, a recipient may use your
version of this file under either the "Toolbar2000 License" or the GPL.
$jrsoftware: tb2k/Source/TB2Anim.pas,v 1.13 2008/09/19 16:41:00 jr Exp $
}
interface
{$I TB2Ver.inc}
{$Q-}
uses
LCLIntf, LCLType, LMessages, Messages, SysUtils, Classes;
const
WM_TB2K_ANIMATIONENDED = WM_USER + $556;
type
TTBAnimationDirection = set of (tbadLeft, tbadRight, tbadDown, tbadUp);
procedure TBStartAnimation(const AWnd: HWND; const ABlend: Boolean;
const ADirection: TTBAnimationDirection);
procedure TBUpdateAnimation;
procedure TBEndAnimation(const Wnd: HWND);
function TBIsAnimationInProgress: Boolean;
implementation
uses
{$IFDEF CLR} System.Security, System.Runtime.InteropServices, System.Threading, {$ENDIF}
TB2Common;
{ Notes to self:
- It originally had the NOMIRRORBITMAP flag on the BitBlt calls, because
Windows 2000's AnimateWindow function has it. But it had to be removed
because on Windows 98 with the Standard VGA or VMware video driver, it
caused no bits to be blitted, even though Windows 98 is supposed to
support NOMIRRORBITMAP according to the documentation. I don't think it's
necessary anyway.
}
const
DCX_USESTYLE = $10000;
WS_EX_LAYERED = $80000;
NOMIRRORBITMAP = $80000000;
ULW_ALPHA = 2;
type
PAnimateThreadFuncData = ^TAnimateThreadFuncData;
TAnimateThreadFuncData = record
FRunning: Boolean;
FWnd: HWND;
FTime: Integer;
FBlending: Boolean;
FStartStep, FCurStep: Integer;
FStartTime, FLastFrameTime: DWORD;
FWndDC, FBmpDC: HDC;
FBmp: HBITMAP;
FScreenClientRect: TRect;
FSize: TSize;
FLastPos: TPoint;
FDirection: TTBAnimationDirection;
end;
{ Delphi.NET 2007 note: Because TRect/TSize/TPoint are wrongly declared as
'packed', fields of these types must be preceded by an Integer- or
IntPtr-sized field to ensure correct alignment and avoid an alignment
fault on IA-64. }
{$IFNDEF CLR}
var
UpdateLayeredWindowProc: function(Handle: HWND; hdcDest: HDC;
pptDst: PPoint; _psize: PSize; hdcSrc: HDC; pptSrc: PPoint;
crKey: COLORREF; var pblend: TBLENDFUNCTION; dwFlags: DWORD): BOOL; stdcall;
{$ELSE}
{ We can't use Borland.Vcl.Windows' UpdateLayeredWindow because the "pblend"
parameter is misdeclared (see QC #25130) }
[SuppressUnmanagedCodeSecurity, DllImport(user32, CharSet = CharSet.Ansi, SetLastError = True, EntryPoint = 'UpdateLayeredWindow')]
function UpdateLayeredWindowProc(Handle: HWND; hdcDest: HDC; const pptDst: TPoint;
const _psize: TSize; hdcSrc: HDC; const pptSrc: TPoint;
crKey: COLORREF; [in] var pblend: TBLENDFUNCTION; dwFlags: DWORD): BOOL; overload; external;
[SuppressUnmanagedCodeSecurity, DllImport(user32, CharSet = CharSet.Ansi, SetLastError = True, EntryPoint = 'UpdateLayeredWindow')]
function UpdateLayeredWindowProc(Handle: HWND; hdcDest: HDC; pptDst: IntPtr;
_psize: IntPtr; hdcSrc: HDC; pptSrc: IntPtr;
crKey: COLORREF; [in] var pblend: TBLENDFUNCTION; dwFlags: DWORD): BOOL; overload; external;
{$ENDIF}
threadvar
AnimateData: TAnimateThreadFuncData;
procedure FinalizeAnimation;
begin
{$IFNDEF CLR}
with PAnimateThreadFuncData(@AnimateData)^ do begin
{$ELSE}
with AnimateData do begin
{$ENDIF}
FRunning := False;
if FBmpDC <> 0 then begin
if FBlending then
SetWindowLong(FWnd, GWL_EXSTYLE,
GetWindowLong(FWnd, GWL_EXSTYLE) and not WS_EX_LAYERED)
else
SetWindowRgn(FWnd, 0, False);
BitBlt(FWndDC, 0, 0, FSize.cx, FSize.cy, FBmpDC, 0, 0, SRCCOPY);
DeleteDC(FBmpDC);
FBmpDC := 0;
end;
if FBmp <> 0 then begin
DeleteObject(FBmp);
FBmp := 0;
end;
if FWndDC <> 0 then begin
ReleaseDC(FWnd, FWndDC);
FWndDC := 0;
end;
if FWnd <> 0 then begin
SendNotifyMessage(FWnd, WM_TB2K_ANIMATIONENDED, 0, 0);
FWnd := 0;
end;
end;
end;
function TBIsAnimationInProgress: Boolean;
begin
Result := AnimateData.FRunning;
end;
procedure TBEndAnimation(const Wnd: HWND);
begin
if AnimateData.FRunning and
((Wnd = 0) or (AnimateData.FWnd = Wnd)) then
FinalizeAnimation;
end;
procedure TBStartAnimation(const AWnd: HWND; const ABlend: Boolean;
const ADirection: TTBAnimationDirection);
var
ZeroPt: TPoint;
R: TRect;
Blend: TBlendFunction;
Rgn: HRGN;
begin
FinalizeAnimation;
ZeroPt.X := 0;
ZeroPt.Y := 0;
try
{$IFNDEF CLR}
{ Note: The pointer cast avoids GetTls calls for every field access }
with PAnimateThreadFuncData(@AnimateData)^ do begin
{$ELSE}
with AnimateData do begin
{$ENDIF}
FWnd := AWnd;
FBlending := ABlend and {$IFNDEF CLR} Assigned(UpdateLayeredWindowProc)
{$ELSE} (Win32MajorVersion >= 5) {$ENDIF};
FDirection := ADirection;
GetCursorPos(FLastPos);
GetClientRect(FWnd, FScreenClientRect);
MapWindowPoints(FWnd, 0, FScreenClientRect, 2);
GetWindowRect(FWnd, R);
FWndDC := GetDCEx(FWnd, 0, DCX_WINDOW or DCX_CACHE {or DCX_USESTYLE ?});
if FWndDC = 0 then
RaiseLastOSError;
FSize.cx := R.Right - R.Left;
FSize.cy := R.Bottom - R.Top;
FBmp := CreateCompatibleBitmap(FWndDC, FSize.cx, FSize.cy {or $01000000 ?});
if FBmp = 0 then
RaiseLastOSError;
FBmpDC := CreateCompatibleDC(FWndDC);
if FBmpDC = 0 then
RaiseLastOSError;
// AnimateWindow calls SetLayout, but I'm not sure that we need to.
//if Assigned(SetLayoutProc) then
// SetLayoutProc(FBmpDC, 0);
SelectObject(FBmpDC, FBmp);
//SetBoundsRect(FBmpDC, nil, DCB_RESET or DCB_ENABLE);
SendMessage(FWnd, WM_PRINT, WPARAM(FBmpDC), PRF_NONCLIENT or PRF_CLIENT or
PRF_ERASEBKGND or PRF_CHILDREN);
//GetBoundsRect
if FBlending then begin
SetWindowLong(FWnd, GWL_EXSTYLE, GetWindowLong(FWnd, GWL_EXSTYLE) or WS_EX_LAYERED);
FTime := 175; { actually more like ~147 because FCurStep starts at 40 }
FCurStep := 40;
Blend.BlendOp := AC_SRC_OVER;
Blend.BlendFlags := 0;
Blend.SourceConstantAlpha := FCurStep;
Blend.AlphaFormat := 0;
Win32Check(UpdateLayeredWindowProc(FWnd, 0, {$IFNDEF CLR}@{$ENDIF} R.TopLeft,
{$IFNDEF CLR}@{$ENDIF} FSize, FBmpDC, {$IFNDEF CLR}@{$ENDIF} ZeroPt,
0, Blend, ULW_ALPHA));
end
else begin
FTime := 150;
FCurStep := 0;
Rgn := CreateRectRgn(0, 0, 0, 0);
if not BOOL(SetWindowRgn(FWnd, Rgn, False)) then
DeleteObject(Rgn); { just in case }
end;
FStartStep := FCurStep;
FStartTime := GetTickCount;
FLastFrameTime := FStartTime;
{ These are the same flags AnimateWindow uses. SWP_ASYNCWINDOWPOS is
needed or else it doesn't "save bits" properly.
Note: SWP_ASYNCWINDOWPOS seems to have no effect on Windows 95 & NT 4.0,
so bits behind the window are not saved & restored correctly. }
SetWindowPos(FWnd, 0, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE or
SWP_NOZORDER or SWP_NOACTIVATE or SWP_SHOWWINDOW or SWP_NOREDRAW or
SWP_NOOWNERZORDER or SWP_ASYNCWINDOWPOS);
FRunning := True;
end;
except
FinalizeAnimation;
raise;
end;
end;
procedure TBUpdateAnimation;
var
ThisFrameTime: DWORD;
ElapsedTime, NewStep: Integer;
P: TPoint;
Blend: TBlendFunction;
X, Y: Integer;
Rgn: HRGN;
begin
{$IFNDEF CLR}
with PAnimateThreadFuncData(@AnimateData)^ do begin
{$ELSE}
with AnimateData do begin
{$ENDIF}
if not FRunning then
Exit;
{ If 10 msec hasn't passed since the last call, exit. We don't want to
monopolize the CPU. }
ThisFrameTime := GetTickCount;
if ThisFrameTime - FLastFrameTime < 10 then
Exit;
FLastFrameTime := ThisFrameTime;
ElapsedTime := ThisFrameTime - FStartTime;
if (ElapsedTime < 0) or (ElapsedTime >= FTime) then begin
FinalizeAnimation;
Exit;
end;
NewStep := FStartStep + ((255 * ElapsedTime) div FTime);
if (NewStep < 0) or (NewStep >= 255) then begin
FinalizeAnimation;
Exit;
end;
GetCursorPos(P);
if (P.X <> FLastPos.X) or (P.Y <> FLastPos.Y) then begin
if PtInRect(FScreenClientRect, P) then begin
FinalizeAnimation;
Exit;
end;
FLastPos := P;
end;
if NewStep > FCurStep then begin
FCurStep := NewStep;
if FBlending then begin
Blend.BlendOp := AC_SRC_OVER;
Blend.BlendFlags := 0;
Blend.SourceConstantAlpha := NewStep;
Blend.AlphaFormat := 0;
UpdateLayeredWindowProc(FWnd, 0, nil, nil, 0, nil, 0, Blend, ULW_ALPHA);
end
else begin
if tbadDown in FDirection then
Y := MulDiv(FSize.cy, NewStep, 255) - FSize.cy
else if tbadUp in FDirection then
Y := FSize.cy - MulDiv(FSize.cy, NewStep, 255)
else
Y := 0;
if tbadRight in FDirection then
X := MulDiv(FSize.cx, NewStep, 255) - FSize.cx
else if tbadLeft in FDirection then
X := FSize.cx - MulDiv(FSize.cx, NewStep, 255)
else
X := 0;
Rgn := CreateRectRgn(X, Y, X + FSize.cx, Y + FSize.cy);
if not BOOL(SetWindowRgn(FWnd, Rgn, False)) then
DeleteObject(Rgn); { just in case }
BitBlt(FWndDC, X, Y, FSize.cx, FSize.cy, FBmpDC, 0, 0, SRCCOPY);
end;
end;
end;
end;
initialization
{$IFNDEF CLR}
UpdateLayeredWindowProc := GetProcAddress(GetModuleHandle(user32),
'UpdateLayeredWindow');
{$ENDIF}
finalization
FinalizeAnimation;
end.

Some files were not shown because too many files have changed in this diff Show More