git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/branches/D2007-DA5@36 0c75b7a4-871f-7646-8a2f-f78d34cc349f
This commit is contained in:
parent
ea8ceb9c8d
commit
a79d956073
665
Source/GUIBase/GUIBase.bdsproj
Normal file
665
Source/GUIBase/GUIBase.bdsproj
Normal file
@ -0,0 +1,665 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<BorlandProject>
|
||||||
|
<PersonalityInfo>
|
||||||
|
<Option>
|
||||||
|
<Option Name="Personality">Delphi.Personality</Option>
|
||||||
|
<Option Name="ProjectType"></Option>
|
||||||
|
<Option Name="Version">1.0</Option>
|
||||||
|
<Option Name="GUID">{0CA27A95-0B81-4724-84BF-8F8ED4E421AE}</Option>
|
||||||
|
</Option>
|
||||||
|
</PersonalityInfo>
|
||||||
|
<Delphi.Personality>
|
||||||
|
<Source>
|
||||||
|
<Source Name="MainSource">GUIBase.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">0</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">1</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 Name="TypeInfoImplicitlyAdded">True</Compiler>
|
||||||
|
<Compiler Name="XMLWhitespaceNotAllowed">True</Compiler>
|
||||||
|
<Compiler Name="XMLUnknownEntity">True</Compiler>
|
||||||
|
<Compiler Name="XMLInvalidNameStart">True</Compiler>
|
||||||
|
<Compiler Name="XMLInvalidName">True</Compiler>
|
||||||
|
<Compiler Name="XMLExpectedCharacter">True</Compiler>
|
||||||
|
<Compiler Name="XMLCRefNoResolve">True</Compiler>
|
||||||
|
<Compiler Name="XMLNoParm">True</Compiler>
|
||||||
|
<Compiler Name="XMLNoMatchingParm">True</Compiler>
|
||||||
|
</Compiler>
|
||||||
|
<Linker>
|
||||||
|
<Linker Name="MapFile">3</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">16384</Linker>
|
||||||
|
<Linker Name="MaxStackSize">1048576</Linker>
|
||||||
|
<Linker Name="ImageBase">4194304</Linker>
|
||||||
|
<Linker Name="ExeDescription"></Linker>
|
||||||
|
</Linker>
|
||||||
|
<Directories>
|
||||||
|
<Directories Name="OutputDir"></Directories>
|
||||||
|
<Directories Name="UnitOutputDir">.\</Directories>
|
||||||
|
<Directories Name="PackageDLLOutputDir">..\..\Output\Debug\Cliente</Directories>
|
||||||
|
<Directories Name="PackageDCPOutputDir">..\Lib</Directories>
|
||||||
|
<Directories Name="SearchPath">..\Lib</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>
|
||||||
|
<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">3082</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> <Signing>
|
||||||
|
<Signing Name="SignAssembly">False</Signing>
|
||||||
|
</Signing>
|
||||||
|
<buildevents/>
|
||||||
|
</Delphi.Personality>
|
||||||
|
</BorlandProject>
|
||||||
|
|
||||||
|
<!-- EurekaLog First Line
|
||||||
|
[Exception Log]
|
||||||
|
EurekaLog Version=6006
|
||||||
|
Activate=0
|
||||||
|
Activate Handle=1
|
||||||
|
Save Log File=1
|
||||||
|
Foreground Tab=0
|
||||||
|
Freeze Activate=0
|
||||||
|
Freeze Timeout=0
|
||||||
|
SMTP From=eurekalog@email.com
|
||||||
|
SMTP Host=
|
||||||
|
SMTP Port=25
|
||||||
|
SMTP UserID=
|
||||||
|
SMTP Password=
|
||||||
|
Append to Log=0
|
||||||
|
TerminateBtn Operation=2
|
||||||
|
Errors Number=32
|
||||||
|
Errors Terminate=3
|
||||||
|
Email Address=
|
||||||
|
Email Object=
|
||||||
|
Email Send Options=0
|
||||||
|
Output Path=
|
||||||
|
Encrypt Password=
|
||||||
|
AutoCloseDialogSecs=0
|
||||||
|
WebSendMode=0
|
||||||
|
SupportULR=
|
||||||
|
HTMLLayout Count=15
|
||||||
|
HTMLLine0="%3Chtml%3E"
|
||||||
|
HTMLLine1=" %3Chead%3E"
|
||||||
|
HTMLLine2=" %3C/head%3E"
|
||||||
|
HTMLLine3=" %3Cbody TopMargin=10 LeftMargin=10%3E"
|
||||||
|
HTMLLine4=" %3Ctable width="100%%" border="0"%3E"
|
||||||
|
HTMLLine5=" %3Ctr%3E"
|
||||||
|
HTMLLine6=" %3Ctd nowrap%3E"
|
||||||
|
HTMLLine7=" %3Cfont face="Lucida Console, Courier" size="2"%3E"
|
||||||
|
HTMLLine8=" %3C%%HTML_TAG%%%3E"
|
||||||
|
HTMLLine9=" %3C/font%3E"
|
||||||
|
HTMLLine10=" %3C/td%3E"
|
||||||
|
HTMLLine11=" %3C/tr%3E"
|
||||||
|
HTMLLine12=" %3C/table%3E"
|
||||||
|
HTMLLine13=" %3C/body%3E"
|
||||||
|
HTMLLine14="%3C/html%3E"
|
||||||
|
AutoCrashOperation=2
|
||||||
|
AutoCrashNumber=10
|
||||||
|
AutoCrashMinutes=1
|
||||||
|
WebURL=
|
||||||
|
WebUserID=
|
||||||
|
WebPassword=
|
||||||
|
WebPort=0
|
||||||
|
AttachedFiles=
|
||||||
|
ProxyURL=
|
||||||
|
ProxyUser=
|
||||||
|
ProxyPassword=
|
||||||
|
ProxyPort=8080
|
||||||
|
TrakerUser=
|
||||||
|
TrakerPassword=
|
||||||
|
TrakerAssignTo=
|
||||||
|
TrakerProject=
|
||||||
|
TrakerCategory=
|
||||||
|
TrakerTrialID=
|
||||||
|
ZipPassword=
|
||||||
|
PreBuildEvent=
|
||||||
|
PostSuccessfulBuildEvent=
|
||||||
|
PostFailureBuildEvent=
|
||||||
|
ExceptionDialogType=2
|
||||||
|
Count=0
|
||||||
|
EMail Message Line Count=0
|
||||||
|
loNoDuplicateErrors=0
|
||||||
|
loAppendReproduceText=0
|
||||||
|
loDeleteLogAtVersionChange=0
|
||||||
|
loAddComputerNameInLogFileName=0
|
||||||
|
loSaveModulesAndProcessesSections=1
|
||||||
|
loSaveAssemblerAndCPUSections=1
|
||||||
|
soAppStartDate=1
|
||||||
|
soAppName=1
|
||||||
|
soAppVersionNumber=1
|
||||||
|
soAppParameters=1
|
||||||
|
soAppCompilationDate=1
|
||||||
|
soAppUpTime=1
|
||||||
|
soExcDate=1
|
||||||
|
soExcAddress=1
|
||||||
|
soExcModuleName=1
|
||||||
|
soExcModuleVersion=1
|
||||||
|
soExcType=1
|
||||||
|
soExcMessage=1
|
||||||
|
soExcID=1
|
||||||
|
soExcCount=1
|
||||||
|
soExcStatus=1
|
||||||
|
soExcNote=1
|
||||||
|
soUserID=1
|
||||||
|
soUserName=1
|
||||||
|
soUserEmail=1
|
||||||
|
soUserPrivileges=1
|
||||||
|
soUserCompany=1
|
||||||
|
soActCtlsFormClass=1
|
||||||
|
soActCtlsFormText=1
|
||||||
|
soActCtlsControlClass=1
|
||||||
|
soActCtlsControlText=1
|
||||||
|
soCmpName=1
|
||||||
|
soCmpTotalMemory=1
|
||||||
|
soCmpFreeMemory=1
|
||||||
|
soCmpTotalDisk=1
|
||||||
|
soCmpFreeDisk=1
|
||||||
|
soCmpSysUpTime=1
|
||||||
|
soCmpProcessor=1
|
||||||
|
soCmpDisplayMode=1
|
||||||
|
soCmpDisplayDPI=1
|
||||||
|
soCmpVideoCard=1
|
||||||
|
soCmpPrinter=1
|
||||||
|
soOSType=1
|
||||||
|
soOSBuildN=1
|
||||||
|
soOSUpdate=1
|
||||||
|
soOSLanguage=1
|
||||||
|
soOSCharset=1
|
||||||
|
soNetIP=1
|
||||||
|
soNetSubmask=1
|
||||||
|
soNetGateway=1
|
||||||
|
soNetDNS1=1
|
||||||
|
soNetDNS2=1
|
||||||
|
soNetDHCP=1
|
||||||
|
soCustomData=1
|
||||||
|
sndShowSendDialog=1
|
||||||
|
sndShowSuccessFailureMsg=0
|
||||||
|
sndSendEntireLog=0
|
||||||
|
sndSendXMLLogCopy=0
|
||||||
|
sndSendScreenshot=1
|
||||||
|
sndUseOnlyActiveWindow=0
|
||||||
|
sndSendLastHTMLPage=1
|
||||||
|
sndSendInSeparatedThread=0
|
||||||
|
sndAddDateInFileName=0
|
||||||
|
sndAddComputerNameInFileName=0
|
||||||
|
edoSendErrorReportChecked=1
|
||||||
|
edoAttachScreenshotChecked=1
|
||||||
|
edoShowCopyToClipOption=1
|
||||||
|
edoShowDetailsButton=1
|
||||||
|
edoShowInDetailedMode=0
|
||||||
|
edoShowInTopMostMode=0
|
||||||
|
edoUseEurekaLogLookAndFeel=0
|
||||||
|
edoShowSendErrorReportOption=1
|
||||||
|
edoShowAttachScreenshotOption=1
|
||||||
|
edoShowCustomButton=0
|
||||||
|
csoShowDLLs=1
|
||||||
|
csoShowBPLs=1
|
||||||
|
csoShowBorlandThreads=1
|
||||||
|
csoShowWindowsThreads=1
|
||||||
|
csoDoNotStoreProcNames=0
|
||||||
|
boPauseBorlandThreads=0
|
||||||
|
boDoNotPauseMainThread=0
|
||||||
|
boPauseWindowsThreads=0
|
||||||
|
boUseMainModuleOptions=1
|
||||||
|
boCopyLogInCaseOfError=1
|
||||||
|
boSaveCompressedCopyInCaseOfError=0
|
||||||
|
boHandleSafeCallExceptions=1
|
||||||
|
boCallRTLExceptionEvent=0
|
||||||
|
boCatchHandledExceptions=0
|
||||||
|
loCatchLeaks=0
|
||||||
|
loGroupsSonLeaks=1
|
||||||
|
loHideBorlandLeaks=1
|
||||||
|
loFreeAllLeaks=1
|
||||||
|
loCatchLeaksExceptions=1
|
||||||
|
cfoReduceFileSize=1
|
||||||
|
cfoCheckFileCorruption=0
|
||||||
|
Count mtInformationMsgCaption=1
|
||||||
|
mtInformationMsgCaption0="Information."
|
||||||
|
Count mtQuestionMsgCaption=1
|
||||||
|
mtQuestionMsgCaption0="Question."
|
||||||
|
Count mtErrorMsgCaption=1
|
||||||
|
mtErrorMsgCaption0="Error."
|
||||||
|
Count mtDialog_Caption=1
|
||||||
|
mtDialog_Caption0="Error occurred"
|
||||||
|
Count mtDialog_ErrorMsgCaption=2
|
||||||
|
mtDialog_ErrorMsgCaption0="An error has occurred during program execution."
|
||||||
|
mtDialog_ErrorMsgCaption1="Please read the following information for further details."
|
||||||
|
Count mtDialog_GeneralCaption=1
|
||||||
|
mtDialog_GeneralCaption0="General"
|
||||||
|
Count mtDialog_GeneralHeader=1
|
||||||
|
mtDialog_GeneralHeader0="General Information"
|
||||||
|
Count mtDialog_CallStackCaption=1
|
||||||
|
mtDialog_CallStackCaption0="Call Stack"
|
||||||
|
Count mtDialog_CallStackHeader=1
|
||||||
|
mtDialog_CallStackHeader0="Call Stack Information"
|
||||||
|
Count mtDialog_ModulesCaption=1
|
||||||
|
mtDialog_ModulesCaption0="Modules"
|
||||||
|
Count mtDialog_ModulesHeader=1
|
||||||
|
mtDialog_ModulesHeader0="Modules Information"
|
||||||
|
Count mtDialog_ProcessesCaption=1
|
||||||
|
mtDialog_ProcessesCaption0="Processes"
|
||||||
|
Count mtDialog_ProcessesHeader=1
|
||||||
|
mtDialog_ProcessesHeader0="Processes Information"
|
||||||
|
Count mtDialog_AsmCaption=1
|
||||||
|
mtDialog_AsmCaption0="Assembler"
|
||||||
|
Count mtDialog_AsmHeader=1
|
||||||
|
mtDialog_AsmHeader0="Assembler Information"
|
||||||
|
Count mtDialog_CPUCaption=1
|
||||||
|
mtDialog_CPUCaption0="CPU"
|
||||||
|
Count mtDialog_CPUHeader=1
|
||||||
|
mtDialog_CPUHeader0="CPU Information"
|
||||||
|
Count mtDialog_OKButtonCaption=1
|
||||||
|
mtDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtDialog_TerminateButtonCaption=1
|
||||||
|
mtDialog_TerminateButtonCaption0="%26Terminate"
|
||||||
|
Count mtDialog_RestartButtonCaption=1
|
||||||
|
mtDialog_RestartButtonCaption0="%26Restart"
|
||||||
|
Count mtDialog_DetailsButtonCaption=1
|
||||||
|
mtDialog_DetailsButtonCaption0="%26Details"
|
||||||
|
Count mtDialog_CustomButtonCaption=1
|
||||||
|
mtDialog_CustomButtonCaption0="%26Help"
|
||||||
|
Count mtDialog_SendMessage=1
|
||||||
|
mtDialog_SendMessage0="%26Send this error via Internet"
|
||||||
|
Count mtDialog_ScreenshotMessage=1
|
||||||
|
mtDialog_ScreenshotMessage0="%26Attach a Screenshot image"
|
||||||
|
Count mtDialog_CopyMessage=1
|
||||||
|
mtDialog_CopyMessage0="%26Copy to Clipboard"
|
||||||
|
Count mtDialog_SupportMessage=1
|
||||||
|
mtDialog_SupportMessage0="Go to the Support Page"
|
||||||
|
Count mtMSDialog_ErrorMsgCaption=1
|
||||||
|
mtMSDialog_ErrorMsgCaption0="The application has encountered a problem. We are sorry for the inconvenience."
|
||||||
|
Count mtMSDialog_RestartCaption=1
|
||||||
|
mtMSDialog_RestartCaption0="Restart application."
|
||||||
|
Count mtMSDialog_TerminateCaption=1
|
||||||
|
mtMSDialog_TerminateCaption0="Terminate application."
|
||||||
|
Count mtMSDialog_PleaseCaption=1
|
||||||
|
mtMSDialog_PleaseCaption0="Please tell us about this problem."
|
||||||
|
Count mtMSDialog_DescriptionCaption=1
|
||||||
|
mtMSDialog_DescriptionCaption0="We have created an error report that you can send to us. We will treat this report as confidential and anonymous."
|
||||||
|
Count mtMSDialog_SeeDetailsCaption=1
|
||||||
|
mtMSDialog_SeeDetailsCaption0="To see what data the error report contains,"
|
||||||
|
Count mtMSDialog_SeeClickCaption=1
|
||||||
|
mtMSDialog_SeeClickCaption0="click here."
|
||||||
|
Count mtMSDialog_HowToReproduceCaption=1
|
||||||
|
mtMSDialog_HowToReproduceCaption0="What were you doing when the problem happended (optional)?"
|
||||||
|
Count mtMSDialog_EmailCaption=1
|
||||||
|
mtMSDialog_EmailCaption0="Email address (optional):"
|
||||||
|
Count mtMSDialog_SendButtonCaption=1
|
||||||
|
mtMSDialog_SendButtonCaption0="%26Send Error Report"
|
||||||
|
Count mtMSDialog_NoSendButtonCaption=1
|
||||||
|
mtMSDialog_NoSendButtonCaption0="%26Don't Send"
|
||||||
|
Count mtLog_AppHeader=1
|
||||||
|
mtLog_AppHeader0="Application"
|
||||||
|
Count mtLog_AppStartDate=1
|
||||||
|
mtLog_AppStartDate0="Start Date"
|
||||||
|
Count mtLog_AppName=1
|
||||||
|
mtLog_AppName0="Name/Description"
|
||||||
|
Count mtLog_AppVersionNumber=1
|
||||||
|
mtLog_AppVersionNumber0="Version Number"
|
||||||
|
Count mtLog_AppParameters=1
|
||||||
|
mtLog_AppParameters0="Parameters"
|
||||||
|
Count mtLog_AppCompilationDate=1
|
||||||
|
mtLog_AppCompilationDate0="Compilation Date"
|
||||||
|
Count mtLog_AppUpTime=1
|
||||||
|
mtLog_AppUpTime0="Up Time"
|
||||||
|
Count mtLog_ExcHeader=1
|
||||||
|
mtLog_ExcHeader0="Exception"
|
||||||
|
Count mtLog_ExcDate=1
|
||||||
|
mtLog_ExcDate0="Date"
|
||||||
|
Count mtLog_ExcAddress=1
|
||||||
|
mtLog_ExcAddress0="Address"
|
||||||
|
Count mtLog_ExcModuleName=1
|
||||||
|
mtLog_ExcModuleName0="Module Name"
|
||||||
|
Count mtLog_ExcModuleVersion=1
|
||||||
|
mtLog_ExcModuleVersion0="Module Version"
|
||||||
|
Count mtLog_ExcType=1
|
||||||
|
mtLog_ExcType0="Type"
|
||||||
|
Count mtLog_ExcMessage=1
|
||||||
|
mtLog_ExcMessage0="Message"
|
||||||
|
Count mtLog_ExcID=1
|
||||||
|
mtLog_ExcID0="ID"
|
||||||
|
Count mtLog_ExcCount=1
|
||||||
|
mtLog_ExcCount0="Count"
|
||||||
|
Count mtLog_ExcStatus=1
|
||||||
|
mtLog_ExcStatus0="Status"
|
||||||
|
Count mtLog_ExcNote=1
|
||||||
|
mtLog_ExcNote0="Note"
|
||||||
|
Count mtLog_UserHeader=1
|
||||||
|
mtLog_UserHeader0="User"
|
||||||
|
Count mtLog_UserID=1
|
||||||
|
mtLog_UserID0="ID"
|
||||||
|
Count mtLog_UserName=1
|
||||||
|
mtLog_UserName0="Name"
|
||||||
|
Count mtLog_UserEmail=1
|
||||||
|
mtLog_UserEmail0="Email"
|
||||||
|
Count mtLog_UserCompany=1
|
||||||
|
mtLog_UserCompany0="Company"
|
||||||
|
Count mtLog_UserPrivileges=1
|
||||||
|
mtLog_UserPrivileges0="Privileges"
|
||||||
|
Count mtLog_ActCtrlsHeader=1
|
||||||
|
mtLog_ActCtrlsHeader0="Active Controls"
|
||||||
|
Count mtLog_ActCtrlsFormClass=1
|
||||||
|
mtLog_ActCtrlsFormClass0="Form Class"
|
||||||
|
Count mtLog_ActCtrlsFormText=1
|
||||||
|
mtLog_ActCtrlsFormText0="Form Text"
|
||||||
|
Count mtLog_ActCtrlsControlClass=1
|
||||||
|
mtLog_ActCtrlsControlClass0="Control Class"
|
||||||
|
Count mtLog_ActCtrlsControlText=1
|
||||||
|
mtLog_ActCtrlsControlText0="Control Text"
|
||||||
|
Count mtLog_CmpHeader=1
|
||||||
|
mtLog_CmpHeader0="Computer"
|
||||||
|
Count mtLog_CmpName=1
|
||||||
|
mtLog_CmpName0="Name"
|
||||||
|
Count mtLog_CmpTotalMemory=1
|
||||||
|
mtLog_CmpTotalMemory0="Total Memory"
|
||||||
|
Count mtLog_CmpFreeMemory=1
|
||||||
|
mtLog_CmpFreeMemory0="Free Memory"
|
||||||
|
Count mtLog_CmpTotalDisk=1
|
||||||
|
mtLog_CmpTotalDisk0="Total Disk"
|
||||||
|
Count mtLog_CmpFreeDisk=1
|
||||||
|
mtLog_CmpFreeDisk0="Free Disk"
|
||||||
|
Count mtLog_CmpSystemUpTime=1
|
||||||
|
mtLog_CmpSystemUpTime0="System Up Time"
|
||||||
|
Count mtLog_CmpProcessor=1
|
||||||
|
mtLog_CmpProcessor0="Processor"
|
||||||
|
Count mtLog_CmpDisplayMode=1
|
||||||
|
mtLog_CmpDisplayMode0="Display Mode"
|
||||||
|
Count mtLog_CmpDisplayDPI=1
|
||||||
|
mtLog_CmpDisplayDPI0="Display DPI"
|
||||||
|
Count mtLog_CmpVideoCard=1
|
||||||
|
mtLog_CmpVideoCard0="Video Card"
|
||||||
|
Count mtLog_CmpPrinter=1
|
||||||
|
mtLog_CmpPrinter0="Printer"
|
||||||
|
Count mtLog_OSHeader=1
|
||||||
|
mtLog_OSHeader0="Operating System"
|
||||||
|
Count mtLog_OSType=1
|
||||||
|
mtLog_OSType0="Type"
|
||||||
|
Count mtLog_OSBuildN=1
|
||||||
|
mtLog_OSBuildN0="Build #"
|
||||||
|
Count mtLog_OSUpdate=1
|
||||||
|
mtLog_OSUpdate0="Update"
|
||||||
|
Count mtLog_OSLanguage=1
|
||||||
|
mtLog_OSLanguage0="Language"
|
||||||
|
Count mtLog_OSCharset=1
|
||||||
|
mtLog_OSCharset0="Charset"
|
||||||
|
Count mtLog_NetHeader=1
|
||||||
|
mtLog_NetHeader0="Network"
|
||||||
|
Count mtLog_NetIP=1
|
||||||
|
mtLog_NetIP0="IP Address"
|
||||||
|
Count mtLog_NetSubmask=1
|
||||||
|
mtLog_NetSubmask0="Submask"
|
||||||
|
Count mtLog_NetGateway=1
|
||||||
|
mtLog_NetGateway0="Gateway"
|
||||||
|
Count mtLog_NetDNS1=1
|
||||||
|
mtLog_NetDNS10="DNS 1"
|
||||||
|
Count mtLog_NetDNS2=1
|
||||||
|
mtLog_NetDNS20="DNS 2"
|
||||||
|
Count mtLog_NetDHCP=1
|
||||||
|
mtLog_NetDHCP0="DHCP"
|
||||||
|
Count mtLog_CustInfoHeader=1
|
||||||
|
mtLog_CustInfoHeader0="Custom Information"
|
||||||
|
Count mtCallStack_Address=1
|
||||||
|
mtCallStack_Address0="Address"
|
||||||
|
Count mtCallStack_Name=1
|
||||||
|
mtCallStack_Name0="Module"
|
||||||
|
Count mtCallStack_Unit=1
|
||||||
|
mtCallStack_Unit0="Unit"
|
||||||
|
Count mtCallStack_Class=1
|
||||||
|
mtCallStack_Class0="Class"
|
||||||
|
Count mtCallStack_Procedure=1
|
||||||
|
mtCallStack_Procedure0="Procedure/Method"
|
||||||
|
Count mtCallStack_Line=1
|
||||||
|
mtCallStack_Line0="Line"
|
||||||
|
Count mtCallStack_MainThread=1
|
||||||
|
mtCallStack_MainThread0="Main"
|
||||||
|
Count mtCallStack_ExceptionThread=1
|
||||||
|
mtCallStack_ExceptionThread0="Exception Thread"
|
||||||
|
Count mtCallStack_RunningThread=1
|
||||||
|
mtCallStack_RunningThread0="Running Thread"
|
||||||
|
Count mtCallStack_CallingThread=1
|
||||||
|
mtCallStack_CallingThread0="Calling Thread"
|
||||||
|
Count mtCallStack_ThreadID=1
|
||||||
|
mtCallStack_ThreadID0="ID"
|
||||||
|
Count mtCallStack_ThreadPriority=1
|
||||||
|
mtCallStack_ThreadPriority0="Priority"
|
||||||
|
Count mtCallStack_ThreadClass=1
|
||||||
|
mtCallStack_ThreadClass0="Class"
|
||||||
|
Count mtCallStack_LeakCaption=1
|
||||||
|
mtCallStack_LeakCaption0="Memory Leak"
|
||||||
|
Count mtCallStack_LeakData=1
|
||||||
|
mtCallStack_LeakData0="Data"
|
||||||
|
Count mtCallStack_LeakType=1
|
||||||
|
mtCallStack_LeakType0="Type"
|
||||||
|
Count mtCallStack_LeakSize=1
|
||||||
|
mtCallStack_LeakSize0="Total size"
|
||||||
|
Count mtCallStack_LeakCount=1
|
||||||
|
mtCallStack_LeakCount0="Count"
|
||||||
|
Count mtSendDialog_Caption=1
|
||||||
|
mtSendDialog_Caption0="Send."
|
||||||
|
Count mtSendDialog_Message=1
|
||||||
|
mtSendDialog_Message0="Message"
|
||||||
|
Count mtSendDialog_Resolving=1
|
||||||
|
mtSendDialog_Resolving0="Resolving DNS..."
|
||||||
|
Count mtSendDialog_Login=1
|
||||||
|
mtSendDialog_Login0="Login..."
|
||||||
|
Count mtSendDialog_Connecting=1
|
||||||
|
mtSendDialog_Connecting0="Connecting with server..."
|
||||||
|
Count mtSendDialog_Connected=1
|
||||||
|
mtSendDialog_Connected0="Connected with server."
|
||||||
|
Count mtSendDialog_Sending=1
|
||||||
|
mtSendDialog_Sending0="Sending message..."
|
||||||
|
Count mtSendDialog_Sent=1
|
||||||
|
mtSendDialog_Sent0="Message sent."
|
||||||
|
Count mtSendDialog_SelectProject=1
|
||||||
|
mtSendDialog_SelectProject0="Select project..."
|
||||||
|
Count mtSendDialog_Searching=1
|
||||||
|
mtSendDialog_Searching0="Searching..."
|
||||||
|
Count mtSendDialog_Modifying=1
|
||||||
|
mtSendDialog_Modifying0="Modifying..."
|
||||||
|
Count mtSendDialog_Disconnecting=1
|
||||||
|
mtSendDialog_Disconnecting0="Disconnecting..."
|
||||||
|
Count mtSendDialog_Disconnected=1
|
||||||
|
mtSendDialog_Disconnected0="Disconnected."
|
||||||
|
Count mtReproduceDialog_Caption=1
|
||||||
|
mtReproduceDialog_Caption0="Request"
|
||||||
|
Count mtReproduceDialog_Request=1
|
||||||
|
mtReproduceDialog_Request0="Please describe the steps to reproduce the error:"
|
||||||
|
Count mtReproduceDialog_OKButtonCaption=1
|
||||||
|
mtReproduceDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtModules_Handle=1
|
||||||
|
mtModules_Handle0="Handle"
|
||||||
|
Count mtModules_Name=1
|
||||||
|
mtModules_Name0="Name"
|
||||||
|
Count mtModules_Description=1
|
||||||
|
mtModules_Description0="Description"
|
||||||
|
Count mtModules_Version=1
|
||||||
|
mtModules_Version0="Version"
|
||||||
|
Count mtModules_Size=1
|
||||||
|
mtModules_Size0="Size"
|
||||||
|
Count mtModules_LastModified=1
|
||||||
|
mtModules_LastModified0="Modified"
|
||||||
|
Count mtModules_Path=1
|
||||||
|
mtModules_Path0="Path"
|
||||||
|
Count mtProcesses_ID=1
|
||||||
|
mtProcesses_ID0="ID"
|
||||||
|
Count mtProcesses_Name=1
|
||||||
|
mtProcesses_Name0="Name"
|
||||||
|
Count mtProcesses_Description=1
|
||||||
|
mtProcesses_Description0="Description"
|
||||||
|
Count mtProcesses_Version=1
|
||||||
|
mtProcesses_Version0="Version"
|
||||||
|
Count mtProcesses_Memory=1
|
||||||
|
mtProcesses_Memory0="Memory"
|
||||||
|
Count mtProcesses_Priority=1
|
||||||
|
mtProcesses_Priority0="Priority"
|
||||||
|
Count mtProcesses_Threads=1
|
||||||
|
mtProcesses_Threads0="Threads"
|
||||||
|
Count mtProcesses_Path=1
|
||||||
|
mtProcesses_Path0="Path"
|
||||||
|
Count mtCPU_Registers=1
|
||||||
|
mtCPU_Registers0="Registers"
|
||||||
|
Count mtCPU_Stack=1
|
||||||
|
mtCPU_Stack0="Stack"
|
||||||
|
Count mtCPU_MemoryDump=1
|
||||||
|
mtCPU_MemoryDump0="Memory Dump"
|
||||||
|
Count mtSend_SuccessMsg=1
|
||||||
|
mtSend_SuccessMsg0="The message was sent successfully."
|
||||||
|
Count mtSend_FailureMsg=1
|
||||||
|
mtSend_FailureMsg0="Sorry, sending the message didn't work."
|
||||||
|
Count mtSend_BugClosedMsg=2
|
||||||
|
mtSend_BugClosedMsg0="These BUG is just closed."
|
||||||
|
mtSend_BugClosedMsg1="Contact the program support to obtain an update."
|
||||||
|
Count mtSend_UnknownErrorMsg=1
|
||||||
|
mtSend_UnknownErrorMsg0="Unknown error."
|
||||||
|
Count mtSend_InvalidLoginMsg=1
|
||||||
|
mtSend_InvalidLoginMsg0="Invalid login request."
|
||||||
|
Count mtSend_InvalidSearchMsg=1
|
||||||
|
mtSend_InvalidSearchMsg0="Invalid search request."
|
||||||
|
Count mtSend_InvalidSelectionMsg=1
|
||||||
|
mtSend_InvalidSelectionMsg0="Invalid selection request."
|
||||||
|
Count mtSend_InvalidInsertMsg=1
|
||||||
|
mtSend_InvalidInsertMsg0="Invalid insert request."
|
||||||
|
Count mtSend_InvalidModifyMsg=1
|
||||||
|
mtSend_InvalidModifyMsg0="Invalid modify request."
|
||||||
|
Count mtFileCrackedMsg=2
|
||||||
|
mtFileCrackedMsg0="This file is cracked."
|
||||||
|
mtFileCrackedMsg1="The application will be closed."
|
||||||
|
Count mtException_LeakMultiFree=1
|
||||||
|
mtException_LeakMultiFree0="Multi Free memory leak."
|
||||||
|
Count mtException_LeakMemoryOverrun=1
|
||||||
|
mtException_LeakMemoryOverrun0="Memory Overrun leak."
|
||||||
|
Count mtException_AntiFreeze=1
|
||||||
|
mtException_AntiFreeze0="The application seems to be frozen."
|
||||||
|
Count mtInvalidEmailMsg=1
|
||||||
|
mtInvalidEmailMsg0="Invalid email."
|
||||||
|
TextsCollection=English
|
||||||
|
EurekaLog Last Line -->
|
||||||
42
Source/GUIBase/GUIBase.cfg
Normal file
42
Source/GUIBase/GUIBase.cfg
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
-$A8
|
||||||
|
-$B-
|
||||||
|
-$C+
|
||||||
|
-$D+
|
||||||
|
-$E-
|
||||||
|
-$F-
|
||||||
|
-$G+
|
||||||
|
-$H+
|
||||||
|
-$I+
|
||||||
|
-$J-
|
||||||
|
-$K-
|
||||||
|
-$L+
|
||||||
|
-$M-
|
||||||
|
-$N+
|
||||||
|
-$O-
|
||||||
|
-$P+
|
||||||
|
-$Q-
|
||||||
|
-$R-
|
||||||
|
-$S-
|
||||||
|
-$T-
|
||||||
|
-$U-
|
||||||
|
-$V+
|
||||||
|
-$W+
|
||||||
|
-$X+
|
||||||
|
-$YD
|
||||||
|
-$Z1
|
||||||
|
-GD
|
||||||
|
-cg
|
||||||
|
-vn
|
||||||
|
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||||
|
-H+
|
||||||
|
-W+
|
||||||
|
-M
|
||||||
|
-$M16384,1048576
|
||||||
|
-K$00400000
|
||||||
|
-N0".\"
|
||||||
|
-LE"..\..\Output\Debug\Cliente"
|
||||||
|
-LN"..\Lib"
|
||||||
|
-U"..\Lib"
|
||||||
|
-O"..\Lib"
|
||||||
|
-I"..\Lib"
|
||||||
|
-R"..\Lib"
|
||||||
70
Source/GUIBase/GUIBase.dpk
Normal file
70
Source/GUIBase/GUIBase.dpk
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
package GUIBase;
|
||||||
|
|
||||||
|
{$R *.res}
|
||||||
|
{$ALIGN 8}
|
||||||
|
{$ASSERTIONS ON}
|
||||||
|
{$BOOLEVAL OFF}
|
||||||
|
{$DEBUGINFO ON}
|
||||||
|
{$EXTENDEDSYNTAX ON}
|
||||||
|
{$IMPORTEDDATA ON}
|
||||||
|
{$IOCHECKS ON}
|
||||||
|
{$LOCALSYMBOLS ON}
|
||||||
|
{$LONGSTRINGS ON}
|
||||||
|
{$OPENSTRINGS ON}
|
||||||
|
{$OPTIMIZATION OFF}
|
||||||
|
{$OVERFLOWCHECKS OFF}
|
||||||
|
{$RANGECHECKS OFF}
|
||||||
|
{$REFERENCEINFO ON}
|
||||||
|
{$SAFEDIVIDE OFF}
|
||||||
|
{$STACKFRAMES ON}
|
||||||
|
{$TYPEDADDRESS OFF}
|
||||||
|
{$VARSTRINGCHECKS ON}
|
||||||
|
{$WRITEABLECONST OFF}
|
||||||
|
{$MINENUMSIZE 1}
|
||||||
|
{$IMAGEBASE $400000}
|
||||||
|
{$IMPLICITBUILD ON}
|
||||||
|
{$DEFINE DEBUG}
|
||||||
|
|
||||||
|
requires
|
||||||
|
rtl,
|
||||||
|
vcl,
|
||||||
|
dbrtl,
|
||||||
|
vcldb,
|
||||||
|
dxBarD10,
|
||||||
|
dxBarExtItemsD10,
|
||||||
|
dxPScxCommonD10,
|
||||||
|
dxPScxGridLnkD10,
|
||||||
|
dxPsPrVwAdvD10,
|
||||||
|
dxLayoutControlD10,
|
||||||
|
frx10,
|
||||||
|
frxe10,
|
||||||
|
fs10,
|
||||||
|
JvAppFrmD11R,
|
||||||
|
JvCtrlsD11R,
|
||||||
|
Base;
|
||||||
|
|
||||||
|
contains
|
||||||
|
uEditorBase in 'uEditorBase.pas' {fEditorBase: TCustomEditor},
|
||||||
|
uEditorGridBase in 'uEditorGridBase.pas' {fEditorGridBase: TCustomEditor},
|
||||||
|
uEditorItem in 'uEditorItem.pas' {fEditorItem: TCustomEditor},
|
||||||
|
uEditorPreview in 'uEditorPreview.pas' {fEditorPreview: TCustomEditor},
|
||||||
|
uViewPreview in 'uViewPreview.pas' {frViewPreview: TFrame},
|
||||||
|
uViewBase in 'uViewBase.pas' {frViewBase: TFrame},
|
||||||
|
uEditorDBBase in 'uEditorDBBase.pas' {fEditorDBBase: TCustomEditor},
|
||||||
|
uEditorDBItem in 'uEditorDBItem.pas' {fEditorDBItem: TCustomEditor},
|
||||||
|
uViewBarraSeleccion in 'uViewBarraSeleccion.pas' {frViewBarraSeleccion: TFrame},
|
||||||
|
uViewGridBase in 'uViewGridBase.pas' {frViewGridBase: TFrame},
|
||||||
|
uViewFormaPago in 'uViewFormaPago.pas' {frViewFormaPago: TFrame},
|
||||||
|
uViewObservaciones in 'uViewObservaciones.pas' {frViewObservaciones: TFrame},
|
||||||
|
uViewTotales in 'uViewTotales.pas' {frViewTotales: TFrame},
|
||||||
|
uViewDetallesBase in 'uViewDetallesBase.pas' {frViewDetallesBase: TFrame},
|
||||||
|
uViewIncidencias in 'uViewIncidencias.pas' {frViewIncidencias: TFrame},
|
||||||
|
uViewDetallesDTO in 'uViewDetallesDTO.pas' {frViewDetallesDTO: TCustomView},
|
||||||
|
uViewDetallesGenerico in 'uViewDetallesGenerico.pas' {frViewDetallesGenerico: TFrame},
|
||||||
|
uViewGrid2Niveles in 'uViewGrid2Niveles.pas' {frViewGrid2Niveles: TFrame},
|
||||||
|
uEditorBasico in 'uEditorBasico.pas' {fEditorBasico},
|
||||||
|
uDialogBase in 'uDialogBase.pas' {fDialogBase},
|
||||||
|
uViewFiltroBase in 'uViewFiltroBase.pas' {frViewFiltroBase: TFrame},
|
||||||
|
uViewGrid in 'uViewGrid.pas' {frViewGrid: TFrame};
|
||||||
|
|
||||||
|
end.
|
||||||
626
Source/GUIBase/GUIBase.dproj
Normal file
626
Source/GUIBase/GUIBase.dproj
Normal file
@ -0,0 +1,626 @@
|
|||||||
|
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup>
|
||||||
|
<ProjectGuid>{0ca27a95-0b81-4724-84bf-8f8ed4e421ae}</ProjectGuid>
|
||||||
|
<MainSource>GUIBase.dpk</MainSource>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
|
||||||
|
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Cliente\GUIBase.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_Optimize>False</DCC_Optimize>
|
||||||
|
<DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
|
||||||
|
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
|
||||||
|
<DCC_MapFile>3</DCC_MapFile>
|
||||||
|
<DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
|
||||||
|
<DCC_DebugVN>True</DCC_DebugVN>
|
||||||
|
<DCC_DcuOutput>.\</DCC_DcuOutput>
|
||||||
|
<DCC_ObjOutput>.\</DCC_ObjOutput>
|
||||||
|
<DCC_HppOutput>.\</DCC_HppOutput>
|
||||||
|
<DCC_BplOutput>..\..\Output\Release\Cliente</DCC_BplOutput>
|
||||||
|
<DCC_DcpOutput>..\Lib</DCC_DcpOutput>
|
||||||
|
<DCC_UnitSearchPath>..\Lib</DCC_UnitSearchPath>
|
||||||
|
<DCC_ResourcePath>..\Lib</DCC_ResourcePath>
|
||||||
|
<DCC_ObjPath>..\Lib</DCC_ObjPath>
|
||||||
|
<DCC_IncludePath>..\Lib</DCC_IncludePath>
|
||||||
|
<DCC_Define>RELEASE</DCC_Define>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<Version>7.0</Version>
|
||||||
|
<DCC_Optimize>False</DCC_Optimize>
|
||||||
|
<DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
|
||||||
|
<DCC_MapFile>3</DCC_MapFile>
|
||||||
|
<DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
|
||||||
|
<DCC_DebugVN>True</DCC_DebugVN>
|
||||||
|
<DCC_DcuOutput>.\</DCC_DcuOutput>
|
||||||
|
<DCC_ObjOutput>.\</DCC_ObjOutput>
|
||||||
|
<DCC_HppOutput>.\</DCC_HppOutput>
|
||||||
|
<DCC_BplOutput>..\..\Output\Debug\Cliente</DCC_BplOutput>
|
||||||
|
<DCC_DcpOutput>..\Lib</DCC_DcpOutput>
|
||||||
|
<DCC_UnitSearchPath>..\Lib</DCC_UnitSearchPath>
|
||||||
|
<DCC_ResourcePath>..\Lib</DCC_ResourcePath>
|
||||||
|
<DCC_ObjPath>..\Lib</DCC_ObjPath>
|
||||||
|
<DCC_IncludePath>..\Lib</DCC_IncludePath>
|
||||||
|
<DCC_Define>DEBUG</DCC_Define>
|
||||||
|
</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">True</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</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">3082</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">GUIBase.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
|
||||||
|
</ProjectExtensions>
|
||||||
|
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
|
||||||
|
<ItemGroup>
|
||||||
|
<DelphiCompile Include="GUIBase.dpk">
|
||||||
|
<MainSource>MainSource</MainSource>
|
||||||
|
</DelphiCompile>
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\Base.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\dxBarD10.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\dxBarExtItemsD10.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\dxLayoutControlD10.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\dxPScxCommonD10.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\dxPScxGridLnkD10.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\dxPsPrVwAdvD10.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\frx10.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\frxe10.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\fs10.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvAppFrmD11R.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvCtrlsD11R.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
|
||||||
|
<DCCReference Include="uDialogBase.pas">
|
||||||
|
<Form>fDialogBase</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uEditorBase.pas">
|
||||||
|
<Form>fEditorBase</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uEditorBasico.pas">
|
||||||
|
<Form>fEditorBasico</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uEditorDBBase.pas">
|
||||||
|
<Form>fEditorDBBase</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uEditorDBItem.pas">
|
||||||
|
<Form>fEditorDBItem</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uEditorGridBase.pas">
|
||||||
|
<Form>fEditorGridBase</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uEditorItem.pas">
|
||||||
|
<Form>fEditorItem</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uEditorPreview.pas">
|
||||||
|
<Form>fEditorPreview</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewBarraSeleccion.pas">
|
||||||
|
<Form>frViewBarraSeleccion</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewBase.pas">
|
||||||
|
<Form>frViewBase</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewDetallesBase.pas">
|
||||||
|
<Form>frViewDetallesBase</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewDetallesDTO.pas">
|
||||||
|
<Form>frViewDetallesDTO</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewDetallesGenerico.pas">
|
||||||
|
<Form>frViewDetallesGenerico</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewFiltroBase.pas">
|
||||||
|
<Form>frViewFiltroBase</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewFormaPago.pas">
|
||||||
|
<Form>frViewFormaPago</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewGrid.pas">
|
||||||
|
<Form>frViewGrid</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewGrid2Niveles.pas">
|
||||||
|
<Form>frViewGrid2Niveles</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewGridBase.pas">
|
||||||
|
<Form>frViewGridBase</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewIncidencias.pas">
|
||||||
|
<Form>frViewIncidencias</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewObservaciones.pas">
|
||||||
|
<Form>frViewObservaciones</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewPreview.pas">
|
||||||
|
<Form>frViewPreview</Form>
|
||||||
|
</DCCReference>
|
||||||
|
<DCCReference Include="uViewTotales.pas">
|
||||||
|
<Form>frViewTotales</Form>
|
||||||
|
</DCCReference>
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
|
<!-- EurekaLog First Line
|
||||||
|
[Exception Log]
|
||||||
|
EurekaLog Version=6006
|
||||||
|
Activate=0
|
||||||
|
Activate Handle=1
|
||||||
|
Save Log File=1
|
||||||
|
Foreground Tab=0
|
||||||
|
Freeze Activate=0
|
||||||
|
Freeze Timeout=0
|
||||||
|
SMTP From=eurekalog@email.com
|
||||||
|
SMTP Host=
|
||||||
|
SMTP Port=25
|
||||||
|
SMTP UserID=
|
||||||
|
SMTP Password=
|
||||||
|
Append to Log=0
|
||||||
|
TerminateBtn Operation=2
|
||||||
|
Errors Number=32
|
||||||
|
Errors Terminate=3
|
||||||
|
Email Address=
|
||||||
|
Email Object=
|
||||||
|
Email Send Options=0
|
||||||
|
Output Path=
|
||||||
|
Encrypt Password=
|
||||||
|
AutoCloseDialogSecs=0
|
||||||
|
WebSendMode=0
|
||||||
|
SupportULR=
|
||||||
|
HTMLLayout Count=15
|
||||||
|
HTMLLine0="%3Chtml%3E"
|
||||||
|
HTMLLine1=" %3Chead%3E"
|
||||||
|
HTMLLine2=" %3C/head%3E"
|
||||||
|
HTMLLine3=" %3Cbody TopMargin=10 LeftMargin=10%3E"
|
||||||
|
HTMLLine4=" %3Ctable width="100%%" border="0"%3E"
|
||||||
|
HTMLLine5=" %3Ctr%3E"
|
||||||
|
HTMLLine6=" %3Ctd nowrap%3E"
|
||||||
|
HTMLLine7=" %3Cfont face="Lucida Console, Courier" size="2"%3E"
|
||||||
|
HTMLLine8=" %3C%%HTML_TAG%%%3E"
|
||||||
|
HTMLLine9=" %3C/font%3E"
|
||||||
|
HTMLLine10=" %3C/td%3E"
|
||||||
|
HTMLLine11=" %3C/tr%3E"
|
||||||
|
HTMLLine12=" %3C/table%3E"
|
||||||
|
HTMLLine13=" %3C/body%3E"
|
||||||
|
HTMLLine14="%3C/html%3E"
|
||||||
|
AutoCrashOperation=2
|
||||||
|
AutoCrashNumber=10
|
||||||
|
AutoCrashMinutes=1
|
||||||
|
WebURL=
|
||||||
|
WebUserID=
|
||||||
|
WebPassword=
|
||||||
|
WebPort=0
|
||||||
|
AttachedFiles=
|
||||||
|
ProxyURL=
|
||||||
|
ProxyUser=
|
||||||
|
ProxyPassword=
|
||||||
|
ProxyPort=8080
|
||||||
|
TrakerUser=
|
||||||
|
TrakerPassword=
|
||||||
|
TrakerAssignTo=
|
||||||
|
TrakerProject=
|
||||||
|
TrakerCategory=
|
||||||
|
TrakerTrialID=
|
||||||
|
ZipPassword=
|
||||||
|
PreBuildEvent=
|
||||||
|
PostSuccessfulBuildEvent=
|
||||||
|
PostFailureBuildEvent=
|
||||||
|
ExceptionDialogType=2
|
||||||
|
Count=0
|
||||||
|
EMail Message Line Count=0
|
||||||
|
loNoDuplicateErrors=0
|
||||||
|
loAppendReproduceText=0
|
||||||
|
loDeleteLogAtVersionChange=0
|
||||||
|
loAddComputerNameInLogFileName=0
|
||||||
|
loSaveModulesAndProcessesSections=1
|
||||||
|
loSaveAssemblerAndCPUSections=1
|
||||||
|
soAppStartDate=1
|
||||||
|
soAppName=1
|
||||||
|
soAppVersionNumber=1
|
||||||
|
soAppParameters=1
|
||||||
|
soAppCompilationDate=1
|
||||||
|
soAppUpTime=1
|
||||||
|
soExcDate=1
|
||||||
|
soExcAddress=1
|
||||||
|
soExcModuleName=1
|
||||||
|
soExcModuleVersion=1
|
||||||
|
soExcType=1
|
||||||
|
soExcMessage=1
|
||||||
|
soExcID=1
|
||||||
|
soExcCount=1
|
||||||
|
soExcStatus=1
|
||||||
|
soExcNote=1
|
||||||
|
soUserID=1
|
||||||
|
soUserName=1
|
||||||
|
soUserEmail=1
|
||||||
|
soUserPrivileges=1
|
||||||
|
soUserCompany=1
|
||||||
|
soActCtlsFormClass=1
|
||||||
|
soActCtlsFormText=1
|
||||||
|
soActCtlsControlClass=1
|
||||||
|
soActCtlsControlText=1
|
||||||
|
soCmpName=1
|
||||||
|
soCmpTotalMemory=1
|
||||||
|
soCmpFreeMemory=1
|
||||||
|
soCmpTotalDisk=1
|
||||||
|
soCmpFreeDisk=1
|
||||||
|
soCmpSysUpTime=1
|
||||||
|
soCmpProcessor=1
|
||||||
|
soCmpDisplayMode=1
|
||||||
|
soCmpDisplayDPI=1
|
||||||
|
soCmpVideoCard=1
|
||||||
|
soCmpPrinter=1
|
||||||
|
soOSType=1
|
||||||
|
soOSBuildN=1
|
||||||
|
soOSUpdate=1
|
||||||
|
soOSLanguage=1
|
||||||
|
soOSCharset=1
|
||||||
|
soNetIP=1
|
||||||
|
soNetSubmask=1
|
||||||
|
soNetGateway=1
|
||||||
|
soNetDNS1=1
|
||||||
|
soNetDNS2=1
|
||||||
|
soNetDHCP=1
|
||||||
|
soCustomData=1
|
||||||
|
sndShowSendDialog=1
|
||||||
|
sndShowSuccessFailureMsg=0
|
||||||
|
sndSendEntireLog=0
|
||||||
|
sndSendXMLLogCopy=0
|
||||||
|
sndSendScreenshot=1
|
||||||
|
sndUseOnlyActiveWindow=0
|
||||||
|
sndSendLastHTMLPage=1
|
||||||
|
sndSendInSeparatedThread=0
|
||||||
|
sndAddDateInFileName=0
|
||||||
|
sndAddComputerNameInFileName=0
|
||||||
|
edoSendErrorReportChecked=1
|
||||||
|
edoAttachScreenshotChecked=1
|
||||||
|
edoShowCopyToClipOption=1
|
||||||
|
edoShowDetailsButton=1
|
||||||
|
edoShowInDetailedMode=0
|
||||||
|
edoShowInTopMostMode=0
|
||||||
|
edoUseEurekaLogLookAndFeel=0
|
||||||
|
edoShowSendErrorReportOption=1
|
||||||
|
edoShowAttachScreenshotOption=1
|
||||||
|
edoShowCustomButton=0
|
||||||
|
csoShowDLLs=1
|
||||||
|
csoShowBPLs=1
|
||||||
|
csoShowBorlandThreads=1
|
||||||
|
csoShowWindowsThreads=1
|
||||||
|
csoDoNotStoreProcNames=0
|
||||||
|
boPauseBorlandThreads=0
|
||||||
|
boDoNotPauseMainThread=0
|
||||||
|
boPauseWindowsThreads=0
|
||||||
|
boUseMainModuleOptions=1
|
||||||
|
boCopyLogInCaseOfError=1
|
||||||
|
boSaveCompressedCopyInCaseOfError=0
|
||||||
|
boHandleSafeCallExceptions=1
|
||||||
|
boCallRTLExceptionEvent=0
|
||||||
|
boCatchHandledExceptions=0
|
||||||
|
loCatchLeaks=0
|
||||||
|
loGroupsSonLeaks=1
|
||||||
|
loHideBorlandLeaks=1
|
||||||
|
loFreeAllLeaks=1
|
||||||
|
loCatchLeaksExceptions=1
|
||||||
|
cfoReduceFileSize=1
|
||||||
|
cfoCheckFileCorruption=0
|
||||||
|
Count mtInformationMsgCaption=1
|
||||||
|
mtInformationMsgCaption0="Information."
|
||||||
|
Count mtQuestionMsgCaption=1
|
||||||
|
mtQuestionMsgCaption0="Question."
|
||||||
|
Count mtErrorMsgCaption=1
|
||||||
|
mtErrorMsgCaption0="Error."
|
||||||
|
Count mtDialog_Caption=1
|
||||||
|
mtDialog_Caption0="Error occurred"
|
||||||
|
Count mtDialog_ErrorMsgCaption=2
|
||||||
|
mtDialog_ErrorMsgCaption0="An error has occurred during program execution."
|
||||||
|
mtDialog_ErrorMsgCaption1="Please read the following information for further details."
|
||||||
|
Count mtDialog_GeneralCaption=1
|
||||||
|
mtDialog_GeneralCaption0="General"
|
||||||
|
Count mtDialog_GeneralHeader=1
|
||||||
|
mtDialog_GeneralHeader0="General Information"
|
||||||
|
Count mtDialog_CallStackCaption=1
|
||||||
|
mtDialog_CallStackCaption0="Call Stack"
|
||||||
|
Count mtDialog_CallStackHeader=1
|
||||||
|
mtDialog_CallStackHeader0="Call Stack Information"
|
||||||
|
Count mtDialog_ModulesCaption=1
|
||||||
|
mtDialog_ModulesCaption0="Modules"
|
||||||
|
Count mtDialog_ModulesHeader=1
|
||||||
|
mtDialog_ModulesHeader0="Modules Information"
|
||||||
|
Count mtDialog_ProcessesCaption=1
|
||||||
|
mtDialog_ProcessesCaption0="Processes"
|
||||||
|
Count mtDialog_ProcessesHeader=1
|
||||||
|
mtDialog_ProcessesHeader0="Processes Information"
|
||||||
|
Count mtDialog_AsmCaption=1
|
||||||
|
mtDialog_AsmCaption0="Assembler"
|
||||||
|
Count mtDialog_AsmHeader=1
|
||||||
|
mtDialog_AsmHeader0="Assembler Information"
|
||||||
|
Count mtDialog_CPUCaption=1
|
||||||
|
mtDialog_CPUCaption0="CPU"
|
||||||
|
Count mtDialog_CPUHeader=1
|
||||||
|
mtDialog_CPUHeader0="CPU Information"
|
||||||
|
Count mtDialog_OKButtonCaption=1
|
||||||
|
mtDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtDialog_TerminateButtonCaption=1
|
||||||
|
mtDialog_TerminateButtonCaption0="%26Terminate"
|
||||||
|
Count mtDialog_RestartButtonCaption=1
|
||||||
|
mtDialog_RestartButtonCaption0="%26Restart"
|
||||||
|
Count mtDialog_DetailsButtonCaption=1
|
||||||
|
mtDialog_DetailsButtonCaption0="%26Details"
|
||||||
|
Count mtDialog_CustomButtonCaption=1
|
||||||
|
mtDialog_CustomButtonCaption0="%26Help"
|
||||||
|
Count mtDialog_SendMessage=1
|
||||||
|
mtDialog_SendMessage0="%26Send this error via Internet"
|
||||||
|
Count mtDialog_ScreenshotMessage=1
|
||||||
|
mtDialog_ScreenshotMessage0="%26Attach a Screenshot image"
|
||||||
|
Count mtDialog_CopyMessage=1
|
||||||
|
mtDialog_CopyMessage0="%26Copy to Clipboard"
|
||||||
|
Count mtDialog_SupportMessage=1
|
||||||
|
mtDialog_SupportMessage0="Go to the Support Page"
|
||||||
|
Count mtMSDialog_ErrorMsgCaption=1
|
||||||
|
mtMSDialog_ErrorMsgCaption0="The application has encountered a problem. We are sorry for the inconvenience."
|
||||||
|
Count mtMSDialog_RestartCaption=1
|
||||||
|
mtMSDialog_RestartCaption0="Restart application."
|
||||||
|
Count mtMSDialog_TerminateCaption=1
|
||||||
|
mtMSDialog_TerminateCaption0="Terminate application."
|
||||||
|
Count mtMSDialog_PleaseCaption=1
|
||||||
|
mtMSDialog_PleaseCaption0="Please tell us about this problem."
|
||||||
|
Count mtMSDialog_DescriptionCaption=1
|
||||||
|
mtMSDialog_DescriptionCaption0="We have created an error report that you can send to us. We will treat this report as confidential and anonymous."
|
||||||
|
Count mtMSDialog_SeeDetailsCaption=1
|
||||||
|
mtMSDialog_SeeDetailsCaption0="To see what data the error report contains,"
|
||||||
|
Count mtMSDialog_SeeClickCaption=1
|
||||||
|
mtMSDialog_SeeClickCaption0="click here."
|
||||||
|
Count mtMSDialog_HowToReproduceCaption=1
|
||||||
|
mtMSDialog_HowToReproduceCaption0="What were you doing when the problem happended (optional)?"
|
||||||
|
Count mtMSDialog_EmailCaption=1
|
||||||
|
mtMSDialog_EmailCaption0="Email address (optional):"
|
||||||
|
Count mtMSDialog_SendButtonCaption=1
|
||||||
|
mtMSDialog_SendButtonCaption0="%26Send Error Report"
|
||||||
|
Count mtMSDialog_NoSendButtonCaption=1
|
||||||
|
mtMSDialog_NoSendButtonCaption0="%26Don't Send"
|
||||||
|
Count mtLog_AppHeader=1
|
||||||
|
mtLog_AppHeader0="Application"
|
||||||
|
Count mtLog_AppStartDate=1
|
||||||
|
mtLog_AppStartDate0="Start Date"
|
||||||
|
Count mtLog_AppName=1
|
||||||
|
mtLog_AppName0="Name/Description"
|
||||||
|
Count mtLog_AppVersionNumber=1
|
||||||
|
mtLog_AppVersionNumber0="Version Number"
|
||||||
|
Count mtLog_AppParameters=1
|
||||||
|
mtLog_AppParameters0="Parameters"
|
||||||
|
Count mtLog_AppCompilationDate=1
|
||||||
|
mtLog_AppCompilationDate0="Compilation Date"
|
||||||
|
Count mtLog_AppUpTime=1
|
||||||
|
mtLog_AppUpTime0="Up Time"
|
||||||
|
Count mtLog_ExcHeader=1
|
||||||
|
mtLog_ExcHeader0="Exception"
|
||||||
|
Count mtLog_ExcDate=1
|
||||||
|
mtLog_ExcDate0="Date"
|
||||||
|
Count mtLog_ExcAddress=1
|
||||||
|
mtLog_ExcAddress0="Address"
|
||||||
|
Count mtLog_ExcModuleName=1
|
||||||
|
mtLog_ExcModuleName0="Module Name"
|
||||||
|
Count mtLog_ExcModuleVersion=1
|
||||||
|
mtLog_ExcModuleVersion0="Module Version"
|
||||||
|
Count mtLog_ExcType=1
|
||||||
|
mtLog_ExcType0="Type"
|
||||||
|
Count mtLog_ExcMessage=1
|
||||||
|
mtLog_ExcMessage0="Message"
|
||||||
|
Count mtLog_ExcID=1
|
||||||
|
mtLog_ExcID0="ID"
|
||||||
|
Count mtLog_ExcCount=1
|
||||||
|
mtLog_ExcCount0="Count"
|
||||||
|
Count mtLog_ExcStatus=1
|
||||||
|
mtLog_ExcStatus0="Status"
|
||||||
|
Count mtLog_ExcNote=1
|
||||||
|
mtLog_ExcNote0="Note"
|
||||||
|
Count mtLog_UserHeader=1
|
||||||
|
mtLog_UserHeader0="User"
|
||||||
|
Count mtLog_UserID=1
|
||||||
|
mtLog_UserID0="ID"
|
||||||
|
Count mtLog_UserName=1
|
||||||
|
mtLog_UserName0="Name"
|
||||||
|
Count mtLog_UserEmail=1
|
||||||
|
mtLog_UserEmail0="Email"
|
||||||
|
Count mtLog_UserCompany=1
|
||||||
|
mtLog_UserCompany0="Company"
|
||||||
|
Count mtLog_UserPrivileges=1
|
||||||
|
mtLog_UserPrivileges0="Privileges"
|
||||||
|
Count mtLog_ActCtrlsHeader=1
|
||||||
|
mtLog_ActCtrlsHeader0="Active Controls"
|
||||||
|
Count mtLog_ActCtrlsFormClass=1
|
||||||
|
mtLog_ActCtrlsFormClass0="Form Class"
|
||||||
|
Count mtLog_ActCtrlsFormText=1
|
||||||
|
mtLog_ActCtrlsFormText0="Form Text"
|
||||||
|
Count mtLog_ActCtrlsControlClass=1
|
||||||
|
mtLog_ActCtrlsControlClass0="Control Class"
|
||||||
|
Count mtLog_ActCtrlsControlText=1
|
||||||
|
mtLog_ActCtrlsControlText0="Control Text"
|
||||||
|
Count mtLog_CmpHeader=1
|
||||||
|
mtLog_CmpHeader0="Computer"
|
||||||
|
Count mtLog_CmpName=1
|
||||||
|
mtLog_CmpName0="Name"
|
||||||
|
Count mtLog_CmpTotalMemory=1
|
||||||
|
mtLog_CmpTotalMemory0="Total Memory"
|
||||||
|
Count mtLog_CmpFreeMemory=1
|
||||||
|
mtLog_CmpFreeMemory0="Free Memory"
|
||||||
|
Count mtLog_CmpTotalDisk=1
|
||||||
|
mtLog_CmpTotalDisk0="Total Disk"
|
||||||
|
Count mtLog_CmpFreeDisk=1
|
||||||
|
mtLog_CmpFreeDisk0="Free Disk"
|
||||||
|
Count mtLog_CmpSystemUpTime=1
|
||||||
|
mtLog_CmpSystemUpTime0="System Up Time"
|
||||||
|
Count mtLog_CmpProcessor=1
|
||||||
|
mtLog_CmpProcessor0="Processor"
|
||||||
|
Count mtLog_CmpDisplayMode=1
|
||||||
|
mtLog_CmpDisplayMode0="Display Mode"
|
||||||
|
Count mtLog_CmpDisplayDPI=1
|
||||||
|
mtLog_CmpDisplayDPI0="Display DPI"
|
||||||
|
Count mtLog_CmpVideoCard=1
|
||||||
|
mtLog_CmpVideoCard0="Video Card"
|
||||||
|
Count mtLog_CmpPrinter=1
|
||||||
|
mtLog_CmpPrinter0="Printer"
|
||||||
|
Count mtLog_OSHeader=1
|
||||||
|
mtLog_OSHeader0="Operating System"
|
||||||
|
Count mtLog_OSType=1
|
||||||
|
mtLog_OSType0="Type"
|
||||||
|
Count mtLog_OSBuildN=1
|
||||||
|
mtLog_OSBuildN0="Build #"
|
||||||
|
Count mtLog_OSUpdate=1
|
||||||
|
mtLog_OSUpdate0="Update"
|
||||||
|
Count mtLog_OSLanguage=1
|
||||||
|
mtLog_OSLanguage0="Language"
|
||||||
|
Count mtLog_OSCharset=1
|
||||||
|
mtLog_OSCharset0="Charset"
|
||||||
|
Count mtLog_NetHeader=1
|
||||||
|
mtLog_NetHeader0="Network"
|
||||||
|
Count mtLog_NetIP=1
|
||||||
|
mtLog_NetIP0="IP Address"
|
||||||
|
Count mtLog_NetSubmask=1
|
||||||
|
mtLog_NetSubmask0="Submask"
|
||||||
|
Count mtLog_NetGateway=1
|
||||||
|
mtLog_NetGateway0="Gateway"
|
||||||
|
Count mtLog_NetDNS1=1
|
||||||
|
mtLog_NetDNS10="DNS 1"
|
||||||
|
Count mtLog_NetDNS2=1
|
||||||
|
mtLog_NetDNS20="DNS 2"
|
||||||
|
Count mtLog_NetDHCP=1
|
||||||
|
mtLog_NetDHCP0="DHCP"
|
||||||
|
Count mtLog_CustInfoHeader=1
|
||||||
|
mtLog_CustInfoHeader0="Custom Information"
|
||||||
|
Count mtCallStack_Address=1
|
||||||
|
mtCallStack_Address0="Address"
|
||||||
|
Count mtCallStack_Name=1
|
||||||
|
mtCallStack_Name0="Module"
|
||||||
|
Count mtCallStack_Unit=1
|
||||||
|
mtCallStack_Unit0="Unit"
|
||||||
|
Count mtCallStack_Class=1
|
||||||
|
mtCallStack_Class0="Class"
|
||||||
|
Count mtCallStack_Procedure=1
|
||||||
|
mtCallStack_Procedure0="Procedure/Method"
|
||||||
|
Count mtCallStack_Line=1
|
||||||
|
mtCallStack_Line0="Line"
|
||||||
|
Count mtCallStack_MainThread=1
|
||||||
|
mtCallStack_MainThread0="Main"
|
||||||
|
Count mtCallStack_ExceptionThread=1
|
||||||
|
mtCallStack_ExceptionThread0="Exception Thread"
|
||||||
|
Count mtCallStack_RunningThread=1
|
||||||
|
mtCallStack_RunningThread0="Running Thread"
|
||||||
|
Count mtCallStack_CallingThread=1
|
||||||
|
mtCallStack_CallingThread0="Calling Thread"
|
||||||
|
Count mtCallStack_ThreadID=1
|
||||||
|
mtCallStack_ThreadID0="ID"
|
||||||
|
Count mtCallStack_ThreadPriority=1
|
||||||
|
mtCallStack_ThreadPriority0="Priority"
|
||||||
|
Count mtCallStack_ThreadClass=1
|
||||||
|
mtCallStack_ThreadClass0="Class"
|
||||||
|
Count mtCallStack_LeakCaption=1
|
||||||
|
mtCallStack_LeakCaption0="Memory Leak"
|
||||||
|
Count mtCallStack_LeakData=1
|
||||||
|
mtCallStack_LeakData0="Data"
|
||||||
|
Count mtCallStack_LeakType=1
|
||||||
|
mtCallStack_LeakType0="Type"
|
||||||
|
Count mtCallStack_LeakSize=1
|
||||||
|
mtCallStack_LeakSize0="Total size"
|
||||||
|
Count mtCallStack_LeakCount=1
|
||||||
|
mtCallStack_LeakCount0="Count"
|
||||||
|
Count mtSendDialog_Caption=1
|
||||||
|
mtSendDialog_Caption0="Send."
|
||||||
|
Count mtSendDialog_Message=1
|
||||||
|
mtSendDialog_Message0="Message"
|
||||||
|
Count mtSendDialog_Resolving=1
|
||||||
|
mtSendDialog_Resolving0="Resolving DNS..."
|
||||||
|
Count mtSendDialog_Login=1
|
||||||
|
mtSendDialog_Login0="Login..."
|
||||||
|
Count mtSendDialog_Connecting=1
|
||||||
|
mtSendDialog_Connecting0="Connecting with server..."
|
||||||
|
Count mtSendDialog_Connected=1
|
||||||
|
mtSendDialog_Connected0="Connected with server."
|
||||||
|
Count mtSendDialog_Sending=1
|
||||||
|
mtSendDialog_Sending0="Sending message..."
|
||||||
|
Count mtSendDialog_Sent=1
|
||||||
|
mtSendDialog_Sent0="Message sent."
|
||||||
|
Count mtSendDialog_SelectProject=1
|
||||||
|
mtSendDialog_SelectProject0="Select project..."
|
||||||
|
Count mtSendDialog_Searching=1
|
||||||
|
mtSendDialog_Searching0="Searching..."
|
||||||
|
Count mtSendDialog_Modifying=1
|
||||||
|
mtSendDialog_Modifying0="Modifying..."
|
||||||
|
Count mtSendDialog_Disconnecting=1
|
||||||
|
mtSendDialog_Disconnecting0="Disconnecting..."
|
||||||
|
Count mtSendDialog_Disconnected=1
|
||||||
|
mtSendDialog_Disconnected0="Disconnected."
|
||||||
|
Count mtReproduceDialog_Caption=1
|
||||||
|
mtReproduceDialog_Caption0="Request"
|
||||||
|
Count mtReproduceDialog_Request=1
|
||||||
|
mtReproduceDialog_Request0="Please describe the steps to reproduce the error:"
|
||||||
|
Count mtReproduceDialog_OKButtonCaption=1
|
||||||
|
mtReproduceDialog_OKButtonCaption0="%26OK"
|
||||||
|
Count mtModules_Handle=1
|
||||||
|
mtModules_Handle0="Handle"
|
||||||
|
Count mtModules_Name=1
|
||||||
|
mtModules_Name0="Name"
|
||||||
|
Count mtModules_Description=1
|
||||||
|
mtModules_Description0="Description"
|
||||||
|
Count mtModules_Version=1
|
||||||
|
mtModules_Version0="Version"
|
||||||
|
Count mtModules_Size=1
|
||||||
|
mtModules_Size0="Size"
|
||||||
|
Count mtModules_LastModified=1
|
||||||
|
mtModules_LastModified0="Modified"
|
||||||
|
Count mtModules_Path=1
|
||||||
|
mtModules_Path0="Path"
|
||||||
|
Count mtProcesses_ID=1
|
||||||
|
mtProcesses_ID0="ID"
|
||||||
|
Count mtProcesses_Name=1
|
||||||
|
mtProcesses_Name0="Name"
|
||||||
|
Count mtProcesses_Description=1
|
||||||
|
mtProcesses_Description0="Description"
|
||||||
|
Count mtProcesses_Version=1
|
||||||
|
mtProcesses_Version0="Version"
|
||||||
|
Count mtProcesses_Memory=1
|
||||||
|
mtProcesses_Memory0="Memory"
|
||||||
|
Count mtProcesses_Priority=1
|
||||||
|
mtProcesses_Priority0="Priority"
|
||||||
|
Count mtProcesses_Threads=1
|
||||||
|
mtProcesses_Threads0="Threads"
|
||||||
|
Count mtProcesses_Path=1
|
||||||
|
mtProcesses_Path0="Path"
|
||||||
|
Count mtCPU_Registers=1
|
||||||
|
mtCPU_Registers0="Registers"
|
||||||
|
Count mtCPU_Stack=1
|
||||||
|
mtCPU_Stack0="Stack"
|
||||||
|
Count mtCPU_MemoryDump=1
|
||||||
|
mtCPU_MemoryDump0="Memory Dump"
|
||||||
|
Count mtSend_SuccessMsg=1
|
||||||
|
mtSend_SuccessMsg0="The message was sent successfully."
|
||||||
|
Count mtSend_FailureMsg=1
|
||||||
|
mtSend_FailureMsg0="Sorry, sending the message didn't work."
|
||||||
|
Count mtSend_BugClosedMsg=2
|
||||||
|
mtSend_BugClosedMsg0="These BUG is just closed."
|
||||||
|
mtSend_BugClosedMsg1="Contact the program support to obtain an update."
|
||||||
|
Count mtSend_UnknownErrorMsg=1
|
||||||
|
mtSend_UnknownErrorMsg0="Unknown error."
|
||||||
|
Count mtSend_InvalidLoginMsg=1
|
||||||
|
mtSend_InvalidLoginMsg0="Invalid login request."
|
||||||
|
Count mtSend_InvalidSearchMsg=1
|
||||||
|
mtSend_InvalidSearchMsg0="Invalid search request."
|
||||||
|
Count mtSend_InvalidSelectionMsg=1
|
||||||
|
mtSend_InvalidSelectionMsg0="Invalid selection request."
|
||||||
|
Count mtSend_InvalidInsertMsg=1
|
||||||
|
mtSend_InvalidInsertMsg0="Invalid insert request."
|
||||||
|
Count mtSend_InvalidModifyMsg=1
|
||||||
|
mtSend_InvalidModifyMsg0="Invalid modify request."
|
||||||
|
Count mtFileCrackedMsg=2
|
||||||
|
mtFileCrackedMsg0="This file is cracked."
|
||||||
|
mtFileCrackedMsg1="The application will be closed."
|
||||||
|
Count mtException_LeakMultiFree=1
|
||||||
|
mtException_LeakMultiFree0="Multi Free memory leak."
|
||||||
|
Count mtException_LeakMemoryOverrun=1
|
||||||
|
mtException_LeakMemoryOverrun0="Memory Overrun leak."
|
||||||
|
Count mtException_AntiFreeze=1
|
||||||
|
mtException_AntiFreeze0="The application seems to be frozen."
|
||||||
|
Count mtInvalidEmailMsg=1
|
||||||
|
mtInvalidEmailMsg0="Invalid email."
|
||||||
|
TextsCollection=English
|
||||||
|
EurekaLog Last Line -->
|
||||||
38
Source/GUIBase/GUIBase.drc
Normal file
38
Source/GUIBase/GUIBase.drc
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
/* VER185
|
||||||
|
Generated by the CodeGear Delphi Pascal Compiler
|
||||||
|
because -GD or --drc was supplied to the compiler.
|
||||||
|
|
||||||
|
This file contains compiler-generated resources that
|
||||||
|
were bound to the executable.
|
||||||
|
If this file is empty, then no compiler-generated
|
||||||
|
resources were bound to the produced executable.
|
||||||
|
*/
|
||||||
|
|
||||||
|
STRINGTABLE
|
||||||
|
BEGIN
|
||||||
|
END
|
||||||
|
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewBase.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uEditorBase.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewFiltroBase.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewGridBase.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uEditorItem.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uEditorDBBase.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uEditorGridBase.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewPreview.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uEditorPreview.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uEditorDBItem.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewBarraSeleccion.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewFormaPago.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewObservaciones.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewTotales.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewDetallesBase.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewIncidencias.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewDetallesDTO.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewDetallesGenerico.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewGrid2Niveles.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uEditorBasico.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uDialogBase.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\uViewGrid.dfm */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\GUIBase.res */
|
||||||
|
/* C:\Codigo Tecsitel\Source\GUIBase\GUIBase.drf */
|
||||||
22
Source/GUIBase/GUIBase.rc
Normal file
22
Source/GUIBase/GUIBase.rc
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
1 VERSIONINFO
|
||||||
|
FILEVERSION 1,0,0,0
|
||||||
|
PRODUCTVERSION 1,0,0,0
|
||||||
|
FILEFLAGSMASK 0x3FL
|
||||||
|
FILEFLAGS 0x00L
|
||||||
|
FILEOS 0x40004L
|
||||||
|
FILETYPE 0x1L
|
||||||
|
FILESUBTYPE 0x0L
|
||||||
|
BEGIN
|
||||||
|
BLOCK "StringFileInfo"
|
||||||
|
BEGIN
|
||||||
|
BLOCK "0C0A04E4"
|
||||||
|
BEGIN
|
||||||
|
VALUE "FileVersion", "1.0.0.0\0"
|
||||||
|
VALUE "ProductVersion", "1.0.0.0\0"
|
||||||
|
END
|
||||||
|
END
|
||||||
|
BLOCK "VarFileInfo"
|
||||||
|
BEGIN
|
||||||
|
VALUE "Translation", 0x0C0A, 1252
|
||||||
|
END
|
||||||
|
END
|
||||||
BIN
Source/GUIBase/GUIBase.res
Normal file
BIN
Source/GUIBase/GUIBase.res
Normal file
Binary file not shown.
106
Source/GUIBase/uDialogBase.dfm
Normal file
106
Source/GUIBase/uDialogBase.dfm
Normal file
@ -0,0 +1,106 @@
|
|||||||
|
object fDialogBase: TfDialogBase
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
BorderStyle = bsDialog
|
||||||
|
Caption = 'fDialogBase'
|
||||||
|
ClientHeight = 430
|
||||||
|
ClientWidth = 623
|
||||||
|
Color = clWindow
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = []
|
||||||
|
OldCreateOrder = False
|
||||||
|
Position = poMainFormCenter
|
||||||
|
OnShow = FormShow
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
object pnlBotones: TFlowPanel
|
||||||
|
Left = 0
|
||||||
|
Top = 374
|
||||||
|
Width = 623
|
||||||
|
Height = 56
|
||||||
|
Align = alBottom
|
||||||
|
FlowStyle = fsBottomTopRightLeft
|
||||||
|
Padding.Left = 20
|
||||||
|
Padding.Top = 20
|
||||||
|
Padding.Right = 20
|
||||||
|
Padding.Bottom = 15
|
||||||
|
ParentBackground = False
|
||||||
|
TabOrder = 0
|
||||||
|
VerticalAlignment = taAlignTop
|
||||||
|
object Button1: TButton
|
||||||
|
Left = 527
|
||||||
|
Top = 15
|
||||||
|
Width = 75
|
||||||
|
Height = 25
|
||||||
|
Action = actCancelar
|
||||||
|
TabOrder = 0
|
||||||
|
end
|
||||||
|
object Button2: TButton
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 437
|
||||||
|
Top = 15
|
||||||
|
Width = 75
|
||||||
|
Height = 25
|
||||||
|
Margins.Left = 0
|
||||||
|
Margins.Top = 0
|
||||||
|
Margins.Right = 15
|
||||||
|
Margins.Bottom = 0
|
||||||
|
Action = actAceptar
|
||||||
|
TabOrder = 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object FlowPanel1: TFlowPanel
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 623
|
||||||
|
Height = 374
|
||||||
|
Align = alClient
|
||||||
|
Padding.Left = 30
|
||||||
|
Padding.Top = 30
|
||||||
|
Padding.Right = 30
|
||||||
|
Padding.Bottom = 30
|
||||||
|
ParentColor = True
|
||||||
|
TabOrder = 1
|
||||||
|
object lblInstruccion: TLabel
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 31
|
||||||
|
Top = 31
|
||||||
|
Width = 78
|
||||||
|
Height = 19
|
||||||
|
Margins.Left = 0
|
||||||
|
Margins.Top = 0
|
||||||
|
Margins.Right = 0
|
||||||
|
Margins.Bottom = 20
|
||||||
|
Align = alTop
|
||||||
|
Caption = 'Instrucci'#243'n'
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = []
|
||||||
|
ParentFont = False
|
||||||
|
end
|
||||||
|
object Label2: TLabel
|
||||||
|
Left = 31
|
||||||
|
Top = 70
|
||||||
|
Width = 571
|
||||||
|
Height = 81
|
||||||
|
Align = alTop
|
||||||
|
AutoSize = False
|
||||||
|
Caption = 'Comentarios'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object ActionList1: TActionList
|
||||||
|
Left = 16
|
||||||
|
Top = 384
|
||||||
|
object actAceptar: TAction
|
||||||
|
Caption = '&Aceptar'
|
||||||
|
end
|
||||||
|
object actCancelar: TAction
|
||||||
|
Caption = '&Cancelar'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
39
Source/GUIBase/uDialogBase.pas
Normal file
39
Source/GUIBase/uDialogBase.pas
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
unit uDialogBase;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, StdCtrls, ExtCtrls, ActnList;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfDialogBase = class(TForm)
|
||||||
|
pnlBotones: TFlowPanel;
|
||||||
|
Button1: TButton;
|
||||||
|
Button2: TButton;
|
||||||
|
ActionList1: TActionList;
|
||||||
|
actAceptar: TAction;
|
||||||
|
actCancelar: TAction;
|
||||||
|
FlowPanel1: TFlowPanel;
|
||||||
|
lblInstruccion: TLabel;
|
||||||
|
Label2: TLabel;
|
||||||
|
procedure FormShow(Sender: TObject);
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
uses
|
||||||
|
uDataModuleBase, JvNavigationPane;
|
||||||
|
|
||||||
|
procedure TfDialogBase.FormShow(Sender: TObject);
|
||||||
|
begin
|
||||||
|
lblInstruccion.Font.Color := dmBase.StyleManager.Colors.HeaderColorTo;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
1705
Source/GUIBase/uEditorBase.dfm
Normal file
1705
Source/GUIBase/uEditorBase.dfm
Normal file
File diff suppressed because it is too large
Load Diff
460
Source/GUIBase/uEditorBase.pas
Normal file
460
Source/GUIBase/uEditorBase.pas
Normal file
@ -0,0 +1,460 @@
|
|||||||
|
unit uEditorBase;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
uGUIBase, uCustomEditor, ToolWin, ComCtrls, JvExControls,
|
||||||
|
JvComponent, JvNavigationPane, ActnList, TBX, TB2Item, ImgList,
|
||||||
|
PngImageList, StdActns, JvFormAutoSize, AppEvnts, uCustomView, uViewBase,
|
||||||
|
JvAppStorage, JvAppRegistryStorage, JvFormPlacement, pngimage, ExtCtrls,
|
||||||
|
JvComponentBase, TB2Dock, TB2Toolbar, dxLayoutLookAndFeels, TBXStatusBars,
|
||||||
|
JvExComCtrls, JvStatusBar;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorBase = interface(ICustomEditor)
|
||||||
|
['{CB8CDE00-B225-4A1D-9A5C-EC6FBE2C854B}']
|
||||||
|
function ShowModal : Integer;
|
||||||
|
procedure Show;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfEditorBase = class(TCustomEditor, IEditorBase)
|
||||||
|
actAcercaDe: TAction;
|
||||||
|
actAnterior: TAction;
|
||||||
|
actBuscar: TAction;
|
||||||
|
actCancelarCambios: TAction;
|
||||||
|
actCerrar: TAction;
|
||||||
|
actConfPagina: TAction;
|
||||||
|
actCopiar: TEditCopy;
|
||||||
|
actCortar: TEditCut;
|
||||||
|
actDeshacer: TEditUndo;
|
||||||
|
actEliminar: TAction;
|
||||||
|
actGuardar: TAction;
|
||||||
|
actGuardarCerrar: TAction;
|
||||||
|
actImprimir: TAction;
|
||||||
|
actLimpiar: TEditDelete;
|
||||||
|
actModificar: TAction;
|
||||||
|
actNuevo: TAction;
|
||||||
|
actPegar: TEditPaste;
|
||||||
|
actPrevisualizar: TAction;
|
||||||
|
actRefrescar: TAction;
|
||||||
|
actSeleccionarTodo: TEditSelectAll;
|
||||||
|
actSiguiente: TAction;
|
||||||
|
EditorActionList: TActionList;
|
||||||
|
JvNavPanelHeader: TJvNavPanelHeader;
|
||||||
|
LargeImages: TPngImageList;
|
||||||
|
SmallImages: TPngImageList;
|
||||||
|
TBXDock: TTBXDock;
|
||||||
|
TBXItem1: TTBXItem;
|
||||||
|
TBXItem10: TTBXItem;
|
||||||
|
TBXItem11: TTBXItem;
|
||||||
|
TBXItem12: TTBXItem;
|
||||||
|
TBXItem13: TTBXItem;
|
||||||
|
TBXItem14: TTBXItem;
|
||||||
|
TBXItem15: TTBXItem;
|
||||||
|
TBXItem16: TTBXItem;
|
||||||
|
TBXItem17: TTBXItem;
|
||||||
|
TBXItem18: TTBXItem;
|
||||||
|
TBXItem19: TTBXItem;
|
||||||
|
TBXItem2: TTBXItem;
|
||||||
|
TBXItem20: TTBXItem;
|
||||||
|
TBXItem21: TTBXItem;
|
||||||
|
TBXItem22: TTBXItem;
|
||||||
|
TBXItem23: TTBXItem;
|
||||||
|
TBXItem24: TTBXItem;
|
||||||
|
TBXItem25: TTBXItem;
|
||||||
|
TBXItem26: TTBXItem;
|
||||||
|
TBXItem27: TTBXItem;
|
||||||
|
TBXItem28: TTBXItem;
|
||||||
|
TBXItem29: TTBXItem;
|
||||||
|
TBXItem3: TTBXItem;
|
||||||
|
TBXItem30: TTBXItem;
|
||||||
|
TBXItem31: TTBXItem;
|
||||||
|
TBXItem32: TTBXItem;
|
||||||
|
TBXItem4: TTBXItem;
|
||||||
|
TBXItem5: TTBXItem;
|
||||||
|
TBXItem6: TTBXItem;
|
||||||
|
TBXItem8: TTBXItem;
|
||||||
|
TBXItem9: TTBXItem;
|
||||||
|
tbxMain: TTBXToolbar;
|
||||||
|
tbxMenu: TTBXToolbar;
|
||||||
|
TBXSeparatorItem1: TTBXSeparatorItem;
|
||||||
|
TBXSeparatorItem10: TTBXSeparatorItem;
|
||||||
|
TBXSeparatorItem11: TTBXSeparatorItem;
|
||||||
|
TBXSeparatorItem12: TTBXSeparatorItem;
|
||||||
|
TBXSeparatorItem13: TTBXSeparatorItem;
|
||||||
|
TBXSeparatorItem2: TTBXSeparatorItem;
|
||||||
|
TBXSeparatorItem3: TTBXSeparatorItem;
|
||||||
|
TBXSeparatorItem4: TTBXSeparatorItem;
|
||||||
|
TBXSeparatorItem5: TTBXSeparatorItem;
|
||||||
|
TBXSeparatorItem7: TTBXSeparatorItem;
|
||||||
|
TBXSeparatorItem8: TTBXSeparatorItem;
|
||||||
|
TBXSeparatorItem9: TTBXSeparatorItem;
|
||||||
|
TBXSubmenuItem1: TTBXSubmenuItem;
|
||||||
|
TBXSubmenuItem4: TTBXSubmenuItem;
|
||||||
|
TBXSubmenuItem5: TTBXSubmenuItem;
|
||||||
|
TBXSubmenuItem6: TTBXSubmenuItem;
|
||||||
|
TBXSubmenuItem7: TTBXSubmenuItem;
|
||||||
|
JvFormStorage: TJvFormStorage;
|
||||||
|
JvAppRegistryStorage: TJvAppRegistryStorage;
|
||||||
|
Image1: TImage;
|
||||||
|
TBXSeparatorItem15: TTBXSeparatorItem;
|
||||||
|
StatusBarImages: TPngImageList;
|
||||||
|
StatusBar: TJvStatusBar;
|
||||||
|
procedure actCerrarExecute(Sender: TObject);
|
||||||
|
procedure actGuardarCerrarExecute(Sender: TObject);
|
||||||
|
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
||||||
|
procedure CustomEditorActivate(Sender: TObject);
|
||||||
|
procedure actModificarExecute(Sender: TObject);
|
||||||
|
procedure actGuardarExecute(Sender: TObject);
|
||||||
|
procedure actPrevisualizarExecute(Sender: TObject);
|
||||||
|
procedure actImprimirExecute(Sender: TObject);
|
||||||
|
procedure actNuevoExecute(Sender: TObject);
|
||||||
|
procedure actEliminarExecute(Sender: TObject);
|
||||||
|
procedure actConfPaginaExecute(Sender: TObject);
|
||||||
|
procedure actCancelarCambiosExecute(Sender: TObject);
|
||||||
|
procedure actDuplicarExecute(Sender: TObject);
|
||||||
|
procedure actRefrescarExecute(Sender: TObject);
|
||||||
|
procedure actModificarUpdate(Sender: TObject);
|
||||||
|
procedure actEliminarUpdate(Sender: TObject);
|
||||||
|
procedure actGuardarCerrarUpdate(Sender: TObject);
|
||||||
|
procedure actGuardarUpdate(Sender: TObject);
|
||||||
|
protected
|
||||||
|
procedure CreateParams(Var params: TCreateParams); override;
|
||||||
|
procedure ActualizarEstadoEditor; virtual;
|
||||||
|
function ModifiedQuery : Boolean;
|
||||||
|
procedure ModificarInterno; virtual;
|
||||||
|
procedure EliminarInterno; virtual;
|
||||||
|
procedure GuardarInterno; virtual;
|
||||||
|
procedure NuevoInterno; virtual;
|
||||||
|
procedure ImprimirInterno; virtual;
|
||||||
|
procedure PrevisualizarInterno; virtual;
|
||||||
|
procedure ConfPaginaInterno; virtual;
|
||||||
|
procedure RefrescarInterno; virtual;
|
||||||
|
procedure CancelarCambiosInterno; virtual;
|
||||||
|
procedure CerrarInterno; virtual;
|
||||||
|
procedure DuplicarInterno; virtual;
|
||||||
|
procedure PonerTitulos(const ATitulo: String = ''); virtual;
|
||||||
|
procedure SetReadOnly(Value: Boolean); override;
|
||||||
|
public
|
||||||
|
constructor Create(AOwner: TComponent); override;
|
||||||
|
function ShowModal : Integer;
|
||||||
|
procedure Show;
|
||||||
|
published
|
||||||
|
procedure FormShow(Sender: TObject); virtual;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfEditorBaseClass = class of TfEditorBase;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
uses
|
||||||
|
Menus, uDataModuleBase, cxControls, uDialogUtils;
|
||||||
|
|
||||||
|
{
|
||||||
|
********************************* TfEditorBase *********************************
|
||||||
|
}
|
||||||
|
procedure TfEditorBase.actCancelarCambiosExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
CancelarCambiosInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actCerrarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
CerrarInterno;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actConfPaginaExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
ConfPaginaInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actDuplicarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
DuplicarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actEliminarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actEliminar.Enabled then
|
||||||
|
begin
|
||||||
|
EliminarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actEliminarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
(Sender as TAction).Enabled := not ReadOnly;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actGuardarCerrarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
if actGuardar.Execute then
|
||||||
|
actCerrar.Execute;
|
||||||
|
finally
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actGuardarCerrarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
(Sender as TAction).Enabled := not ReadOnly;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actGuardarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
GuardarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actGuardarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
(Sender as TAction).Enabled := not ReadOnly;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actImprimirExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actImprimir.Enabled then
|
||||||
|
begin
|
||||||
|
ImprimirInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actModificarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actModificar.Enabled then
|
||||||
|
begin
|
||||||
|
ModificarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actModificarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
(Sender as TAction).Enabled := not ReadOnly;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actNuevoExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actNuevo.Enabled then
|
||||||
|
begin
|
||||||
|
NuevoInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actPrevisualizarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actPrevisualizar.Enabled then
|
||||||
|
begin
|
||||||
|
PrevisualizarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.actRefrescarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if actRefrescar.Enabled then
|
||||||
|
begin
|
||||||
|
RefrescarInterno;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.ActualizarEstadoEditor;
|
||||||
|
begin
|
||||||
|
PonerTitulos;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.CancelarCambiosInterno;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.CerrarInterno;
|
||||||
|
begin
|
||||||
|
Close;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.ConfPaginaInterno;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TfEditorBase.Create(AOwner: TComponent);
|
||||||
|
var
|
||||||
|
APath : String;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
with JvFormStorage do
|
||||||
|
begin
|
||||||
|
if Pos('_', Self.Name) = 0 then
|
||||||
|
APath := Self.Name
|
||||||
|
else
|
||||||
|
APath := Copy(Self.Name, 0, (Pos('_', Self.Name)-1));
|
||||||
|
AppStoragePath := APath;
|
||||||
|
end;
|
||||||
|
JvNavPanelHeader.StyleManager := dmBase.StyleManager;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.CustomEditorActivate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
PonerTitulos;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.DuplicarInterno;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.EliminarInterno;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
||||||
|
begin
|
||||||
|
if Valid then
|
||||||
|
CanClose := ModifiedQuery
|
||||||
|
else
|
||||||
|
CanClose := False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.FormShow(Sender: TObject);
|
||||||
|
begin
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
if Assigned(Parent) then
|
||||||
|
begin
|
||||||
|
StatusBar.Visible := False;
|
||||||
|
actCerrar.ShortCut := 0
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
StatusBar.Visible := True;
|
||||||
|
actCerrar.ShortCut := ShortCut(VK_ESCAPE, []);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.GuardarInterno;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.ImprimirInterno;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.ModificarInterno;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorBase.ModifiedQuery: Boolean;
|
||||||
|
var
|
||||||
|
Respuesta: Integer;
|
||||||
|
begin
|
||||||
|
Result := True;
|
||||||
|
if Modified then
|
||||||
|
begin
|
||||||
|
|
||||||
|
Respuesta := ShowConfirmMessage('Atención',
|
||||||
|
'Se han producido cambios',
|
||||||
|
'¿Desea guardar los cambios que se han producido antes de cerrar?',
|
||||||
|
[TDlgButton_SI, TDlgButton_NO, TDlgButton_CANCELAR]);
|
||||||
|
|
||||||
|
case Respuesta of
|
||||||
|
IDYES : actGuardar.Execute;
|
||||||
|
IDNO : actCancelarCambios.Execute;
|
||||||
|
else
|
||||||
|
Result := False;
|
||||||
|
end;
|
||||||
|
end
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.NuevoInterno;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.PonerTitulos(const ATitulo: String);
|
||||||
|
begin
|
||||||
|
if ReadOnly then
|
||||||
|
begin
|
||||||
|
JvNavPanelHeader.Caption := ATitulo + ' (NO MODIFICABLE)';
|
||||||
|
Caption := ATitulo + ' (NO MODIFICABLE)';
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
JvNavPanelHeader.Caption := ATitulo;
|
||||||
|
Caption := ATitulo;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.PrevisualizarInterno;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.RefrescarInterno;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.SetReadOnly(Value: Boolean);
|
||||||
|
var
|
||||||
|
i: integer;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
|
||||||
|
if ReadOnly then
|
||||||
|
for i:=0 to Self.ComponentCount-1 do
|
||||||
|
begin
|
||||||
|
If Self.Components[i] Is TfrViewBase then
|
||||||
|
(Self.Components[i] as TfrViewBase).ReadOnly := ReadOnly
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.Show;
|
||||||
|
begin
|
||||||
|
inherited Show;
|
||||||
|
// Self.WindowState := wsNormal;
|
||||||
|
// self.FormStyle := fsNormal;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorBase.CreateParams(var params: TCreateParams);
|
||||||
|
begin
|
||||||
|
//No tocar, sirve para crear varios formularios hijos abiertos a la vez fuera de la aplicación principal
|
||||||
|
inherited CreateParams( params );
|
||||||
|
params.Style := params.Style and not WS_POPUP;
|
||||||
|
params.ExStyle := params.ExStyle and not WS_EX_TOOLWINDOW or WS_EX_APPWINDOW;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorBase.ShowModal: Integer;
|
||||||
|
var
|
||||||
|
ABorderIcons : TBorderIcons;
|
||||||
|
begin
|
||||||
|
ABorderIcons := Self.BorderIcons;
|
||||||
|
Self.BorderIcons := Self.BorderIcons - [biMinimize];
|
||||||
|
try
|
||||||
|
Result := inherited ShowModal;
|
||||||
|
finally
|
||||||
|
Self.BorderIcons := ABorderIcons;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
RegisterClass(TfEditorBase);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
UnRegisterClass(TfEditorBase);
|
||||||
|
|
||||||
|
end.
|
||||||
18
Source/GUIBase/uEditorBasico.dfm
Normal file
18
Source/GUIBase/uEditorBasico.dfm
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
object fEditorBasico: TfEditorBasico
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Caption = 'fEditorBasico'
|
||||||
|
ClientHeight = 236
|
||||||
|
ClientWidth = 383
|
||||||
|
Color = clBtnFace
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = []
|
||||||
|
OldCreateOrder = False
|
||||||
|
InstanceID = 0
|
||||||
|
ReadOnly = False
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
end
|
||||||
26
Source/GUIBase/uEditorBasico.pas
Normal file
26
Source/GUIBase/uEditorBasico.pas
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
unit uEditorBasico;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uGUIBase, uCustomEditor;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorBasico = interface(ICustomEditor)
|
||||||
|
['{CE4B2B04-F8DA-4C96-B071-CC5792C14D51}']
|
||||||
|
function ShowModal : Integer;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfEditorBasico = class(TCustomEditor, IEditorBasico)
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
initialization
|
||||||
|
RegisterClass(TfEditorBasico);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
UnRegisterClass(TfEditorBasico);
|
||||||
|
end.
|
||||||
59
Source/GUIBase/uEditorDBBase.dfm
Normal file
59
Source/GUIBase/uEditorDBBase.dfm
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
inherited fEditorDBBase: TfEditorDBBase
|
||||||
|
Left = 295
|
||||||
|
Top = 247
|
||||||
|
Caption = 'fEditorDBBase'
|
||||||
|
ClientHeight = 456
|
||||||
|
ClientWidth = 648
|
||||||
|
ExplicitWidth = 656
|
||||||
|
ExplicitHeight = 490
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
inherited JvNavPanelHeader: TJvNavPanelHeader
|
||||||
|
Width = 648
|
||||||
|
ExplicitWidth = 648
|
||||||
|
inherited Image1: TImage
|
||||||
|
Left = 621
|
||||||
|
ExplicitLeft = 625
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited TBXDock: TTBXDock
|
||||||
|
Width = 648
|
||||||
|
ExplicitWidth = 648
|
||||||
|
inherited tbxMain: TTBXToolbar
|
||||||
|
ExplicitWidth = 648
|
||||||
|
end
|
||||||
|
inherited tbxMenu: TTBXToolbar
|
||||||
|
ExplicitWidth = 648
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited StatusBar: TJvStatusBar
|
||||||
|
Top = 437
|
||||||
|
Width = 648
|
||||||
|
ExplicitTop = 437
|
||||||
|
ExplicitWidth = 648
|
||||||
|
end
|
||||||
|
inherited EditorActionList: TActionList
|
||||||
|
inherited actPrevisualizar: TAction
|
||||||
|
OnUpdate = actPrevisualizarUpdate
|
||||||
|
end
|
||||||
|
inherited actImprimir: TAction
|
||||||
|
OnUpdate = actImprimirUpdate
|
||||||
|
end
|
||||||
|
inherited actRefrescar: TAction
|
||||||
|
OnUpdate = actRefrescarUpdate
|
||||||
|
end
|
||||||
|
inherited actAnterior: TAction
|
||||||
|
OnExecute = actAnteriorExecute
|
||||||
|
OnUpdate = actAnteriorUpdate
|
||||||
|
end
|
||||||
|
inherited actSiguiente: TAction
|
||||||
|
OnExecute = actSiguienteExecute
|
||||||
|
OnUpdate = actSiguienteUpdate
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dsDataTable: TDADataSource [7]
|
||||||
|
OnDataChange = dsDataTableDataChange
|
||||||
|
Left = 40
|
||||||
|
Top = 88
|
||||||
|
end
|
||||||
|
end
|
||||||
256
Source/GUIBase/uEditorDBBase.pas
Normal file
256
Source/GUIBase/uEditorDBBase.pas
Normal file
@ -0,0 +1,256 @@
|
|||||||
|
unit uEditorDBBase;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
uEditorItem, ImgList, PngImageList, StdActns, ActnList, TBX,
|
||||||
|
TB2Item, TB2Dock, TB2Toolbar, ComCtrls, JvExControls, JvComponent,
|
||||||
|
JvNavigationPane, DB, uDADataTable, uEditorBase, JvFormAutoSize,
|
||||||
|
uDAScriptingProvider, uDACDSDataTable, AppEvnts, uCustomView, uViewBase,
|
||||||
|
JvAppStorage, JvAppRegistryStorage, JvFormPlacement,
|
||||||
|
pngimage, ExtCtrls, dxLayoutLookAndFeels, JvComponentBase, TBXStatusBars,
|
||||||
|
JvExComCtrls, JvStatusBar, uDAInterfaces;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorDBBase = interface(IEditorBase)
|
||||||
|
['{1F5B318F-F700-4C78-ABCE-E2329AD876B8}']
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfEditorDBBase = class(TfEditorBase, IEditorDBBase)
|
||||||
|
dsDataTable: TDADataSource;
|
||||||
|
procedure actAnteriorExecute(Sender: TObject);
|
||||||
|
procedure actSiguienteExecute(Sender: TObject);
|
||||||
|
procedure actAnteriorUpdate(Sender: TObject);
|
||||||
|
procedure actSiguienteUpdate(Sender: TObject);
|
||||||
|
procedure actRefrescarUpdate(Sender: TObject);
|
||||||
|
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); virtual;
|
||||||
|
procedure actEliminarUpdate(Sender: TObject);
|
||||||
|
procedure actModificarUpdate(Sender: TObject);
|
||||||
|
procedure actPrevisualizarUpdate(Sender: TObject);
|
||||||
|
procedure actImprimirUpdate(Sender: TObject);
|
||||||
|
procedure actGuardarUpdate(Sender: TObject);
|
||||||
|
procedure actGuardarCerrarUpdate(Sender: TObject);
|
||||||
|
procedure dsDataTableDataChange(Sender: TObject; Field: TField);
|
||||||
|
protected
|
||||||
|
function HayDatos: Boolean;
|
||||||
|
function GetModified: Boolean; override;
|
||||||
|
procedure RefrescarInterno; override;
|
||||||
|
procedure CancelarCambiosInterno; override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
uDataTableUtils, cxControls, uCustomEditor;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.actAnteriorExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(dsDataTable.DataTable) then
|
||||||
|
begin
|
||||||
|
if (not ModifiedQuery) then
|
||||||
|
Exit;
|
||||||
|
|
||||||
|
dsDataTable.DataTable.Prior;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.actSiguienteExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(dsDataTable.DataTable) then
|
||||||
|
begin
|
||||||
|
if (not ModifiedQuery) then
|
||||||
|
Exit;
|
||||||
|
|
||||||
|
dsDataTable.DataTable.Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.actAnteriorUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if HayDatos then
|
||||||
|
(Sender as TAction).Enabled := not dsDataTable.DataTable.BOF
|
||||||
|
else
|
||||||
|
(Sender as TAction).Enabled := False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.actSiguienteUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if HayDatos then
|
||||||
|
(Sender as TAction).Enabled := not dsDataTable.DataTable.EOF
|
||||||
|
else
|
||||||
|
(Sender as TAction).Enabled := False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.CancelarCambiosInterno;
|
||||||
|
var
|
||||||
|
dtDetails : TList;
|
||||||
|
i : integer;
|
||||||
|
ABookmark : TBookmark;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
|
||||||
|
if Assigned(dsDataTable.DataTable) then
|
||||||
|
begin
|
||||||
|
ABookmark := dsDataTable.DataTable.GetBookMark;
|
||||||
|
dsDataTable.DataTable.DisableControls;
|
||||||
|
// dsDataTable.DataTable.DisableEventHandlers; <- No descomentar
|
||||||
|
|
||||||
|
ShowHourglassCursor;
|
||||||
|
{ No lo pongo en try..finally para ver posibles errores }
|
||||||
|
//try
|
||||||
|
dsDataTable.DataTable.Cancel;
|
||||||
|
|
||||||
|
dtDetails := dsDataTable.DataTable.GetDetailDataTables;
|
||||||
|
for i := 0 to dtDetails.Count - 1 do
|
||||||
|
begin
|
||||||
|
(TDADataTable(dtDetails.Items[i])).Cancel;
|
||||||
|
end;
|
||||||
|
|
||||||
|
dsDataTable.DataTable.CancelUpdates;
|
||||||
|
|
||||||
|
{ Comprobar si el bookmark no es válido cuando estamos cancelando la
|
||||||
|
inserción de una fila nueva.
|
||||||
|
CUIDADO!! Si no es válido salta una excepción. NO devuelve false!!!}
|
||||||
|
try
|
||||||
|
if (Assigned(ABookmark)) and
|
||||||
|
(dsDataTable.DataTable.Dataset.BookmarkValid(ABookmark)) then
|
||||||
|
dsDataTable.DataTable.GotoBookmark(ABookmark);
|
||||||
|
except
|
||||||
|
end;
|
||||||
|
|
||||||
|
//finally
|
||||||
|
dsDataTable.DataTable.EnableControls;
|
||||||
|
dsDataTable.DataTable.FreeBookmark(ABookmark);
|
||||||
|
// dsDataTable.DataTable.EnableEventHandlers; <- No descomentar
|
||||||
|
HideHourglassCursor
|
||||||
|
//end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.dsDataTableDataChange(Sender: TObject; Field: TField);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ActualizarEstadoEditor;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.actRefrescarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if HayDatos then
|
||||||
|
(Sender as TAction).Enabled := (not dsDataTable.DataTable.Fetching) and
|
||||||
|
(not dsDataTable.DataTable.Opening) and
|
||||||
|
(not dsDataTable.DataTable.Closing) and
|
||||||
|
(dsDataTable.DataTable.State <> dsInsert)
|
||||||
|
else
|
||||||
|
(Sender as TAction).Enabled := False;
|
||||||
|
|
||||||
|
//MODO CONSULTAR ITEM
|
||||||
|
if (Sender as TAction).Enabled
|
||||||
|
and Assigned(dsDataTable.DataTable) then
|
||||||
|
(Sender as TAction).Enabled := not dsDataTable.DataTable.ReadOnly;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorDBBase.GetModified: Boolean;
|
||||||
|
begin
|
||||||
|
if ReadOnly then
|
||||||
|
Result := False
|
||||||
|
else
|
||||||
|
Result := DataTableModified(dsDataTable.DataTable) or inherited GetModified;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorDBBase.HayDatos: Boolean;
|
||||||
|
begin
|
||||||
|
Result := Assigned(dsDataTable.DataTable) and (dsDataTable.DataTable.State <> dsInactive)
|
||||||
|
and (not dsDataTable.DataTable.IsEmpty);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.RefrescarInterno;
|
||||||
|
var
|
||||||
|
ABookmark : TBookmark;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(dsDataTable.DataTable) then
|
||||||
|
begin
|
||||||
|
if (dsDataTable.DataTable.IsEmpty) or (not ModifiedQuery) then
|
||||||
|
Exit; // No continuar con el refresco
|
||||||
|
|
||||||
|
ABookmark := dsDataTable.DataTable.GetBookMark;
|
||||||
|
dsDataTable.DataTable.DisableControls; //<- No descomentar
|
||||||
|
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
dsDataTable.DataTable.Refresh;
|
||||||
|
|
||||||
|
if dsDataTable.DataTable.Dataset.BookmarkValid(ABookmark) then
|
||||||
|
dsDataTable.DataTable.GotoBookmark(ABookmark);
|
||||||
|
finally
|
||||||
|
dsDataTable.DataTable.FreeBookmark(ABookmark);
|
||||||
|
dsDataTable.DataTable.EnableControls; //<- No descomentar
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
||||||
|
begin
|
||||||
|
{ Para resetear el estado de la tabla en el caso de hacer un insert
|
||||||
|
sin meter ningún dato. }
|
||||||
|
if Assigned(dsDataTable.DataTable) and (not Modified) then
|
||||||
|
dsDataTable.DataTable.Cancel;
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.actEliminarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if (Sender as TAction).Enabled then
|
||||||
|
(Sender as TAction).Enabled := HayDatos and (dsDataTable.DataTable.State <> dsInsert)
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.actGuardarCerrarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if (Sender as TAction).Enabled then
|
||||||
|
(Sender as TAction).Enabled := HayDatos;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.actGuardarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if (Sender as TAction).Enabled then
|
||||||
|
(Sender as TAction).Enabled := HayDatos;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.actModificarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if (Sender as TAction).Enabled then
|
||||||
|
(Sender as TAction).Enabled := HayDatos;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.actPrevisualizarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := HayDatos;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBBase.actImprimirUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := HayDatos;
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
RegisterClass(TfEditorDBBase);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
UnRegisterClass(TfEditorDBBase);
|
||||||
|
|
||||||
|
end.
|
||||||
103
Source/GUIBase/uEditorDBItem.dfm
Normal file
103
Source/GUIBase/uEditorDBItem.dfm
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
inherited fEditorDBItem: TfEditorDBItem
|
||||||
|
Left = 450
|
||||||
|
Top = 321
|
||||||
|
Caption = 'fEditorDBItem'
|
||||||
|
ClientHeight = 461
|
||||||
|
ClientWidth = 652
|
||||||
|
ExplicitWidth = 660
|
||||||
|
ExplicitHeight = 495
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
inherited JvNavPanelHeader: TJvNavPanelHeader
|
||||||
|
Width = 652
|
||||||
|
ExplicitWidth = 652
|
||||||
|
inherited Image1: TImage
|
||||||
|
Left = 625
|
||||||
|
ExplicitLeft = 627
|
||||||
|
ExplicitHeight = 19
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited TBXDock: TTBXDock
|
||||||
|
Width = 652
|
||||||
|
ExplicitWidth = 652
|
||||||
|
inherited tbxMain: TTBXToolbar
|
||||||
|
ExplicitWidth = 605
|
||||||
|
inherited TBXItem26: TTBXItem
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited TBXItem25: TTBXItem
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited tbxMenu: TTBXToolbar
|
||||||
|
ExplicitWidth = 652
|
||||||
|
inherited TBXSubmenuItem1: TTBXSubmenuItem
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object pgPaginas: TPageControl [2]
|
||||||
|
Left = 0
|
||||||
|
Top = 76
|
||||||
|
Width = 652
|
||||||
|
Height = 366
|
||||||
|
ActivePage = pagGeneral
|
||||||
|
Align = alClient
|
||||||
|
TabOrder = 2
|
||||||
|
object pagGeneral: TTabSheet
|
||||||
|
Caption = 'General'
|
||||||
|
ExplicitLeft = 0
|
||||||
|
ExplicitTop = 0
|
||||||
|
ExplicitWidth = 0
|
||||||
|
ExplicitHeight = 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited StatusBar: TJvStatusBar
|
||||||
|
Top = 442
|
||||||
|
Width = 652
|
||||||
|
Panels = <
|
||||||
|
item
|
||||||
|
Width = 200
|
||||||
|
Control = imgStatus
|
||||||
|
end>
|
||||||
|
ExplicitTop = 442
|
||||||
|
ExplicitWidth = 652
|
||||||
|
object imgStatus: TImage
|
||||||
|
Left = 3
|
||||||
|
Top = 3
|
||||||
|
Width = 16
|
||||||
|
Height = 16
|
||||||
|
AutoSize = True
|
||||||
|
Picture.Data = {
|
||||||
|
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001000
|
||||||
|
00001008060000001FF3FF61000001E24944415478DAA5932B93DB3014858F99
|
||||||
|
59C46A669599456561166B59DD5F50C342E717C461652B58A8658182810A0BAB
|
||||||
|
C35C26B394C92C8BDC6BB99BCD63A7339DB547638D1EDF3DE7488EF0C627BA1D
|
||||||
|
70466896303FE352747B9DA78B62D77B677DEBA0AC342C663F9D77F0473F2E7F
|
||||||
|
7F0718DAA2EE9C5BA58B125DD320150204024BF85A6DC44A4A097FF27004ACEB
|
||||||
|
BABB071C6B8B98E588057AEF31630C3835D4FC6EF9DDE76221D0EC1B789A33C6
|
||||||
|
F491327EC009449D5AC90455A3969598BD93E87F5BF85613802A6A01216F011B
|
||||||
|
3FB06416AA8F80823F224DC8DF8D82CE3394A5DE0921F271F39881D99A750084
|
||||||
|
3882020F9158C85891F7029405D26CCAC0C52579364BCEF9C3B86E54E19CFB10
|
||||||
|
996D337CFE389F027802BA760D465567F1D837002FC0E875270E91C988677CE0
|
||||||
|
0987B5B6A71DEC0C38FCEA820A9EA5B0FB43E0896C8EF2DB12D6A8CBB02B3A89
|
||||||
|
07022CA9AFCE80FEE9EFF469FA3CDB7A0500B23190FC3016E9AD1DBECA1C87B6
|
||||||
|
0B210A5260ECA4402E5E5500BA4C15E5A02680B143F1293F57F7972AE85B55D7
|
||||||
|
80AAAA6A02ACD40FF5854EC3447A4380220FBEC70D52CC5F32A0FE2D806EDF28
|
||||||
|
1F5AEB202052DA0E65915FF97E51D113A0BE02D009D4EEE856D49D4254DA0C7A
|
||||||
|
63465FCF88A0E4C2EF5D06FFFC1BFFF7F903DDDC21F8890148C2000000004945
|
||||||
|
4E44AE426082}
|
||||||
|
Transparent = True
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited EditorActionList: TActionList
|
||||||
|
Top = 112
|
||||||
|
inherited actEliminar: TAction
|
||||||
|
ShortCut = 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited dsDataTable: TDADataSource
|
||||||
|
Left = 48
|
||||||
|
Top = 112
|
||||||
|
end
|
||||||
|
end
|
||||||
93
Source/GUIBase/uEditorDBItem.pas
Normal file
93
Source/GUIBase/uEditorDBItem.pas
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
unit uEditorDBItem;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
uEditorItem, ImgList, PngImageList, StdActns, ActnList, TBX,
|
||||||
|
TB2Item, TB2Dock, TB2Toolbar, ComCtrls, JvExControls, JvComponent,
|
||||||
|
JvNavigationPane, DB, uDADataTable, uEditorDBBase, JvFormAutoSize,
|
||||||
|
StdCtrls, uDAScriptingProvider, uDACDSDataTable, AppEvnts, uCustomView,
|
||||||
|
uViewBase, JvAppStorage, JvAppRegistryStorage,
|
||||||
|
JvFormPlacement, pngimage, ExtCtrls, JvComponentBase, dxLayoutLookAndFeels,
|
||||||
|
JvExComCtrls, JvStatusBar, uDAInterfaces;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorDBItem = interface(IEditorDBBase)
|
||||||
|
['{497AE4CE-D061-4F75-A29A-320F8565FF54}']
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfEditorDBItem = class(TfEditorDBBase, IEditorDBItem)
|
||||||
|
pgPaginas: TPageControl;
|
||||||
|
pagGeneral: TTabSheet;
|
||||||
|
imgStatus: TImage;
|
||||||
|
protected
|
||||||
|
procedure EliminarInterno; override;
|
||||||
|
procedure PrevisualizarInterno; override;
|
||||||
|
procedure ImprimirInterno; override;
|
||||||
|
procedure ActualizarEstadoEditor; override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
uEditorBase, uDialogUtils;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
procedure TfEditorDBItem.ActualizarEstadoEditor;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if HayDatos then
|
||||||
|
begin
|
||||||
|
if (Self.Modified) and (dsDataTable.DataTable.State <> dsInsert) then
|
||||||
|
begin
|
||||||
|
StatusBar.Panels[0].Text := ' Se han producido cambios';
|
||||||
|
imgStatus.Visible := True;
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
imgStatus.Visible := False;
|
||||||
|
StatusBar.Panels[0].Text := '';
|
||||||
|
end
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBItem.EliminarInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
actCerrar.Execute;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBItem.ImprimirInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Modified then
|
||||||
|
begin
|
||||||
|
if (ShowConfirmMessage('Se han producido cambios', 'Se han producido cambios y no se puede imprimir hasta que no se guarden.' + #10#13 +
|
||||||
|
'¿Desea guardarlos ahora?') = IDYES) then
|
||||||
|
actGuardar.Execute
|
||||||
|
else
|
||||||
|
ShowInfoMessage('Recuerde guardar los cambios si quiere previsualizar o imprimir.');
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorDBItem.PrevisualizarInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Modified then
|
||||||
|
begin
|
||||||
|
if (ShowConfirmMessage('Se han producido cambios', 'Se han producido cambios y no se puede previsualizar hasta que no se guarden.' + #10#13 +
|
||||||
|
'¿Desea guardarlos ahora?') = IDYES) then
|
||||||
|
actGuardar.Execute
|
||||||
|
else
|
||||||
|
ShowInfoMessage('Recuerde guardar los cambios si quiere previsualizar o imprimir.');
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
RegisterClass(TfEditorDBItem);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
UnRegisterClass(TfEditorDBItem);
|
||||||
|
|
||||||
|
end.
|
||||||
1566
Source/GUIBase/uEditorGridBase.dfm
Normal file
1566
Source/GUIBase/uEditorGridBase.dfm
Normal file
File diff suppressed because it is too large
Load Diff
319
Source/GUIBase/uEditorGridBase.pas
Normal file
319
Source/GUIBase/uEditorGridBase.pas
Normal file
@ -0,0 +1,319 @@
|
|||||||
|
{*******************************************************}
|
||||||
|
{ }
|
||||||
|
{ Administración de puntos de venta }
|
||||||
|
{ }
|
||||||
|
{ Copyright (C) 2006 Rodax Software S.L. }
|
||||||
|
{ }
|
||||||
|
{*******************************************************}
|
||||||
|
|
||||||
|
unit uEditorGridBase;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uEditorBase, ToolWin, ComCtrls, JvExControls, JvComponent,
|
||||||
|
JvNavigationPane, ActnList, TB2Dock, TB2Toolbar, TBX, TB2Item,
|
||||||
|
ImgList, PngImageList, StdActns, TB2ExtItems, TBXExtItems, uViewGridBase,
|
||||||
|
uEditorDBBase, DB, uDADataTable, Menus, JvFormAutoSize,
|
||||||
|
uDAScriptingProvider, uDACDSDataTable, AppEvnts, JvAppStorage,
|
||||||
|
JvAppRegistryStorage, JvFormPlacement, pngimage, ExtCtrls,
|
||||||
|
JvComponentBase, dxLayoutLookAndFeels, TBXStatusBars, JvExComCtrls,
|
||||||
|
JvStatusBar, uDAInterfaces;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorGridBase = interface(IEditorDBBase)
|
||||||
|
['{CB8CDE00-B225-4A1D-9A5C-EC6FBE2C854B}']
|
||||||
|
|
||||||
|
procedure SetMultiSelect (AValue : Boolean);
|
||||||
|
function GetMultiSelect : Boolean;
|
||||||
|
property MultiSelect : Boolean read GetMultiSelect write SetMultiSelect;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfEditorGridBase = class(TfEditorDBBase, IEditorGridBase)
|
||||||
|
tbxEditFiltro: TTBXEditItem;
|
||||||
|
tbxFiltro: TTBXToolbar;
|
||||||
|
GridPopupMenu: TPopupMenu;
|
||||||
|
Modificar1: TMenuItem;
|
||||||
|
Eliminar1: TMenuItem;
|
||||||
|
N1: TMenuItem;
|
||||||
|
Nuevo1: TMenuItem;
|
||||||
|
TBXLabelItem1: TTBXLabelItem;
|
||||||
|
actQuitarFiltro: TAction;
|
||||||
|
N2: TMenuItem;
|
||||||
|
Previsualizar1: TMenuItem;
|
||||||
|
Imprimir1: TMenuItem;
|
||||||
|
TBXSeparatorItem14: TTBXSeparatorItem;
|
||||||
|
TBXItem33: TTBXItem;
|
||||||
|
N3: TMenuItem;
|
||||||
|
Actualizar1: TMenuItem;
|
||||||
|
TBXItem34: TTBXItem;
|
||||||
|
actAnchoAuto: TAction;
|
||||||
|
TBXSeparatorItem16: TTBXSeparatorItem;
|
||||||
|
TBXItem35: TTBXItem;
|
||||||
|
TBXItem36: TTBXItem;
|
||||||
|
TBXSeparatorItem6: TTBXSeparatorItem;
|
||||||
|
TBXItem7: TTBXItem;
|
||||||
|
actFiltrar: TAction;
|
||||||
|
TBXItem37: TTBXItem;
|
||||||
|
TBXTMain2: TTBXToolbar;
|
||||||
|
procedure tbxEditFiltroChange(Sender: TObject; const Text: String);
|
||||||
|
procedure FormShow(Sender: TObject); override;
|
||||||
|
procedure actQuitarFiltroExecute(Sender: TObject);
|
||||||
|
procedure actDuplicarUpdate(Sender: TObject);
|
||||||
|
procedure JvFormStorageSavePlacement(Sender: TObject);
|
||||||
|
procedure JvFormStorageRestorePlacement(Sender: TObject);
|
||||||
|
procedure actModificarUpdate(Sender: TObject);
|
||||||
|
procedure actEliminarUpdate(Sender: TObject);
|
||||||
|
procedure actNuevoUpdate(Sender: TObject);
|
||||||
|
procedure actAnchoAutoExecute(Sender: TObject);
|
||||||
|
procedure actRefrescarUpdate(Sender: TObject);
|
||||||
|
procedure actFiltrarExecute(Sender: TObject);
|
||||||
|
procedure actFiltrarUpdate(Sender: TObject);
|
||||||
|
protected
|
||||||
|
FViewGrid : IViewGridBase;
|
||||||
|
procedure SetViewGrid(const Value : IViewGridBase); virtual;
|
||||||
|
function GetViewGrid: IViewGridBase;
|
||||||
|
procedure SetMultiSelect (AValue : Boolean);
|
||||||
|
function GetMultiSelect : Boolean;
|
||||||
|
|
||||||
|
procedure PrevisualizarInterno; override;
|
||||||
|
procedure ConfPaginaInterno; override;
|
||||||
|
procedure ImprimirInterno; override;
|
||||||
|
procedure RefrescarInterno; override;
|
||||||
|
public
|
||||||
|
property ViewGrid: IViewGridBase read GetViewGrid write SetViewGrid;
|
||||||
|
property MultiSelect : Boolean read GetMultiSelect write SetMultiSelect;
|
||||||
|
|
||||||
|
constructor Create(AOwner : TComponent); override;
|
||||||
|
destructor Destroy; override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
uDataModuleBase, uCustomEditor, cxGridTableView, cxControls;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
{
|
||||||
|
********************************* TfEditorGridBase *****************************
|
||||||
|
}
|
||||||
|
destructor TfEditorGridBase.Destroy;
|
||||||
|
begin
|
||||||
|
FViewGrid := NIL;
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorGridBase.GetMultiSelect: Boolean;
|
||||||
|
begin
|
||||||
|
Result := False;
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
Result := ViewGrid.MultiSelect;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorGridBase.GetViewGrid: IViewGridBase;
|
||||||
|
begin
|
||||||
|
Result := FViewGrid;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.ImprimirInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ViewGrid.Print;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.SetMultiSelect(AValue: Boolean);
|
||||||
|
begin
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
ViewGrid.MultiSelect := AValue;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.SetViewGrid(const Value: IViewGridBase);
|
||||||
|
begin
|
||||||
|
FViewGrid := Value;
|
||||||
|
if Assigned(FViewGrid) then
|
||||||
|
begin
|
||||||
|
FViewGrid.PopupMenu := GridPopupMenu;
|
||||||
|
FViewGrid.OnDblClick := actModificar.OnExecute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.tbxEditFiltroChange(Sender: TObject; const Text: String);
|
||||||
|
begin
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
begin
|
||||||
|
if Length(Text) > 0 then
|
||||||
|
ViewGrid.Filter := Text
|
||||||
|
else
|
||||||
|
actQuitarFiltro.Execute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.FormShow(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
ViewGrid.ShowEmbedded(Self);
|
||||||
|
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.actEliminarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if HayDatos and Assigned(ViewGrid) then
|
||||||
|
(Sender as TAction).Enabled := not (dsDataTable.DataTable.State in dsEditModes)
|
||||||
|
and not ViewGrid.IsEmpty
|
||||||
|
and ViewGrid.esSeleccionCeldaDatos
|
||||||
|
else
|
||||||
|
(Sender as TAction).Enabled := False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.actFiltrarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
ViewGrid.ViewFiltros.VerFiltros := not ViewGrid.ViewFiltros.VerFiltros;
|
||||||
|
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
if ViewGrid.ViewFiltros.VerFiltros then
|
||||||
|
begin
|
||||||
|
tbxEditFiltro.Visible := False;
|
||||||
|
TBXItem7.Visible := False;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
tbxEditFiltro.Text := '';
|
||||||
|
tbxEditFiltro.Visible := True;
|
||||||
|
TBXItem7.Visible := True;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.actFiltrarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
(Sender as TAction).Checked := ViewGrid.ViewFiltros.VerFiltros;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.actModificarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if HayDatos and Assigned(ViewGrid) then
|
||||||
|
(Sender as TAction).Enabled := not (dsDataTable.DataTable.State in dsEditModes)
|
||||||
|
and not ViewGrid.IsEmpty
|
||||||
|
and ViewGrid.esSeleccionCeldaDatos
|
||||||
|
else
|
||||||
|
(Sender as TAction).Enabled := False;
|
||||||
|
|
||||||
|
//En el caso de que el grid sea multiselección solo se podrá modificar si solo se tiene un elemento seleccionado
|
||||||
|
if (Sender as TAction).Enabled then
|
||||||
|
if MultiSelect and Assigned(ViewGrid) then
|
||||||
|
(Sender as TAction).Enabled := (ViewGrid.NumSeleccionados = 1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.actNuevoUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := Assigned(dsDataTable.DataTable);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.actQuitarFiltroExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
begin
|
||||||
|
tbxEditFiltro.Text := '';
|
||||||
|
ViewGrid.Filter := '';
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.actRefrescarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := Assigned(dsDataTable.DataTable);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.ConfPaginaInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ViewGrid.PrintSetup;
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TfEditorGridBase.Create(AOwner: TComponent);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
actModificar.ShortCut := ShortCut(VK_RETURN, []);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.actAnchoAutoExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
ViewGrid.AjustarAncho;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.actDuplicarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if HayDatos and Assigned(ViewGrid) then
|
||||||
|
(Sender as TAction).Enabled := not (dsDataTable.DataTable.State in dsEditModes)
|
||||||
|
and not ViewGrid.IsEmpty
|
||||||
|
and ViewGrid.esSeleccionCeldaDatos
|
||||||
|
else
|
||||||
|
(Sender as TAction).Enabled := False;
|
||||||
|
|
||||||
|
//En el caso de que el grid sea multiselección solo se podrá modificar si solo se tiene un elemento seleccionado
|
||||||
|
if (Sender as TAction).Enabled then
|
||||||
|
if MultiSelect and Assigned(ViewGrid) then
|
||||||
|
(Sender as TAction).Enabled := (ViewGrid.NumSeleccionados = 1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.JvFormStorageSavePlacement(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
ViewGrid.StoreToRegistry(JvAppRegistryStorage.Root);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.PrevisualizarInterno;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ViewGrid.Preview;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.RefrescarInterno;
|
||||||
|
var
|
||||||
|
FocusedRow, TopRow : Integer;
|
||||||
|
begin
|
||||||
|
TopRow := ViewGrid._FocusedView.Controller.TopRowIndex;
|
||||||
|
FocusedRow := ViewGrid._FocusedView.DataController.FocusedRowIndex;
|
||||||
|
ViewGrid._FocusedView.BeginUpdate;
|
||||||
|
ShowHourglassCursor;
|
||||||
|
|
||||||
|
try
|
||||||
|
// inherited; <- No hacemos lo que hay en el padre
|
||||||
|
dsDataTable.DataTable.Refresh;
|
||||||
|
finally
|
||||||
|
ViewGrid._FocusedView.EndUpdate;
|
||||||
|
ViewGrid._FocusedView.DataController.FocusedRowIndex := FocusedRow;
|
||||||
|
ViewGrid._FocusedView.Controller.TopRowIndex := TopRow;
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorGridBase.JvFormStorageRestorePlacement(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(ViewGrid) then
|
||||||
|
ViewGrid.RestoreFromRegistry(JvAppRegistryStorage.Root);
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
RegisterClass(TfEditorGridBase);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
UnRegisterClass(TfEditorGridBase);
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
62
Source/GUIBase/uEditorItem.dfm
Normal file
62
Source/GUIBase/uEditorItem.dfm
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
inherited fEditorItem: TfEditorItem
|
||||||
|
Left = 423
|
||||||
|
Top = 273
|
||||||
|
Caption = 'fEditorItem'
|
||||||
|
ClientHeight = 501
|
||||||
|
ClientWidth = 678
|
||||||
|
ExplicitWidth = 686
|
||||||
|
ExplicitHeight = 535
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
inherited JvNavPanelHeader: TJvNavPanelHeader
|
||||||
|
Width = 678
|
||||||
|
Visible = False
|
||||||
|
ExplicitWidth = 678
|
||||||
|
inherited Image1: TImage
|
||||||
|
Left = 651
|
||||||
|
ExplicitLeft = 651
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object pgPaginas: TPageControl [1]
|
||||||
|
Left = 0
|
||||||
|
Top = 76
|
||||||
|
Width = 678
|
||||||
|
Height = 406
|
||||||
|
ActivePage = pagGeneral
|
||||||
|
Align = alClient
|
||||||
|
TabOrder = 1
|
||||||
|
object pagGeneral: TTabSheet
|
||||||
|
Caption = 'General'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited TBXDock: TTBXDock
|
||||||
|
Width = 678
|
||||||
|
ExplicitWidth = 678
|
||||||
|
inherited tbxMain: TTBXToolbar
|
||||||
|
ExplicitWidth = 575
|
||||||
|
inherited TBXItem5: TTBXItem
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited tbxMenu: TTBXToolbar
|
||||||
|
ExplicitWidth = 678
|
||||||
|
inherited TBXSubmenuItem4: TTBXSubmenuItem
|
||||||
|
inherited TBXItem10: TTBXItem
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited StatusBar: TJvStatusBar
|
||||||
|
Top = 482
|
||||||
|
Width = 678
|
||||||
|
ExplicitTop = 482
|
||||||
|
ExplicitWidth = 678
|
||||||
|
end
|
||||||
|
inherited EditorActionList: TActionList
|
||||||
|
Top = 104
|
||||||
|
inherited actEliminar: TAction
|
||||||
|
ShortCut = 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
39
Source/GUIBase/uEditorItem.pas
Normal file
39
Source/GUIBase/uEditorItem.pas
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
|
||||||
|
unit uEditorItem;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uEditorBase, ActnList, JvExControls, JvComponent,
|
||||||
|
JvNavigationPane, ComCtrls, StdActns, TB2Dock, TB2Toolbar, TBX, TB2Item,
|
||||||
|
ImgList, PngImageList, JvFormAutoSize, JvAppStorage,
|
||||||
|
JvAppRegistryStorage, JvFormPlacement, pngimage, ExtCtrls,
|
||||||
|
JvComponentBase, dxLayoutLookAndFeels, TBXStatusBars, JvExComCtrls,
|
||||||
|
JvStatusBar;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorItem = interface(IEditorBase)
|
||||||
|
['{F6A412D1-59AA-41D2-ADD5-C92687CD5387}']
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfEditorItem = class(TfEditorBase, IEditorItem)
|
||||||
|
pagGeneral: TTabSheet;
|
||||||
|
pgPaginas: TPageControl;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses uDataModuleBase;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
initialization
|
||||||
|
RegisterClass(TfEditorItem);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
|
||||||
|
UnRegisterClass(TfEditorItem);
|
||||||
|
|
||||||
|
|
||||||
|
end.
|
||||||
15
Source/GUIBase/uEditorPSPreview.dfm
Normal file
15
Source/GUIBase/uEditorPSPreview.dfm
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
object Form1: TForm1
|
||||||
|
Left = 580
|
||||||
|
Top = 506
|
||||||
|
Width = 320
|
||||||
|
Height = 240
|
||||||
|
Color = clBtnFace
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'MS Sans Serif'
|
||||||
|
Font.Style = []
|
||||||
|
OldCreateOrder = True
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
end
|
||||||
24
Source/GUIBase/uEditorPSPreview.pas
Normal file
24
Source/GUIBase/uEditorPSPreview.pas
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
unit uEditorPSPreview;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, dxPSPrVw;
|
||||||
|
|
||||||
|
type
|
||||||
|
TForm1 = class(TCustomdxPSPreviewWindow)
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
Form1: TForm1;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
end.
|
||||||
938
Source/GUIBase/uEditorPreview.dfm
Normal file
938
Source/GUIBase/uEditorPreview.dfm
Normal file
@ -0,0 +1,938 @@
|
|||||||
|
inherited fEditorPreview: TfEditorPreview
|
||||||
|
Left = 521
|
||||||
|
Top = 340
|
||||||
|
Caption = 'Previsualizar'
|
||||||
|
WindowState = wsMaximized
|
||||||
|
OnDestroy = FormDestroy
|
||||||
|
OnResize = FormResize
|
||||||
|
ExplicitWidth = 658
|
||||||
|
ExplicitHeight = 492
|
||||||
|
PixelsPerInch = 96
|
||||||
|
TextHeight = 13
|
||||||
|
inherited JvNavPanelHeader: TJvNavPanelHeader
|
||||||
|
Top = 75
|
||||||
|
Visible = False
|
||||||
|
ExplicitTop = 75
|
||||||
|
ExplicitWidth = 650
|
||||||
|
inherited Image1: TImage
|
||||||
|
Left = 623
|
||||||
|
ExplicitLeft = 623
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited TBXDock: TTBXDock
|
||||||
|
Height = 75
|
||||||
|
ExplicitHeight = 75
|
||||||
|
inherited tbxMain: TTBXToolbar
|
||||||
|
Top = 49
|
||||||
|
DefaultDock = TBXDock
|
||||||
|
Visible = False
|
||||||
|
ExplicitTop = 49
|
||||||
|
ExplicitWidth = 248
|
||||||
|
end
|
||||||
|
inherited tbxMenu: TTBXToolbar
|
||||||
|
DockPos = -24
|
||||||
|
inherited TBXSubmenuItem5: TTBXSubmenuItem
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited TBXSubmenuItem1: TTBXSubmenuItem
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object TBXSubmenuItem2: TTBXSubmenuItem [3]
|
||||||
|
Caption = '&Ir'
|
||||||
|
object TBXItem47: TTBXItem
|
||||||
|
Action = actPrimeraPagina
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem43: TTBXItem
|
||||||
|
Action = actPaginaAnterior
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem44: TTBXItem
|
||||||
|
Action = actPaginaSiguiente
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem45: TTBXItem
|
||||||
|
Action = actUltimaPagina
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited TBXSubmenuItem6: TTBXSubmenuItem
|
||||||
|
Caption = '&Zoom'
|
||||||
|
inherited TBXItem18: TTBXItem
|
||||||
|
Action = actZoomIn
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem38: TTBXItem
|
||||||
|
Action = actZoomOut
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXSeparatorItem19: TTBXSeparatorItem
|
||||||
|
end
|
||||||
|
object TBXItem48: TTBXItem
|
||||||
|
Action = actAnchoPagina
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem46: TTBXItem
|
||||||
|
Action = actTodaPagina
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object TBXSubmenuItem3: TTBXSubmenuItem [5]
|
||||||
|
Caption = '&Herramientas'
|
||||||
|
object TBXItem49: TTBXItem
|
||||||
|
Action = actToolHand
|
||||||
|
Checked = True
|
||||||
|
GroupIndex = 1
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem50: TTBXItem
|
||||||
|
Action = actToolZoom
|
||||||
|
GroupIndex = 1
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object TBXToolbar1: TTBXToolbar
|
||||||
|
Left = 0
|
||||||
|
Top = 23
|
||||||
|
Caption = 'TBXToolbar1'
|
||||||
|
DefaultDock = TBXDock
|
||||||
|
DragHandleStyle = dhNone
|
||||||
|
ParentShowHint = False
|
||||||
|
ShowHint = True
|
||||||
|
TabOrder = 2
|
||||||
|
object TBXItem39: TTBXItem
|
||||||
|
Action = actImprimir
|
||||||
|
DisplayMode = nbdmImageAndText
|
||||||
|
Images = SmallImages
|
||||||
|
end
|
||||||
|
object TBXSeparatorItem18: TTBXSeparatorItem
|
||||||
|
end
|
||||||
|
object tbxMano: TTBXItem
|
||||||
|
Action = actToolHand
|
||||||
|
Checked = True
|
||||||
|
DisplayMode = nbdmImageAndText
|
||||||
|
GroupIndex = 1
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object tbxZoom: TTBXItem
|
||||||
|
Action = actToolZoom
|
||||||
|
DisplayMode = nbdmImageAndText
|
||||||
|
GroupIndex = 1
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem42: TTBXItem
|
||||||
|
Action = actTodaPagina
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem41: TTBXItem
|
||||||
|
Action = actAnchoPagina
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem40: TTBXItem
|
||||||
|
Action = actZoomOut
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object cbZoom: TTBXComboBoxItem
|
||||||
|
Caption = 'Zoom'
|
||||||
|
ReadOnly = True
|
||||||
|
OnItemClick = cbZoomItemClick
|
||||||
|
end
|
||||||
|
object TBXItem37: TTBXItem
|
||||||
|
Action = actZoomIn
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXSeparatorItem17: TTBXSeparatorItem
|
||||||
|
end
|
||||||
|
object TBXItem7: TTBXItem
|
||||||
|
Action = actPrimeraPagina
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem34: TTBXItem
|
||||||
|
Action = actPaginaAnterior
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem33: TTBXItem
|
||||||
|
Action = actPaginaSiguiente
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXItem36: TTBXItem
|
||||||
|
Action = actUltimaPagina
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
end
|
||||||
|
object TBXSeparatorItem16: TTBXSeparatorItem
|
||||||
|
end
|
||||||
|
object TBXItem35: TTBXItem
|
||||||
|
Action = actCerrar
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited StatusBar: TJvStatusBar
|
||||||
|
Panels = <
|
||||||
|
item
|
||||||
|
Width = 150
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Width = 50
|
||||||
|
end>
|
||||||
|
ExplicitWidth = 650
|
||||||
|
end
|
||||||
|
inherited EditorActionList: TActionList
|
||||||
|
Top = 104
|
||||||
|
inherited actNuevo: TAction
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actModificar: TAction
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actGuardarCerrar: TAction
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actGuardar: TAction
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actEliminar: TAction
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actConfPagina: TAction
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actPrevisualizar: TAction
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actDeshacer: TEditUndo
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actCortar: TEditCut
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actCopiar: TEditCopy
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actPegar: TEditPaste
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actSeleccionarTodo: TEditSelectAll
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actLimpiar: TEditDelete
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actBuscar: TAction
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited actCancelarCambios: TAction
|
||||||
|
Enabled = False
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited SmallImages: TPngImageList
|
||||||
|
Left = 43
|
||||||
|
Top = 104
|
||||||
|
end
|
||||||
|
inherited LargeImages: TPngImageList
|
||||||
|
Left = 75
|
||||||
|
Top = 104
|
||||||
|
end
|
||||||
|
inherited JvFormStorage: TJvFormStorage
|
||||||
|
Left = 376
|
||||||
|
Top = 136
|
||||||
|
end
|
||||||
|
inherited JvAppRegistryStorage: TJvAppRegistryStorage
|
||||||
|
Left = 408
|
||||||
|
Top = 136
|
||||||
|
end
|
||||||
|
object PreviewActionList: TActionList
|
||||||
|
Images = PreviewSmallImageList
|
||||||
|
Left = 344
|
||||||
|
Top = 104
|
||||||
|
object actPrimeraPagina: TAction
|
||||||
|
Category = 'Ver'
|
||||||
|
Caption = 'Primera p'#225'gina'
|
||||||
|
ImageIndex = 0
|
||||||
|
OnExecute = actPrimeraPaginaExecute
|
||||||
|
OnUpdate = actPrimeraPaginaUpdate
|
||||||
|
end
|
||||||
|
object actUltimaPagina: TAction
|
||||||
|
Category = 'Ver'
|
||||||
|
Caption = #218'ltima p'#225'gina'
|
||||||
|
ImageIndex = 3
|
||||||
|
OnExecute = actUltimaPaginaExecute
|
||||||
|
OnUpdate = actUltimaPaginaUpdate
|
||||||
|
end
|
||||||
|
object actPaginaAnterior: TAction
|
||||||
|
Category = 'Ver'
|
||||||
|
Caption = 'P'#225'gina anterior'
|
||||||
|
ImageIndex = 1
|
||||||
|
OnExecute = actPaginaAnteriorExecute
|
||||||
|
OnUpdate = actPaginaAnteriorUpdate
|
||||||
|
end
|
||||||
|
object actPaginaSiguiente: TAction
|
||||||
|
Category = 'Ver'
|
||||||
|
Caption = 'P'#225'gina siguiente'
|
||||||
|
ImageIndex = 2
|
||||||
|
OnExecute = actPaginaSiguienteExecute
|
||||||
|
OnUpdate = actPaginaSiguienteUpdate
|
||||||
|
end
|
||||||
|
object actZoomIn: TAction
|
||||||
|
Category = 'Ver'
|
||||||
|
Caption = 'M'#225's zoom'
|
||||||
|
ImageIndex = 8
|
||||||
|
OnExecute = actZoomInExecute
|
||||||
|
end
|
||||||
|
object actZoomOut: TAction
|
||||||
|
Category = 'Ver'
|
||||||
|
Caption = 'Menos zoom'
|
||||||
|
ImageIndex = 9
|
||||||
|
OnExecute = actZoomOutExecute
|
||||||
|
end
|
||||||
|
object actTodaPagina: TAction
|
||||||
|
Category = 'Ver'
|
||||||
|
Caption = 'Toda la p'#225'gina'
|
||||||
|
GroupIndex = 1
|
||||||
|
ImageIndex = 4
|
||||||
|
OnExecute = actTodaPaginaExecute
|
||||||
|
end
|
||||||
|
object actAnchoPagina: TAction
|
||||||
|
Category = 'Ver'
|
||||||
|
Caption = 'Ancho de p'#225'gina'
|
||||||
|
GroupIndex = 1
|
||||||
|
ImageIndex = 5
|
||||||
|
OnExecute = actAnchoPaginaExecute
|
||||||
|
end
|
||||||
|
object actToolHand: TAction
|
||||||
|
Category = 'Herramientas'
|
||||||
|
AutoCheck = True
|
||||||
|
Caption = 'Mano'
|
||||||
|
GroupIndex = 1
|
||||||
|
ImageIndex = 10
|
||||||
|
OnExecute = actToolHandExecute
|
||||||
|
end
|
||||||
|
object actToolZoom: TAction
|
||||||
|
Category = 'Herramientas'
|
||||||
|
AutoCheck = True
|
||||||
|
Caption = 'Zoom'
|
||||||
|
GroupIndex = 1
|
||||||
|
ImageIndex = 6
|
||||||
|
OnExecute = actToolZoomExecute
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object PreviewSmallImageList: TPngImageList
|
||||||
|
PngImages = <
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000F14944415478DA
|
||||||
|
C5D2A10EC2301006E01B4F30893C39C59619EC70937B843D014C829B0339DEA0
|
||||||
|
1289638EC9C9E1160C9553A43882A0B45DC80223A30112CE346DFA7F697A6770
|
||||||
|
CEE19B327E0A8C663BB5A14506348D8CE7CBDEB4E0DBB96D7402518010C5A405
|
||||||
|
C8B0840F9B493710FA08F1E21190E1D0B7C5F9F23D10780849D200F7705102AC
|
||||||
|
D73A8023005203F73065A08022D3003C0B81AC08A0E3810C33115600156BAE01
|
||||||
|
3888E2A9F50BDC71CE07EE105875025A01B09268007D01A4CD1F48E4DAB3809D
|
||||||
|
657F35001440963E764122C78BA50798268ACF6ACF8142F6F97B400E8B9AC617
|
||||||
|
93887EC23B814FEAFFC00D0E3CD3E1153EE1F30000000049454E44AE426082}
|
||||||
|
Name = 'PngImage1'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000A34944415478DA
|
||||||
|
63FCFFFF3F032580912606303232628839545CF8BFBF5D9F912C03409A1F5C38
|
||||||
|
C0707F7B3EE90680342778E83334744C24DD0098E60B371818366C20D10098E6
|
||||||
|
071F18C0065C384082018E9517C19A3F0035830D7800A44F90E802A3BC13FFF5
|
||||||
|
8CCC193EBCF8C8F0E00503C3871B0B480F039021FF9834183EFC00721E906100
|
||||||
|
CC9077BF34C837006EC8AD13E41B00020A1E13FE136D002960E00D000045F48A
|
||||||
|
E13771044B0000000049454E44AE426082}
|
||||||
|
Name = 'PngImage0'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000A44944415478DA
|
||||||
|
63FCFFFF3F03258091260638565EFC7FA0C380115D1C9B5A9C067CFAF683E1DC
|
||||||
|
240B46B20D48F0D06798B4EE248A21241BF0E10703C3A26D0843483220C0419F
|
||||||
|
E1C10706860F407CE91AC410920C70B0506078F0829FE1C2838F0C1F1E3C009A
|
||||||
|
7480E1FEF67C46A20D30D0506038708301AEF9C18E02D25C202020C070E1C207
|
||||||
|
B86692C3800118800F6E2034936CC0830BA89A493680A294480A18780300CF22
|
||||||
|
A8E18A4EF6A30000000049454E44AE426082}
|
||||||
|
Name = 'PngImage3'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000EC4944415478DA
|
||||||
|
C5D2A10EC2301405D0DB2FA012F9246E95C8E290FB04FE8049703890842F5850
|
||||||
|
2882021CB5185210044725B220086E74908D40C252020937A97BF7A479792C49
|
||||||
|
127C13F673A0D65E27AA27D8EBA06CE97C70D10D5821703A5FB01A54D92B1085
|
||||||
|
84A813633F6B16038D7A80C178F984A440A34EE8F43C017B0186D3079202A124
|
||||||
|
F4FB1E402803180B58F736DB3B72038403620F405609E65082364758639CA440
|
||||||
|
42425608F1C803106E50ED9097CD3CBAFD40106132F10038E7D0DAE6E56C07A2
|
||||||
|
EC80B90700B740B37B9433801CA07C00A39FCB19C039412B0FE0DD25A6709A42
|
||||||
|
E0D3FC1FB8020318D0E1923D9C4B0000000049454E44AE426082}
|
||||||
|
Name = 'PngImage2'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD2520000017E4944415478DA
|
||||||
|
630C9B1C9ACFC0C03081813C50C00834E07F7E400E51AAFFFEFBC3F0EBDF7786
|
||||||
|
9F7F2138C9268F01C58073FBBF113444C9EA0B58F38469B3192E2DBB8C69404E
|
||||||
|
AC07568DBFFE303058F86431D44EB264F8053460DACC25B80DA89FBC1FC38092
|
||||||
|
144706FBC02C86F27E03B00BE6CE594B9C0B4036FFFC0DA15D43B31872BB95C0
|
||||||
|
062C5FB09B341764C4383278476631A4754882BDB076F111FC2E40B619860363
|
||||||
|
B318125A05187E026362CBD2B3A4B92036D491212C218B21B2999DE1C7DF6F0C
|
||||||
|
7B565CC76E4072B807D8E6BFFF1036FFFE0BA16352B218021BFE82C3E0F0EA07
|
||||||
|
080372FC3218FEFEFFCD70E5D07F8698200F86FE79982E08F4756448CAC862F0
|
||||||
|
AA05A5836F0CA7D6BD421890E6130F36F5DE311E86303F0F145B616C1048C9CC
|
||||||
|
6270AE7A05567B71E3678401F19E6160C1A7274519E62DDD843725DA943F04BB
|
||||||
|
E0C696BF080322DC7CC151034BE390F4FE0DCA47D07FFEFF01D37F81F4EDAD8C
|
||||||
|
0803829C5DC04993540033207F57D36EB2B2B35B9D6B0100103839527F8C36D7
|
||||||
|
0000000049454E44AE426082}
|
||||||
|
Name = 'PngImage5'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001714944415478DA
|
||||||
|
630C9B1C9ACFC0C03081813C50C00834E07F7E400E51AAFFFEFBC3F0EBDF7786
|
||||||
|
9F7F2138C9268F016EC099973B18F253E4198E6ED6C4A9D9CEFF36C3C4390F19
|
||||||
|
64793519264C9BCD7069D9658801D6962A60CDC40290216B171F411880CF05BF
|
||||||
|
A0CE05D17E619FC09A05D8C519E6CE598B6AC0B9FDDF8876018BEE6986E50B76
|
||||||
|
631A9013EB8153D3AF3F0C0C3F7F3330D807663124B40A607A016640FDE4FD58
|
||||||
|
0D2849716458B86607C3BCA59B18229BD919B62C3D4B9C0B603683E8E51B2006
|
||||||
|
0436FC65D8B3E23A692EC888716458BB05628057ED1786C3AB1F200CC8F1CB60
|
||||||
|
B878F0178A0B906D86E1CD3B20063857BD6238B5EE15C280349F7886EB8799F1
|
||||||
|
BA2036D49161C76E880136E50F192E6EFC8C3020DE338CE1DE311EB001D86CFE
|
||||||
|
FD1742EFDB0F31C0B4E43AC38D2D7F110644B8F9323C3D29CA901CEE81A219A6
|
||||||
|
11C63E7604628051F16586DB5B1911060439BB304C9BB984E88404033003F277
|
||||||
|
35ED262B3BBBD5B9160000C8E01B524AB937870000000049454E44AE426082}
|
||||||
|
Name = 'PngImage4'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
61000000097048597300000AEB00000AEB01828B0D5A000002E64944415478DA
|
||||||
|
8D936B4893511CC6FF67DA74BAC9BC9478C9357338CC4B0EBC1709F929A25414
|
||||||
|
A13E48082D8CFC20267E1B925DD004B3120C75919AA99B5DADD485E56DA2791D
|
||||||
|
739ABA2D9DB7A953379D6EEF5EDFDE14859C810F3C5F0ECFF33BFFF38783E0FF
|
||||||
|
425902A13B668448DCB4C5B658709C40D8F0A4563120A97FB1B61F3AAC291008
|
||||||
|
EDB1630ED7ECECA97C6F7F6FAEABB72BCDB46902B54CAD5BD4CCF7AAC68772C5
|
||||||
|
6F8A06C8286E05484EAEB3F10BB6A49FE2B2F2C2628318E0C440063300410050
|
||||||
|
910596D4B344F7BBB63169FBA7B4D6E65AA915205320E47A9EF4ECB89A7CCE85
|
||||||
|
CDA021950141E2BD2E9049645029E683BB3301EB2AE5F657E15B4955457EAA15
|
||||||
|
205B5095CD8BE33D0C8BE0523C1002B50120E5C12EE03509D8A60078386EC1B7
|
||||||
|
F2066DA3A89C8FFE1DBF9076CADFADFA4A467C829E70829C82AE43B79B97150D
|
||||||
|
B3522956F3F4C9B3030001DD87C3AE49C84CBCBC646640FCA5D29DF3A0B8A09D
|
||||||
|
09F62469E1C3A4B4D7F2EAF1A3DA834FA064DC2D2D8E4DB9984E63F922ED2A02
|
||||||
|
161DE04EE1EE13D4ED7CB090CB5CD9C6E1439978A3FE655189D50E52D37263CE
|
||||||
|
4486374725C5D2168DF6C88E2CE414ED02942400030246C6A7087149C5688DF0
|
||||||
|
7EC63EE0F38DB3C79974A8ECB70B7459649E0F64F17854767800C588D390830D
|
||||||
|
02172A19226F5E58D211DFEB9AF40DD5CFCB46E5DD0568AFECC6C43FFA470747
|
||||||
|
2CEBF420D2048072C57ED3CB2F846005F9D19CBD4E80C96882B9F16942D1DBA7
|
||||||
|
FBD15C2B960F77159355056AB919E0E3E24C17F9C58487E1737218966D429386
|
||||||
|
01F235CB8589854D87D3DCD0448613938D61669B89B1C1099552DEB9AA9B9790
|
||||||
|
E559D204FA99C5EBF78D0A0FB5D5ABA0BF6F0D7AA66CA1757CC4B862D808E9D6
|
||||||
|
9826C990236927D236A4B748AF92C6F6FF82243F890861AE817CC8001D6A0A74
|
||||||
|
2A478D1AFD7A926CC6FC058E20743BEDFA2F1ECC70B45A0CDA2614CB5AFDFAAD
|
||||||
|
BE19B3E828E51D009FCFE710C6F546ED680F473DFF3B7E70DAFCFEA8E5BFFA03
|
||||||
|
503A4EA60D6AAC070000000049454E44AE426082}
|
||||||
|
Name = 'PngImage6'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
61000000097048597300000AEB00000AEB01828B0D5A000002E44944415478DA
|
||||||
|
8D936B48D35118C6DFB379D9D4C9BC94A8CB399B38CC4B0E9C9A45427D8C5251
|
||||||
|
82FA2021B430F08398F4258650145A615642A12E4A31AF6565795958A69B685E
|
||||||
|
C7BCB4B92D9D3AA74E7771BAFD37FFFDA728E40A7CE0FDF6FC9E73DE877310FC
|
||||||
|
5FA850200CC22C90ECB06EB1EC76870347D8F88C6E7244D4F8D2B06FFA172910
|
||||||
|
082998BBD7154F8A079F11C5E0043002A8D64D2BA8A56AFDB2463BA8928F1537
|
||||||
|
BF2D1B21AC0E9780ECEC06323BCE9E17CE61DE4D4C8BA5812F0D996C00380EE0
|
||||||
|
81ECB0A25EC0FBDFF74C4B7E7CCAEDEEAC97B8041408849C906321BD97B24FFB
|
||||||
|
B36854A43221106B01ECCE007780203F1CCC2AE576BBF09DA8A6BA24C725A048
|
||||||
|
5053C43DCFBD9F98C4210523046A13C0D0320099BCBBF0360920D87B0BBE56B5
|
||||||
|
E8DA9AAAF8E8EFEB3FA2864705D65ECC4FCF30E2BE70BB54ECD28F542485D676
|
||||||
|
3E2C482458DDD327CF0E04087CC222597519059917566C34B8F358BC031C94A8
|
||||||
|
8B0F339241FBEB870FEA0FAE40CABFF5A23CEDF2B93C2A3302E9D611307D0002
|
||||||
|
29006EC4D529A4DD2ED6B61DF0A1B279A3F15559854B0739B9C5A92792799D29
|
||||||
|
5969D4650B05791200C31B804A74E046B831C061423E8B3757544FD509EFE5EF
|
||||||
|
077CBE76F208DD07DE0C7BC6F82FD3CFC430B95C0F162F9A64715091171981BF
|
||||||
|
0761224E5E5AD1E3DF1A3A8C2DB5CF2BA764FDA5680F0EA43B3E469D8A4B5AD5
|
||||||
|
1BA149130DCA35CA66283B1E67C6B2A97EA147C16AB1C2A27C0E9F1C1CD27FEF
|
||||||
|
AC6F968D8BCB097412755D8F0EF3F7F36962A7F2121D8B3218976E4287860632
|
||||||
|
83FDAC6269D3EB38272193E64B6761988DAC981E55A894B2BE75BD5644C00BC4
|
||||||
|
E0E867217738228597E06654C1F090010666DDA05B3E6159336DC4F76BAC3384
|
||||||
|
8968007C8971BE842D62D6C159C5DE5F109564E1F17403C8C64CD0AB26419F72
|
||||||
|
CAA2319AB3A4F3B62F7008A19BB9577F71613E52A7C3A04731B9AA339A6F0CCD
|
||||||
|
DB9A0E03EF04F0F9FC48DC626ED34D0D44AAB5BFD347E76CAD87859DFA0386D8
|
||||||
|
3FA68502A9830000000049454E44AE426082}
|
||||||
|
Name = 'PngImage7'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000E14944415478DA
|
||||||
|
63FCFFFF3F032580717019C0C8C8086787B4DDF8FFEBD76F869F3F7F33EC6C37
|
||||||
|
824BA05B88D300BF86CBFFA3A35419A6CFB8C870A0CF9C7403DC2BCFFD8F88D4
|
||||||
|
66983DEB34C3B12936C41910DA7E13EE6C100E0D37609837E7180358EC0708FF
|
||||||
|
6278B0218011A701FE8D57C0CEFEF68391E1DB770630FD1D88BF7C07E26F8C0C
|
||||||
|
6B17AE6178B1230CB7011E55E7FF836C86B9C23FC48661C9BC5D609B7F40F187
|
||||||
|
0331B80D400E03DDF85DFF3D039D1856CEDFCCF0706320E981A816BEF5BF8BBF
|
||||||
|
07D8D92F7786936E80BCFFFAFF30677F3C184B9C01E480616000007F3BB6E1E0
|
||||||
|
0AF3B40000000049454E44AE426082}
|
||||||
|
Name = 'PngImage8'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000714944415478DA
|
||||||
|
63FCFFFF3F03258071D4002A1B10DA7E13CC01897DFDFA83E1DBB71F60FAFBB7
|
||||||
|
9F0C9F3F7F03E3F7FBA219F11A1013A500E77FFCCCC8F0EA1D23C38BB74C0CCF
|
||||||
|
5E3131AC9E3397E1F7E914DC0684B4DDF88FCBE62F9FBF33FCF9F397E1FFF974
|
||||||
|
DC060C7C208E1A401E0000EFE473E127272ED00000000049454E44AE426082}
|
||||||
|
Name = 'PngImage9'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001C74944415478DA
|
||||||
|
A5934D4B5B411885CF5D9982288874EB0F306E5CBA9A646514E33536264AE456
|
||||||
|
5184528AE0424A043751FCC08228E24788894631D5D6D12C5C08EA2A74512AD8
|
||||||
|
E4070822EE44A3E255CC386F24264AAE5978609881B9E739EFCCBC571142E03D
|
||||||
|
5208A0284ADECDA08FB9E4342087EFF3C04124772F139C1790319614C3DCE456
|
||||||
|
B116E2D0EF11CF051502FCD7BA54F37A98C3E951110E70783A5584FC3C2E0155
|
||||||
|
0501DB534C34389F92DD9A342E7068DD2A96FC1CD296AE44F3EE470C019B934C
|
||||||
|
A8AE6CF2E29C9C3B6C5809EEC0EEA84194C7E212506508D8F8C144735B36D93F
|
||||||
|
232B69B72212DE43BDBD1A5BBFFFA1C7B7AF3C03424396C6B252F08714709184
|
||||||
|
F94311E22DEDD9E4C0FC0E9CEE1AFC8AC4505B5789E876025F867300D1694BFA
|
||||||
|
CCA49FCB1C046AD5B2C94B813D383E3D25334B0576778FF17524074047C8944D
|
||||||
|
A2B3BB3C36E8BA8E3BFD363DEEEF74DC5C5F2179718ED89F4B7C1B7B0520AD8E
|
||||||
|
3241C9F4B191F93A798943F90EBDE37900A4908F0987CB6A6826FD3D02FA260C
|
||||||
|
0024FF201374DBF9CCA767B7F28E4CF07C7F03409AF532411796319391747266
|
||||||
|
C2C77298651F240AFE4C53FD4CA4E48BA464FBD1CBD09ACCB29D132F5AF93D7A
|
||||||
|
04D7A238F0C903C3480000000049454E44AE426082}
|
||||||
|
Name = 'PngImage10'
|
||||||
|
Background = clWindow
|
||||||
|
end>
|
||||||
|
PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
|
||||||
|
Left = 371
|
||||||
|
Top = 104
|
||||||
|
Bitmap = {}
|
||||||
|
end
|
||||||
|
object PreviewLargeImageList: TPngImageList
|
||||||
|
Height = 24
|
||||||
|
Width = 24
|
||||||
|
PngImages = <
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
|
||||||
|
F80000000970485973000017120000171201679FD252000001894944415478DA
|
||||||
|
63FCFFFF3F032D01E3F0B4C0B1F2228AE0810E03467C8638545CF8BFBF5D1FAB
|
||||||
|
1A9C1604D9E980D97D93A6303CD851C088CFF007170E30DCDF9E4F7D0B408683
|
||||||
|
D481D450DD0298E1DF7EFE679831732A752D4036FCDBAF7F0C8BE64F27CF82AF
|
||||||
|
3FFE33CC9C3515C50274C3BF03E9D5CB66906E81BB9936C3E7EFFF18962D9E0E
|
||||||
|
B7009BE1DF7FFD67D8B26626E91658E96A022DF8CFB079CD0CB005B80CFFF693
|
||||||
|
8161DF66322CD055D160F80C0CA2035B663228183830E032FC0B50CDA9DDB348
|
||||||
|
B74041469DE1D3B77F0CE7F6CD06FBC028EFC47F1F6B430CC3BFFEF8C770F5F0
|
||||||
|
1CD22D10125265F8F0F53FC3BD9373E07100B2C44A4F1FC5F0AF400B1F9C9A4B
|
||||||
|
BA054CEC2A0C1F813E787B791E4A2A0259A222AF07371C64D19B4BF348B7E0F3
|
||||||
|
5F25A00FFE31FCBDB700231F802CE113D0061B0EC23F6ECD27DD82C79F1418FE
|
||||||
|
FE03721E2CC09A9341967C63D064F8018C0F901A922D78F04101C2C16101CC92
|
||||||
|
77BF34686701DC925B27C8B0005804C3003E0B4040C163C27F922CA02618B580
|
||||||
|
200000A0D9B0E00198A13A0000000049454E44AE426082}
|
||||||
|
Name = 'PngImage1'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
|
||||||
|
F80000000970485973000017120000171201679FD252000000FA4944415478DA
|
||||||
|
63FCFFFF3F032D01E3F0B680919111AF66878A0BFFF7B7EBE35544B60520C31F
|
||||||
|
5C38C0707F7B3EF52D00191E64A7C3D037690AF52D8019FEEDE77F861933A752
|
||||||
|
D70264C3BFFDFAC7B068FE74EA59806EF87720BD7AD90CEA5880CDF0EFBFFE33
|
||||||
|
6C593393720B7019FEED2703C3BECD145AE0587911A7E15F7EFC6738B57B16E5
|
||||||
|
3E30CA3BF1DFC7DA10C3F0AF3FFE315C3D3C873A7100B2C44A4F1FC5F0AF400B
|
||||||
|
1F9C9A4BBD5404B244455E0F6E38C8A23797E651371F802CE113D0061B0EC23F
|
||||||
|
6ECDA77E4E0659F28D4193E107303E181E2CA04D5904B2E4DD2F0DDA5900B7E4
|
||||||
|
D609DA5900020A1E13FE53640135C0A805040100D3AF21E00AC8E9BE00000000
|
||||||
|
49454E44AE426082}
|
||||||
|
Name = 'PngImage0'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
|
||||||
|
F80000000970485973000017120000171201679FD2520000012E4944415478DA
|
||||||
|
63FCFFFF3F032D01E3F0B6C0B1F2E2FF031D068CF80C20E440BC16D8955FF9FF
|
||||||
|
F5C7578673932C705A429105B6400BF2037518DA979FC469094516D8945DFD5F
|
||||||
|
10A40D66E3B284220BACCBAEFD2F0CD202B37FFDF9CFD0BBFA148625145A701D
|
||||||
|
688126D8F0EFBFFE337CFBF99F61C18E33289650648155E98DFF39FEEA70C3C1
|
||||||
|
F8D73F862D47CFC32DA1C802CBD29BFF533C55510CFFFE13E29B63972E822DA1
|
||||||
|
C8028B929BFFA39D55300CFFF69381E1CB8FFF0CA776CF62B8BF3D9F916C0BCC
|
||||||
|
4B6EFD0FB251C269F8831D0594F9C0ACF8F67F4F73799C86531C07A6C577FE3B
|
||||||
|
1AC8E2349C620B4C8AEEFEB7D496C66938152CB8F75F5F450AA7E1145B605C74
|
||||||
|
FFBF8A8C044EC329B6C0A8F0C1FFF73736E2349C620B0C0B1FFEBF30418176F5
|
||||||
|
0135C0A80504010058FB49E08BBA20470000000049454E44AE426082}
|
||||||
|
Name = 'PngImage3'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
|
||||||
|
F80000000970485973000017120000171201679FD252000001C24944415478DA
|
||||||
|
63FCFFFF3F032D01E3F0B4C0B1F2E2FF031D068CF834DA965D46D178A85307AB
|
||||||
|
7AAC16D8955FF9FFF5C7578673932C705A02B220D44113CCEE9B3485E1FEF67C
|
||||||
|
E22DB0055A901FA8C3D0BEFC244E4B28B2C0A6ECEAFF82206D301B9725145960
|
||||||
|
5D76ED7F61901698FDEBCF7F86DED5A7302CA1D082EB400B34C1867FFFF59FE1
|
||||||
|
DBCFFF0C0B769C41B10466C1D71FFF1966CE9A4A9A0556A537FEE7F8ABC30D07
|
||||||
|
E35FFF18B61C3D0FB7046481978506C3E7EFFF18962D9E4E9A0596A537FFA778
|
||||||
|
AAA218FEFD27C437C72E5D045B02B2C0565F0D68C17F86CD6B6690668145C9CD
|
||||||
|
FFD1CE2A18867FFBC9C0F0051824A776CF6290D5736630505365F80CE41FD832
|
||||||
|
93340BCC4B6EFD0FB251C269F8831D05601F28CBA9307CFAF68FE1DCBED9A459
|
||||||
|
60567CFBBFA7B93C4EC36171202AA2C4F0E1EB7F867B27E790668169F19DFF8E
|
||||||
|
06B2380D8759C0CAA9C8F011E883B797E791668149D1DDFF96DAD2380D8759F0
|
||||||
|
EDBF3CD007FF18FEDE5B40AA05F7FEEBAB48E1341C66C1B32FB20C7FFF01390F
|
||||||
|
48B4C0B8E8FE7F1519099C86C32C78FC4916C221D502A3C207FFDFDFD888D370
|
||||||
|
8A2D302C7CF8FFC2040582F5C1E34B7BE17C922CA02618B5802000000BFCA8E0
|
||||||
|
E6ADB53E0000000049454E44AE426082}
|
||||||
|
Name = 'PngImage2'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
|
||||||
|
F80000000970485973000017120000171201679FD252000002344944415478DA
|
||||||
|
63FCFFFF3F032D0123C882F02961F940F6042A9B5DB03267D5449805FFF30372
|
||||||
|
C832E51FC35F863FFF7E31FCFEF713887F41D9BF18526C0A19DEBF7ACF489105
|
||||||
|
7FFE430C86190AA3A74C5FC87069D965FC169CDBFF8D24CB642C5EC32D993173
|
||||||
|
397116E4C47AE035F4EFBFFF0CBFFFFC65B0F2CB63A89C680CF7C1DCD96B29B7
|
||||||
|
0066F89C957B18E62DDDC450DAAF0BF7C1C2B99B89B7A07EF27E9C9614275932
|
||||||
|
2C5A77006C4141AF3ADC07CBE6EF24DF073097FFFAFD87E1F7EFBF0CCB371F06
|
||||||
|
5B90D3AD08F7C1AA85FBA9E383CC48638635DB8F812D48ED9060F8FD1F62C1C6
|
||||||
|
C52748F701BACB21ECBF0C9BF69C045B90D02E04CF0FDB969EA78E0FA2FD7418
|
||||||
|
761D3A0BB620A695079ED9762FBF8ADF0250EEBCB0FF27D8825F409722BB18CE
|
||||||
|
868AEF3F7E016C4178332B3C0EF6AFBC8DDB0258D6BF72F03F435AA42B43EBF4
|
||||||
|
43387D10E8AAC670E4F465B005418DFFE1417464F523EC1620972B370FB33124
|
||||||
|
8638E174394CFCD4856B600BFCEA7FC283E8E4DA179816E40664A2145AF78EF2
|
||||||
|
30C404D8E3351CC43E7FF526D802F79AF7607D20FD17367CC2B420D32F19A544
|
||||||
|
7C745C8821CCDB06AFE120F6959B77C0163855BD84177C5736FDC0B420C93B12
|
||||||
|
A5447C794A9A21D0CD9261FDAEE30C8400C802DB8A4770BD37B7FCC3B420D633
|
||||||
|
18A5D87D7B4611AC915860597607ACF7DFFFBF0CB7B732625A10E9EE8BE20314
|
||||||
|
1AADDCC7C506190E02582D087175A78AE1382D087076045714D402E816E4EF6A
|
||||||
|
DA4DD54ADFADCE1551E9D31200008EE53CFED5D704CB0000000049454E44AE42
|
||||||
|
6082}
|
||||||
|
Name = 'PngImage5'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
|
||||||
|
F80000000970485973000017120000171201679FD252000003154944415478DA
|
||||||
|
B5956D48536114C7CFC89022883E288415547E48F243651451425A6A929361A2
|
||||||
|
0E13D14553985AA411944A5A4804622AE9AC25CBDCD0125F4B526CD87C2F75E8
|
||||||
|
544C83B23EE45829E6667AEFEEEDDE3377756D6B1BD98167CFB37BEEF9FFCE39
|
||||||
|
CF81CBA3691A783C1ED8B300F1043D28F5B3EF64ED50390D9A14877ED4667F62
|
||||||
|
4B633298FF45EB9D1FB579B8EFF7CF71A8CFBE33D8DF0931A20E7BEE2B3592DA
|
||||||
|
0716009D2190709EF43BDE902EF48562E5B45544F12D1DFAD65B5CC401C8CA96
|
||||||
|
425BFD4E20A8152099C5EE974E5D8539DD1CCF066011D7FDF400EF1D24279428
|
||||||
|
914177B39FD99FE08BCFBECC52603018F15C505803F5B55B51BCB44C0E238A51
|
||||||
|
5BC049FE04C88B4428CE9A716909F4FA1F60342E81EC5987154037E7012B0401
|
||||||
|
8B8B065CEC595AF91A140A0ACAA54AFB00D658C8FD7C3127AEFF6E0634B60E73
|
||||||
|
80E4A85D306FF0E4C4170D06A8AC56A1385B81EC519D7DC090CA5C6E5AE16748
|
||||||
|
BB1C0125152D56FD7E98B91764EA3D78B1164B8A0F42F1A7B907711A57F6F580
|
||||||
|
5CD6EC182049388781BCC352F3A80D8BED4E1045D1B029A002CFF36F13813499
|
||||||
|
20242E0BC4F77C40C1B4CA29C002B10760C54913059EC71E73E2CA66353CA96E
|
||||||
|
02518117D4CA55AE011C65CE8A13A4094892427182D95FB47623E0E2DD6DD058
|
||||||
|
D5E71C905BA202572C5578940199A0A1BD0F01B1F99BE155F5B0FB15B0D912A6
|
||||||
|
D5AC194182A902AB612B61CE2D6F061010759B8676E5987B007BE224D722F36A
|
||||||
|
530F22203277195435531BD7A278BE3FDE87AA578380F0EC05E87A3EE35A05AE
|
||||||
|
646EB96CF5BB11049CBDA987FEBA6FB68034412A6854CB1CC01D7176927A87C6
|
||||||
|
1010786306340D0BB680D44811683B6904B041F9659D2EB52832D817C7F4FDC8
|
||||||
|
04024E5C9F066DD32F5B40F279214C756D811461A85B9913ABEF69C63F20E068
|
||||||
|
E6384CB650B68084F00BF0A9673B2445075B055314E5549C7DAE9D9C46C0916B
|
||||||
|
A330F592670B1086F1E16B9F1724084E637071D5804B2D0A3ABE1B77A780E890
|
||||||
|
30981DF001213FD02AB3BF5D36C5C45ACC29407026083F141B657F0232DAF2DA
|
||||||
|
8BFE5D76CD427342D63EFAFFD37E031AD161FE86E3B8C60000000049454E44AE
|
||||||
|
426082}
|
||||||
|
Name = 'PngImage4'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
|
||||||
|
F8000000097048597300000AEB00000AEB01828B0D5A0000053A4944415478DA
|
||||||
|
AD956B50546518C79F73CE2ECB5ED9B3ECB22C48800A02CA45101BBCA005D9D4
|
||||||
|
4C17758C6FD57899FAE0D4871AB3CC6B5FD2748CA91877600AB3A949CA4427E3
|
||||||
|
A65C1409729565B92CEEB2807B935DD80BECB2B773F6F4420A5841493D33E7D3
|
||||||
|
7BDEDFEF39FFF799F760F058C5601F2BAB443E079B0C077DF250304086432117
|
||||||
|
CDC6AD3EA77FACAC6CAF77EAA5B93BB07F8B3EFD55A37872CC95C7E5725E6671
|
||||||
|
584F4570D871188E7182815068D2E3354E38DC17273C8E2B9DC33A4D735599E7
|
||||||
|
B10495E76FC63B6CCED7F8A4708F58267A429620C5C4B1628C601310F006C06E
|
||||||
|
1A656CF7ECA151B3ADDB366256EA07BB2EFEF4CD19FBF427FF13FCA4F29214A3
|
||||||
|
88BD9218F2CDB4DCA531B1F1122C40B0C11B02A0C37F74C822502A011F63EA37
|
||||||
|
33BACEBB8377BBD5A75B9B7EF956A3B9E15C50B063C77922AF20622B29979CC8
|
||||||
|
29484D4C7F428647E038DCF703BC70E826681A34F0F9B15720398F0452C0000F
|
||||||
|
0FC1B0C640AB9A3ABA55ED8DEFFD5C5D797541C1A7E5D5F2E024766C59CEB29D
|
||||||
|
F96B5388380E0BC351CFEE2040E187B3024516096C1680044958FE71467D4D1D
|
||||||
|
AAABAE52B65D6F38BAA0E0E8890B05B21871E5AAC28C94D8043926A601F80480
|
||||||
|
651260DB47B382F47C12BC14008ED6A2793458D4FDE196CBB53D576BBE7B635E
|
||||||
|
C1543C2B32A8ED4B33932A5617670929161F761EB9396F330F6519EB49A06C56
|
||||||
|
4655D3EA3A5B7162DF0282C3112969A9AFA7E7A794E61467478E072360FD66E5
|
||||||
|
CC7A6671E634746E4D0956AD2301BC4EE8ACFDD5AF2C3DF2C9BC824D9B0EB30A
|
||||||
|
3624EF589EBDBC3CB7389B1F2004A06A76CEAC2B5BFA66BA9E5B1B3693601DB6
|
||||||
|
30B7EB5B3D155F1C2B5DF00C0E1CAE2C8C8E8B399BFB744EA2302E16333B3020
|
||||||
|
D08E680EC09EE3B367B0BD98041A4D2A9A5AF08469E8EAE8635A2E5D19BCF07D
|
||||||
|
D9A90505EF1CA84814F1F92757ADCFDC96929F8A8F4DA2F9F7014421C1C62DCA
|
||||||
|
9958B622C154518866754E80A6454D55559EA96F69AA3E3EAF40B57FCB726D50
|
||||||
|
C0D2466DD9268D4F7C376B6396589A28C7EC1E0218344D7DEDB371BD84040CC6
|
||||||
|
80C31F64746A1DEABECE5873F9EBB33A9DFAB3BF15B41F78A690C7659A3D9152
|
||||||
|
D044AE8500AE08B1F83266C593692C91428A071836BA0470E0A2B1E4A10747E1
|
||||||
|
38C6BD8C65C014EEBCFE9BA3B1EEC7DAB6EB57CA298A6AFB8BA0637FF18B3C11
|
||||||
|
5D91B03A534684ECA0712583C61D0316271EE408E4DEA495295162B904E39242
|
||||||
|
60B1D998DFE367D04507F6210BD577476DBD73BBF9467B5BED799FC7D38470EE
|
||||||
|
47041D1F146D1788C22715B9EB92843C0A5CDA4EE8B708A163221E8C7E4269F3
|
||||||
|
B0FB2339FC2269AC224D1EAF904444B2591E97276C1A1A720E1B740383035DB7
|
||||||
|
7A7B54F5341DB88D702E987BD94D752E10D3A58ABC8D4922AE7F1A6E30B2C130
|
||||||
|
26048DD50A23E38EE7CBEB354D19196B93A3158A748C2696D1B43F0AC5002EF7
|
||||||
|
98C334ACEFF47ADD030835821EDF432EF630733E9FFA217ECD3A998817828981
|
||||||
|
2ED0E93130B824A0350D41B7590F6E7FF0B9BA2E67CD833DE8E6017410403CE0
|
||||||
|
4C4D68706A90E0CF3F1CD5C1E2A24801D1B0243707F85C149AF60E188609E877
|
||||||
|
4483D6A8875E8BDEE5F4516F35F6B8CEC1220AEB39FE2CB3247B25F0055C14CB
|
||||||
|
2D1834B2C0E010836678007AAD7ABBCB1B3C78AD775CB918F8B4A0FE5409B366
|
||||||
|
752A50860E1832A1CC4705A0351B416DEC7721F8FBD7FAC6CF2C163E2D38B4EF
|
||||||
|
6D2647781F12682F82F3A0CF6C821EF3008C7A03AF2E36964704BB77EF629688
|
||||||
|
F9407A6CE01CB987E006704FFA76D575BBBFFCAFF06941494949915020688811
|
||||||
|
F1E15E4F2BD82CFA5D63DDEE732A80D0FF21F81D69327688E78891A000000000
|
||||||
|
49454E44AE426082}
|
||||||
|
Name = 'PngImage7'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
|
||||||
|
F8000000097048597300000AEB00000AEB01828B0D5A000005234944415478DA
|
||||||
|
AD956B4C53671880DF7329BD9CB6B4A5174A454005112F205E16DCD46C3097ED
|
||||||
|
C7B2690CFFB665BAE80FB3FDD8E2DC8C739AFD984EE3C8326203D9702E5B069B
|
||||||
|
139D8E9B82283299454AB9147B81DA9BB4D00BB4F476DAB3AF80896E02D3ED24
|
||||||
|
5F4E4ECEF99EE7FDDEEF7DBF83C1135D0CF6B9BA4E18F2B0C4896848118B46C4
|
||||||
|
8958CC1767E1CE90373C5E59B92F98FCE8E119D8BF459FFAB6553435EE5BC7E5
|
||||||
|
B25F23D9E4F3296C56068663EC6824169B0A04AD931EFFF9C980E7728FC5A0BB
|
||||||
|
5657197822414DED4D95C7E57D93120BDE11C9848B6599524C942EC208160191
|
||||||
|
6004DCB631C675CF1D1BB3BBFA5CA376B571B8F7FCAFDF9F764F2F7921F809F5
|
||||||
|
05294613FB2472F1DEFCE225F27495048B102C08C600E2899908490265251262
|
||||||
|
6C4376C6D07377F86E9FF65447DBEF3FE87437BCF30A76EEAC25D695A4BC2E56
|
||||||
|
488E1795E465AD582CC353701CEE870106BD00D1F84C0E481C40CC678087C7C0
|
||||||
|
A233C7356D5D7D9A5BAD1F5EAAAFB932AFE0CBAA7A45740A3BBAB468E9DB1B36
|
||||||
|
E612196C12C311D11F05E81E07F044101F9B192C12408224647882D15ED5C69A
|
||||||
|
EAEBD49DD75B8ECC2B3872FC5C894C2EAA59B5A520373D53818950C41401E098
|
||||||
|
0218F2CD940B8F35B38A200D80A37769BC3838B44389F68B8DFD571A7EDC33A7
|
||||||
|
20999EE505F48E25ABB3ABD796AD11D024056EEFC2BBC6E502D02E27A369E8F0
|
||||||
|
9DA93EBE7F1EC1E194DCFCBCB7566CC8AD282A2BE44C445360EF6737E704EB5A
|
||||||
|
7470E9B73D4071D043D00B3D8D7F84D5159F7E31A760EBD6C364C973393B9715
|
||||||
|
2EAB2A2E2BA422041F4AB6AAE78D3E295009019C1607D3DDDC11A8FEFA68C5BC
|
||||||
|
0B3E78B8664B5A86FC4CF10B4559828C74ECBE77E1B6C9498D436FD720D37EE1
|
||||||
|
F2F0B99F2A4FCE3BE3FD83D559428A3AB1EAD9D5DB7337E4E1E353A8FE4300A9
|
||||||
|
6C00394A059B98ED83590A8DEE4EEF24E8DAB5745DCDE9E6F6B6FA63730A3407
|
||||||
|
B62DD347F9A43E75DB76A92AEB83359BD788A4590ACC1D208041D5244896650A
|
||||||
|
2A4FD4033896DC7C063CE12863D01A50F44DD6868BDF9D3118B45F3D5670EBE0
|
||||||
|
8B5B785CE65A8023051D67234470658CA464CCF267F249A1528A4718549B0C0E
|
||||||
|
5CB4021E1A3824C03311641C265BA2E7FA9F9ED6A65F1A3BAF5FAEA269BAF31F
|
||||||
|
82AE0365AFF284F1EACCB5AB6544CC0D3A5F0EE8FC727078F1289BAF0866AFCC
|
||||||
|
4D15292418572C0092C5C2C28130830E3A708F38E8C13B5AE79DEE6B376E7536
|
||||||
|
D68602813684F33F22E8FAB874075F9838A12CDE942DE0D1E0D3F7C09043005D
|
||||||
|
932AB08609B52BC01AE2B0A95269BA325FA1524A52382C32E00B246C23235E8B
|
||||||
|
D9601A36F5DE1EE8D734C7E3916E8443ADF850DB2423E78BE215CA759BB385DC
|
||||||
|
F034DC6C6581795C003AA71346273CAF5435EBDA0A0A36E6A429952BB038B134
|
||||||
|
1E0FA7A23480CF3FEEB1598C3DC1A0DF8450A368841E70B10739A728FA67D5FA
|
||||||
|
4D32212F0693A65E30183130FB24A0B78D409FDD08FE70F4E5A65E6FC3EC1CB4
|
||||||
|
C5903C2488590E3A57219A2C24F8FB0F4773A8AC94C3275A1615170185DADCAF
|
||||||
|
BF03660B01439E34D05B8D30E030FABC21FADDD67EDFD9059BE03117D67FEC25
|
||||||
|
6651E14AA0F85C9496DB306C25C1EC1181CE628201A7D1ED0B460F5D1D98503F
|
||||||
|
0D7C5AD07CB29C59BF360F6873178CD850CEC7F8A0B75B416B1DF221F8475707
|
||||||
|
274E3F2D7C5AF0C9FEF79822C17DC88C07119C0783761BF4DB4D30168CBCF1B4
|
||||||
|
697944B07BF72E6691880271C005DED17B086E06FF546857539FFF9BFF0A9F16
|
||||||
|
949797970AF8FC16B990827BFD1DE07218778DF7F9CF6A0062FF87E02F9F6855
|
||||||
|
88E7298D620000000049454E44AE426082}
|
||||||
|
Name = 'PngImage6'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
|
||||||
|
F80000000970485973000017120000171201679FD252000001324944415478DA
|
||||||
|
63FCFFFF3F032D0123DD2C606464C4A9C8A5EF22862BF614E9E3D480EC68A22D
|
||||||
|
C8F05765F8FDE72F10FF63888B5ECEC0702183BA16247B2B810DFF03B424297E
|
||||||
|
15F52D887357001B0EB2243D790DF52D887296051B0E0AA69CF4F5D4B720D45E
|
||||||
|
1A6CF89FBF7F190AB23651DF82006B09B0E1205F94E66D21DD02D7FE4B783384
|
||||||
|
8F85283C88AA8AB633B8C459E254BBBB508F11AB05C8491116A1B06081B1C172
|
||||||
|
28FCBF0CBF7E0331880DA4174F3ECBF0FF7C3A760B909322398683D82B675CC0
|
||||||
|
6D01725224C770107BFD9CCBB82DD8B3E838F6480686B7A52637DCF0DEC683F8
|
||||||
|
A20BBB05845291892A27DCE5935A8F503F99EA2BB2C1836546D771EA5BA025CB
|
||||||
|
0C0FE7797DA7A86F818A04034A52A4BA057222A84991EA1648F2FF42498A54B7
|
||||||
|
002309936A01ADC0D0B700000ADFCFE01EDA3C000000000049454E44AE426082}
|
||||||
|
Name = 'PngImage8'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
|
||||||
|
F80000000970485973000017120000171201679FD2520000007C4944415478DA
|
||||||
|
63FCFFFF3F032D01E3A805A3168C5A80B0C0B5FF12D56CDA5DA8C788D5829C20
|
||||||
|
751485BFFFFC65F8F1F30FC38F5FBF19BE83E89F501ACAFFF6E317C3B7EFBF21
|
||||||
|
F40F087D68CD3D86FFE7D3095B408EE13F7EFD6138B5E911610BC8351C04F05A
|
||||||
|
B067D171AAC401560B6805462D18B560D4023A5800007B57E2D1072B1BE80000
|
||||||
|
000049454E44AE426082}
|
||||||
|
Name = 'PngImage9'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
|
||||||
|
F80000000970485973000017120000171201679FD252000002E84944415478DA
|
||||||
|
A5957D48144118C69F2B29B3FA23222C02598AA48F3B4A304A839C120C925022
|
||||||
|
4AA2F2B3B313FB80A0C20E333F52FC2348C24AC49490D4C414394D4D4F33112B
|
||||||
|
C1F0233090C9D0142BA920AFDA73DAD975E5923BDDB5178679776EEFF9CD3CF3
|
||||||
|
CEAC8131061E0683010B457126392175D699C7CC186B6BB9BBF7544D595727A0
|
||||||
|
373A21D238D8DF83CE4EDA27014CFF0D5067BD7C198CD3D3C0C9984870404707
|
||||||
|
057FF6F242DFDCD5E805CCCEFA5517C5A93805D0DE4E117F4EC9E7AE4617E071
|
||||||
|
2E615167668520C1E4BCAD8DE26C929237355124E7B41A160528CD21CCD59658
|
||||||
|
B392DBED1489C94ADED048B1CA0758B254B12BFABABD5C33E0D12DC2DCD9D2DC
|
||||||
|
4C61B9A0E4F5CF284E4707E3F3F8A86C9704306906487BC03CD992743102EF07
|
||||||
|
DEC2564761B61CC4C8872154D7505CB96337680614A513E6C9164B72388606FB
|
||||||
|
516B93C0E6FD181B19465535C5B53C1D80C234C23CD992981486E1A141D4D44A
|
||||||
|
D6252816555651A4DCD5012848254C8B2DB171BB31F96502159514D67C378092
|
||||||
|
AC03EA356094DA6C5DDFB712A6DAF2E923C5BED07088E21F74B5352260AF620B
|
||||||
|
1FF73706E0C7B749943DA148BDE71E201F289EAB1B6A4E6F35E4A710C66DE1EF
|
||||||
|
BD68A8C19E9030389D22DEBC6C812930184E0936D0F31A9BB79AE4F1E29277B8
|
||||||
|
F1C03D40AE163554CFF975C06D718AA23C732EA2E4A22CAEF4A23CFECB3185D2
|
||||||
|
328A9B051E5610142418FD77ECFA07A2568B1671DE2AAAC69151E86193F98686
|
||||||
|
84085021FC37AD3397DBD4149EDABE23AB689E2AE29E87860AD8B27DA76E7187
|
||||||
|
E3276CCF45643F5CA04CF3AE1276284C80DF267F5DE27CBCBE05C829D1700E6E
|
||||||
|
5F262CFCB080F51BFD348B8F8E39F05BF4764877D10A4D072DF71261114704AC
|
||||||
|
59BB6E41711E9DDDC0065F44E9BA4DB3CF1376345280CFCAD5F38AABB397D240
|
||||||
|
09D0AF19C023C342D8F163829C7B12EFEEF586691BA2F8A773511FFD34B3B492
|
||||||
|
085F7C9D1897055DC3555C2D6FDD001ED678C2F8C99E96FEC2783F93BB8ACF05
|
||||||
|
FC0592430CFE3F77C7A70000000049454E44AE426082}
|
||||||
|
Name = 'PngImage10'
|
||||||
|
Background = clWindow
|
||||||
|
end>
|
||||||
|
PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
|
||||||
|
Left = 403
|
||||||
|
Top = 104
|
||||||
|
Bitmap = {}
|
||||||
|
end
|
||||||
|
object frxReport1: TfrxReport
|
||||||
|
Version = '3.23.7'
|
||||||
|
DotMatrixReport = False
|
||||||
|
EngineOptions.DoublePass = True
|
||||||
|
IniFile = '\Software\Fast Reports'
|
||||||
|
PreviewOptions.Buttons = [pbPrint, pbLoad, pbSave, pbExport, pbZoom, pbFind, pbOutline, pbPageSetup, pbTools, pbEdit, pbNavigator]
|
||||||
|
PreviewOptions.Zoom = 1.000000000000000000
|
||||||
|
PrintOptions.Printer = 'Default'
|
||||||
|
ReportOptions.CreateDate = 38658.858023541660000000
|
||||||
|
ReportOptions.LastChange = 38658.858023541660000000
|
||||||
|
ScriptLanguage = 'PascalScript'
|
||||||
|
ScriptText.Strings = (
|
||||||
|
'begin'
|
||||||
|
''
|
||||||
|
'end.')
|
||||||
|
StoreInDFM = False
|
||||||
|
Left = 16
|
||||||
|
Top = 200
|
||||||
|
Datasets = <>
|
||||||
|
Variables = <>
|
||||||
|
Style = <>
|
||||||
|
end
|
||||||
|
object frxBarCodeObject1: TfrxBarCodeObject
|
||||||
|
Left = 16
|
||||||
|
Top = 240
|
||||||
|
end
|
||||||
|
object frxOLEObject1: TfrxOLEObject
|
||||||
|
Left = 48
|
||||||
|
Top = 240
|
||||||
|
end
|
||||||
|
object frxRichObject1: TfrxRichObject
|
||||||
|
Left = 48
|
||||||
|
Top = 272
|
||||||
|
end
|
||||||
|
object frxCrossObject1: TfrxCrossObject
|
||||||
|
Left = 80
|
||||||
|
Top = 240
|
||||||
|
end
|
||||||
|
object frxCheckBoxObject1: TfrxCheckBoxObject
|
||||||
|
Left = 80
|
||||||
|
Top = 272
|
||||||
|
end
|
||||||
|
object frxGradientObject1: TfrxGradientObject
|
||||||
|
Left = 16
|
||||||
|
Top = 304
|
||||||
|
end
|
||||||
|
object frxDotMatrixExport1: TfrxDotMatrixExport
|
||||||
|
UseFileCache = True
|
||||||
|
ShowProgress = True
|
||||||
|
EscModel = 0
|
||||||
|
GraphicFrames = False
|
||||||
|
SaveToFile = False
|
||||||
|
UseIniSettings = True
|
||||||
|
Left = 48
|
||||||
|
Top = 304
|
||||||
|
end
|
||||||
|
object frxDialogControls1: TfrxDialogControls
|
||||||
|
Left = 80
|
||||||
|
Top = 304
|
||||||
|
end
|
||||||
|
object frxTIFFExport1: TfrxTIFFExport
|
||||||
|
ShowDialog = False
|
||||||
|
UseFileCache = True
|
||||||
|
ShowProgress = True
|
||||||
|
Monochrome = True
|
||||||
|
Left = 144
|
||||||
|
Top = 240
|
||||||
|
end
|
||||||
|
object frxPDFExport1: TfrxPDFExport
|
||||||
|
ShowDialog = False
|
||||||
|
UseFileCache = True
|
||||||
|
ShowProgress = True
|
||||||
|
PrintOptimized = False
|
||||||
|
Outline = False
|
||||||
|
Author = 'FastReport'#174
|
||||||
|
Subject = 'FastReport'#174' PDF export'
|
||||||
|
Background = False
|
||||||
|
Creator = 'FastReport'#174' (http://www.fast-report.com)'
|
||||||
|
HTMLTags = False
|
||||||
|
Left = 144
|
||||||
|
Top = 280
|
||||||
|
end
|
||||||
|
object frxBMPExport1: TfrxBMPExport
|
||||||
|
ShowDialog = False
|
||||||
|
UseFileCache = True
|
||||||
|
ShowProgress = True
|
||||||
|
Monochrome = True
|
||||||
|
Left = 144
|
||||||
|
Top = 320
|
||||||
|
end
|
||||||
|
end
|
||||||
353
Source/GUIBase/uEditorPreview.pas
Normal file
353
Source/GUIBase/uEditorPreview.pas
Normal file
@ -0,0 +1,353 @@
|
|||||||
|
unit uEditorPreview;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uEditorBase, ImgList, PngImageList, StdActns, ActnList, TBX,
|
||||||
|
TB2Item, TB2Dock, TB2Toolbar, JvExControls, JvComponent, JvNavigationPane,
|
||||||
|
TB2ExtItems, TBXExtItems, uViewPreview, frxClass, ComCtrls, frxPreview,
|
||||||
|
JvFormAutoSize, JvAppStorage, JvAppRegistryStorage, JvFormPlacement,
|
||||||
|
pngimage, frxExportImage, frxExportPDF, frxDCtrl, frxDMPExport,
|
||||||
|
frxGradient, frxChBox, frxCross, frxRich, frxOLE, frxBarcode,
|
||||||
|
ExtCtrls, JvComponentBase, TBXStatusBars, JvExComCtrls, JvStatusBar;
|
||||||
|
|
||||||
|
type
|
||||||
|
IEditorPreview = interface(IEditorBase)
|
||||||
|
['{43934C3E-2776-4F9E-9292-FB0D7DE2E4DA}']
|
||||||
|
function GetReport: TfrxReport;
|
||||||
|
property Report: TfrxReport read GetReport;
|
||||||
|
procedure LoadFromStream(AStream : TStream);
|
||||||
|
function ExportToFile : String;
|
||||||
|
procedure Print;
|
||||||
|
procedure Preview;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfEditorPreview = class(TfEditorBase, IEditorPreview)
|
||||||
|
TBXToolbar1: TTBXToolbar;
|
||||||
|
TBXItem33: TTBXItem;
|
||||||
|
TBXItem34: TTBXItem;
|
||||||
|
TBXItem39: TTBXItem;
|
||||||
|
TBXSeparatorItem16: TTBXSeparatorItem;
|
||||||
|
cbZoom: TTBXComboBoxItem;
|
||||||
|
PreviewActionList: TActionList;
|
||||||
|
PreviewSmallImageList: TPngImageList;
|
||||||
|
PreviewLargeImageList: TPngImageList;
|
||||||
|
actPrimeraPagina: TAction;
|
||||||
|
actUltimaPagina: TAction;
|
||||||
|
actPaginaAnterior: TAction;
|
||||||
|
actPaginaSiguiente: TAction;
|
||||||
|
TBXItem36: TTBXItem;
|
||||||
|
actZoomIn: TAction;
|
||||||
|
actZoomOut: TAction;
|
||||||
|
actTodaPagina: TAction;
|
||||||
|
actAnchoPagina: TAction;
|
||||||
|
TBXSeparatorItem17: TTBXSeparatorItem;
|
||||||
|
TBXItem37: TTBXItem;
|
||||||
|
TBXItem40: TTBXItem;
|
||||||
|
TBXItem41: TTBXItem;
|
||||||
|
TBXItem42: TTBXItem;
|
||||||
|
frxReport1: TfrxReport;
|
||||||
|
actToolHand: TAction;
|
||||||
|
actToolZoom: TAction;
|
||||||
|
tbxZoom: TTBXItem;
|
||||||
|
tbxMano: TTBXItem;
|
||||||
|
TBXSeparatorItem18: TTBXSeparatorItem;
|
||||||
|
frxBarCodeObject1: TfrxBarCodeObject;
|
||||||
|
frxOLEObject1: TfrxOLEObject;
|
||||||
|
frxRichObject1: TfrxRichObject;
|
||||||
|
frxCrossObject1: TfrxCrossObject;
|
||||||
|
frxCheckBoxObject1: TfrxCheckBoxObject;
|
||||||
|
frxGradientObject1: TfrxGradientObject;
|
||||||
|
frxDotMatrixExport1: TfrxDotMatrixExport;
|
||||||
|
frxDialogControls1: TfrxDialogControls;
|
||||||
|
frxTIFFExport1: TfrxTIFFExport;
|
||||||
|
frxPDFExport1: TfrxPDFExport;
|
||||||
|
frxBMPExport1: TfrxBMPExport;
|
||||||
|
TBXItem38: TTBXItem;
|
||||||
|
TBXSeparatorItem19: TTBXSeparatorItem;
|
||||||
|
TBXItem43: TTBXItem;
|
||||||
|
TBXItem44: TTBXItem;
|
||||||
|
TBXItem45: TTBXItem;
|
||||||
|
TBXItem46: TTBXItem;
|
||||||
|
TBXItem47: TTBXItem;
|
||||||
|
TBXSubmenuItem2: TTBXSubmenuItem;
|
||||||
|
TBXItem48: TTBXItem;
|
||||||
|
TBXSubmenuItem3: TTBXSubmenuItem;
|
||||||
|
TBXItem49: TTBXItem;
|
||||||
|
TBXItem50: TTBXItem;
|
||||||
|
TBXItem7: TTBXItem;
|
||||||
|
TBXItem35: TTBXItem;
|
||||||
|
procedure FormShow(Sender: TObject);
|
||||||
|
procedure actPrimeraPaginaExecute(Sender: TObject);
|
||||||
|
procedure actUltimaPaginaExecute(Sender: TObject);
|
||||||
|
procedure actPaginaAnteriorExecute(Sender: TObject);
|
||||||
|
procedure actPaginaSiguienteExecute(Sender: TObject);
|
||||||
|
procedure actZoomInExecute(Sender: TObject);
|
||||||
|
procedure actTodaPaginaExecute(Sender: TObject);
|
||||||
|
procedure FormDestroy(Sender: TObject);
|
||||||
|
procedure FormResize(Sender: TObject);
|
||||||
|
procedure actImprimirExecute(Sender: TObject);
|
||||||
|
procedure actAnchoPaginaExecute(Sender: TObject);
|
||||||
|
procedure actZoomOutExecute(Sender: TObject);
|
||||||
|
procedure cbZoomItemClick(Sender: TObject);
|
||||||
|
procedure actToolHandExecute(Sender: TObject);
|
||||||
|
procedure actToolZoomExecute(Sender: TObject);
|
||||||
|
procedure actPaginaSiguienteUpdate(Sender: TObject);
|
||||||
|
procedure actUltimaPaginaUpdate(Sender: TObject);
|
||||||
|
procedure actPrimeraPaginaUpdate(Sender: TObject);
|
||||||
|
procedure actPaginaAnteriorUpdate(Sender: TObject);
|
||||||
|
private
|
||||||
|
FPreview : TfrViewPreview;
|
||||||
|
procedure OnPageChanged(Sender: TfrxPreview; PageNo: Integer);
|
||||||
|
procedure UpdateZoom;
|
||||||
|
protected
|
||||||
|
function GetReport: TfrxReport; virtual;
|
||||||
|
public
|
||||||
|
constructor Create(AOwner: TComponent); override;
|
||||||
|
property Report: TfrxReport read GetReport;
|
||||||
|
procedure Print;
|
||||||
|
procedure Preview;
|
||||||
|
procedure LoadFromStream(AStream : TStream);
|
||||||
|
function ExportToFile : String;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
frxRes, frxUtils, frxPrinter, frxFormUtils,
|
||||||
|
uCustomEditor, uSistemaFunc;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
{ TfEditorBase1 }
|
||||||
|
|
||||||
|
function TfEditorPreview.GetReport: TfrxReport;
|
||||||
|
begin
|
||||||
|
Result := frxReport1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TfEditorPreview.FormShow(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
UpdateZoom;
|
||||||
|
actPrimeraPagina.Execute;
|
||||||
|
FPreview.ShowEmbedded(Self);
|
||||||
|
Report.ShowPreparedReport;
|
||||||
|
actAnchoPagina.Execute;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actPrimeraPaginaExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FPreview.Preview.First;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actPrimeraPaginaUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := (FPreview.Preview.PageNo > 1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actUltimaPaginaExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FPreview.Preview.Last;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actUltimaPaginaUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := (FPreview.Preview.PageNo < FPreview.Preview.PageCount);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actPaginaAnteriorExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FPreview.Preview.Prior;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actPaginaAnteriorUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := (FPreview.Preview.PageNo > 1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actPaginaSiguienteExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FPreview.Preview.Next;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actPaginaSiguienteUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := (FPreview.Preview.PageNo < FPreview.Preview.PageCount);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actZoomInExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FPreview.Preview.Zoom := FPreview.Preview.Zoom + 0.25;
|
||||||
|
UpdateZoom;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.UpdateZoom;
|
||||||
|
begin
|
||||||
|
cbZoom.Text := IntToStr(Round(FPreview.Preview.Zoom * 100)) + '%';
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actTodaPaginaExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FPreview.Preview.ZoomMode := zmWholePage;
|
||||||
|
UpdateZoom;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.FormDestroy(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FPreview.Free;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.FormResize(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
UpdateZoom;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actImprimirExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
Print;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actAnchoPaginaExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FPreview.Preview.ZoomMode := zmPageWidth;
|
||||||
|
UpdateZoom;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actZoomOutExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FPreview.Preview.Zoom := FPreview.Preview.Zoom - 0.25;
|
||||||
|
UpdateZoom;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.cbZoomItemClick(Sender: TObject);
|
||||||
|
var
|
||||||
|
s: String;
|
||||||
|
begin
|
||||||
|
FPreview.Preview.SetFocus;
|
||||||
|
|
||||||
|
if cbZoom.ItemIndex = 6 then
|
||||||
|
actAnchoPagina.Execute
|
||||||
|
else if cbZoom.ItemIndex = 7 then
|
||||||
|
actTodaPagina.Execute
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
s := cbZoom.Text;
|
||||||
|
|
||||||
|
if Pos('%', s) <> 0 then
|
||||||
|
s[Pos('%', s)] := ' ';
|
||||||
|
while Pos(' ', s) <> 0 do
|
||||||
|
Delete(s, Pos(' ', s), 1);
|
||||||
|
|
||||||
|
if s <> '' then
|
||||||
|
FPreview.Preview.Zoom := frxStrToFloat(s) / 100;
|
||||||
|
end;
|
||||||
|
|
||||||
|
UpdateZoom;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actToolHandExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if tbxMano.Checked then
|
||||||
|
FPreview.Preview.Tool := ptHand
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.actToolZoomExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if tbxZoom.Checked then
|
||||||
|
FPreview.Preview.Tool := ptZoom;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.OnPageChanged(Sender: TfrxPreview;
|
||||||
|
PageNo: Integer);
|
||||||
|
begin
|
||||||
|
StatusBar.Panels[0].Text := Format(frxResources.Get('clPageOf'),
|
||||||
|
[PageNo, Sender.PageCount]);
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TfEditorPreview.Create(AOwner: TComponent);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
|
||||||
|
with cbZoom.Strings do
|
||||||
|
begin
|
||||||
|
Clear;
|
||||||
|
Add('25%');
|
||||||
|
Add('50%');
|
||||||
|
Add('75%');
|
||||||
|
Add('100%');
|
||||||
|
Add('150%');
|
||||||
|
Add('200%');
|
||||||
|
Add(frxResources.Get('zmPageWidth'));
|
||||||
|
Add(frxResources.Get('zmWholePage'));
|
||||||
|
end;
|
||||||
|
|
||||||
|
FPreview := TfrViewPreview.Create(Self);
|
||||||
|
Report.Preview := FPreview.Preview;
|
||||||
|
FPreview.Preview.OnPageChanged := OnPageChanged;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.Preview;
|
||||||
|
begin
|
||||||
|
Self.ShowModal;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.Print;
|
||||||
|
begin
|
||||||
|
if not frxPrinters.HasPhysicalPrinters then
|
||||||
|
frxErrorMsg(frxResources.Get('clNoPrinters'))
|
||||||
|
else
|
||||||
|
FPreview.Preview.Print;
|
||||||
|
Enabled := True;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfEditorPreview.ExportToFile: String;
|
||||||
|
var
|
||||||
|
AFile : String;
|
||||||
|
begin
|
||||||
|
Result := '';
|
||||||
|
AFile := DarFicheroTIFFTemporal;
|
||||||
|
frxTIFFExport1.SeparateFiles := False;
|
||||||
|
frxTIFFExport1.DefaultPath := ExtractFilePath(AFile);
|
||||||
|
frxTIFFExport1.FileName := ExtractFileName(AFile);
|
||||||
|
try
|
||||||
|
if Report.Export(frxTIFFExport1) then
|
||||||
|
Result := AFile;
|
||||||
|
finally
|
||||||
|
frxTIFFExport1.DefaultPath := '';
|
||||||
|
frxTIFFExport1.FileName := '';
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfEditorPreview.LoadFromStream(AStream: TStream);
|
||||||
|
begin
|
||||||
|
Report.PreviewPages.LoadFromStream(AStream);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
initialization
|
||||||
|
RegisterClass(TfEditorPreview);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
UnRegisterClass(TfEditorPreview);
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
108
Source/GUIBase/uEditorUtils.pas
Normal file
108
Source/GUIBase/uEditorUtils.pas
Normal file
@ -0,0 +1,108 @@
|
|||||||
|
unit uEditorUtils;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
uEditorItem, uDADataTable, Controls;
|
||||||
|
|
||||||
|
type
|
||||||
|
TFuncItemEditor = function(ABizObject : TDADataTableRules) : TModalResult;
|
||||||
|
TProcItemEditor = procedure(ABizObject : TDADataTableRules);
|
||||||
|
TFuncGetEditor = function : IEditorItem;
|
||||||
|
|
||||||
|
TEditorType = (etItem, etItems, etSelectItems);
|
||||||
|
|
||||||
|
procedure RegisterEditor(const IID : TGUID; const AFuncItemEditor : TFuncItemEditor;
|
||||||
|
const AType : TEditorType);
|
||||||
|
|
||||||
|
function ShowEditor(const IID : TGUID; ABizObject : TDADataTableRules;
|
||||||
|
const AType : TEditorType) : TModalResult;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
Dialogs, Classes, ComObj, SysUtils;
|
||||||
|
|
||||||
|
var
|
||||||
|
FBizEditorsList : TList;
|
||||||
|
|
||||||
|
type
|
||||||
|
PBizEditorsRec = ^TBizEditorsRec;
|
||||||
|
TBizEditorsRec = record
|
||||||
|
IID : String;
|
||||||
|
ItemEditor : TFuncItemEditor;
|
||||||
|
ItemsEditor : TFuncItemEditor;
|
||||||
|
SelectItemsEditor : TFuncItemEditor;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
function FindBizEditors(const IID : TGUID) : PBizEditorsRec;
|
||||||
|
var
|
||||||
|
P: PBizEditorsRec;
|
||||||
|
I: Integer;
|
||||||
|
AIID : String;
|
||||||
|
begin
|
||||||
|
Result := NIL;
|
||||||
|
AIID := GUIDToString(IID);
|
||||||
|
if FBizEditorsList <> nil then
|
||||||
|
for I := 0 to FBizEditorsList.Count-1 do
|
||||||
|
begin
|
||||||
|
P := FBizEditorsList[I];
|
||||||
|
if (AIID = P^.IID) then
|
||||||
|
begin
|
||||||
|
Result := P;
|
||||||
|
Break;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure RegisterEditor(const IID : TGUID; const AFuncItemEditor : TFuncItemEditor;
|
||||||
|
const AType : TEditorType);
|
||||||
|
var
|
||||||
|
P: PBizEditorsRec;
|
||||||
|
begin
|
||||||
|
P := NIL;
|
||||||
|
if FBizEditorsList = nil then
|
||||||
|
FBizEditorsList := TList.Create;
|
||||||
|
|
||||||
|
P := FindBizEditors(IID);
|
||||||
|
if not Assigned(P) then
|
||||||
|
New(P);
|
||||||
|
try
|
||||||
|
P^.IID := GUIDToString(IID);
|
||||||
|
case AType of
|
||||||
|
etItem : P^.ItemEditor := AFuncItemEditor;
|
||||||
|
etItems : P^.ItemsEditor := AFuncItemEditor;
|
||||||
|
etSelectItems : P^.SelectItemsEditor := AFuncItemEditor;
|
||||||
|
end;
|
||||||
|
FBizEditorsList.Insert(0, P);
|
||||||
|
except
|
||||||
|
on E: EConvertError do
|
||||||
|
ShowMessage(E.Message);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function ShowEditor(const IID : TGUID; ABizObject : TDADataTableRules;
|
||||||
|
const AType : TEditorType) : TModalResult;
|
||||||
|
var
|
||||||
|
P: PBizEditorsRec;
|
||||||
|
begin
|
||||||
|
P := FindBizEditors(IID);
|
||||||
|
|
||||||
|
if Assigned(P) then
|
||||||
|
case AType of
|
||||||
|
etItem : Result := P.ItemEditor(ABizObject);
|
||||||
|
etItems : Result := P.ItemsEditor(ABizObject);
|
||||||
|
etSelectItems : Result := P.SelectItemsEditor(ABizObject);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
initialization
|
||||||
|
FBizEditorsList := TList.Create;
|
||||||
|
|
||||||
|
finalization
|
||||||
|
FBizEditorsList.Free;
|
||||||
|
|
||||||
|
end.
|
||||||
65
Source/GUIBase/uViewBarraSeleccion.dfm
Normal file
65
Source/GUIBase/uViewBarraSeleccion.dfm
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
inherited frViewBarraSeleccion: TfrViewBarraSeleccion
|
||||||
|
Width = 451
|
||||||
|
Height = 49
|
||||||
|
Align = alBottom
|
||||||
|
ExplicitWidth = 451
|
||||||
|
ExplicitHeight = 49
|
||||||
|
object JvFooter1: TJvFooter
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 451
|
||||||
|
Height = 49
|
||||||
|
Margins.Left = 5
|
||||||
|
Margins.Right = 5
|
||||||
|
Align = alClient
|
||||||
|
DesignSize = (
|
||||||
|
451
|
||||||
|
49)
|
||||||
|
object bSeleccionar: TJvFooterBtn
|
||||||
|
Left = 239
|
||||||
|
Top = 10
|
||||||
|
Width = 100
|
||||||
|
Height = 29
|
||||||
|
Action = actSeleccionar
|
||||||
|
Anchors = [akRight, akBottom]
|
||||||
|
Default = True
|
||||||
|
ModalResult = 1
|
||||||
|
TabOrder = 0
|
||||||
|
HotTrackFont.Charset = DEFAULT_CHARSET
|
||||||
|
HotTrackFont.Color = clWindowText
|
||||||
|
HotTrackFont.Height = -11
|
||||||
|
HotTrackFont.Name = 'Tahoma'
|
||||||
|
HotTrackFont.Style = []
|
||||||
|
ButtonIndex = 0
|
||||||
|
SpaceInterval = 6
|
||||||
|
end
|
||||||
|
object bCancelar: TJvFooterBtn
|
||||||
|
Left = 343
|
||||||
|
Top = 10
|
||||||
|
Width = 100
|
||||||
|
Height = 28
|
||||||
|
Action = actCancelar
|
||||||
|
Anchors = [akRight, akBottom]
|
||||||
|
Cancel = True
|
||||||
|
ModalResult = 2
|
||||||
|
TabOrder = 1
|
||||||
|
HotTrackFont.Charset = DEFAULT_CHARSET
|
||||||
|
HotTrackFont.Color = clWindowText
|
||||||
|
HotTrackFont.Height = -11
|
||||||
|
HotTrackFont.Name = 'Tahoma'
|
||||||
|
HotTrackFont.Style = []
|
||||||
|
ButtonIndex = 1
|
||||||
|
SpaceInterval = 6
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object BarraSeleccionActionList: TActionList
|
||||||
|
Left = 12
|
||||||
|
Top = 3
|
||||||
|
object actSeleccionar: TAction
|
||||||
|
Caption = 'Seleccionar'
|
||||||
|
end
|
||||||
|
object actCancelar: TAction
|
||||||
|
Caption = 'Cancelar'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
28
Source/GUIBase/uViewBarraSeleccion.pas
Normal file
28
Source/GUIBase/uViewBarraSeleccion.pas
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
unit uViewBarraSeleccion;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, StdCtrls, ActnList, ExtCtrls, JvExStdCtrls, JvButton,
|
||||||
|
JvCtrls, JvFooter, JvExExtCtrls, JvComponent, JvExtComponent;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfrViewBarraSeleccion = class(TfrViewBase)
|
||||||
|
JvFooter1: TJvFooter;
|
||||||
|
bSeleccionar: TJvFooterBtn;
|
||||||
|
bCancelar: TJvFooterBtn;
|
||||||
|
BarraSeleccionActionList: TActionList;
|
||||||
|
actSeleccionar: TAction;
|
||||||
|
actCancelar: TAction;
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
end.
|
||||||
14
Source/GUIBase/uViewBase.dfm
Normal file
14
Source/GUIBase/uViewBase.dfm
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
object frViewBase: TfrViewBase
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 445
|
||||||
|
Height = 291
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = []
|
||||||
|
ParentFont = False
|
||||||
|
TabOrder = 0
|
||||||
|
ReadOnly = False
|
||||||
|
end
|
||||||
56
Source/GUIBase/uViewBase.pas
Normal file
56
Source/GUIBase/uViewBase.pas
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
unit uViewBase;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uGUIBase, uCustomView, JvComponent, JvFormAutoSize;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewBase = interface(ICustomView)
|
||||||
|
['{82FBDF28-9C5F-4922-952E-0E84D67FE4BB}']
|
||||||
|
procedure Refresh;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfrViewBase = class(TCustomView, IViewBase)
|
||||||
|
protected
|
||||||
|
procedure SetReadOnly(Value: Boolean); override;
|
||||||
|
|
||||||
|
public
|
||||||
|
procedure Refresh; virtual;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|
||||||
|
uses
|
||||||
|
cxDBEdit, cxControls, dxLayoutControl;
|
||||||
|
|
||||||
|
{ TfrViewBase }
|
||||||
|
|
||||||
|
procedure TfrViewBase.Refresh;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewBase.SetReadOnly(Value: Boolean);
|
||||||
|
var
|
||||||
|
i: integer;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
|
||||||
|
if ReadOnly then
|
||||||
|
for i:=0 to Self.ComponentCount-1 do
|
||||||
|
begin
|
||||||
|
If (Self.Components[i] Is TfrViewBase) then
|
||||||
|
(Self.Components[i] as TfrViewBase).ReadOnly := ReadOnly;
|
||||||
|
|
||||||
|
If (Self.Components[i] Is TcxControl)
|
||||||
|
and (not (Self.Components[i] Is TdxLayoutControl)) then
|
||||||
|
(Self.Components[i] as TcxControl).Enabled := not ReadOnly;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
716
Source/GUIBase/uViewDetallesBase.dfm
Normal file
716
Source/GUIBase/uViewDetallesBase.dfm
Normal file
@ -0,0 +1,716 @@
|
|||||||
|
inherited frViewDetallesBase: TfrViewDetallesBase
|
||||||
|
Width = 451
|
||||||
|
Height = 304
|
||||||
|
Align = alClient
|
||||||
|
OnCreate = CustomViewCreate
|
||||||
|
OnDestroy = CustomViewDestroy
|
||||||
|
ExplicitWidth = 451
|
||||||
|
ExplicitHeight = 304
|
||||||
|
object ToolBar1: TToolBar
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 451
|
||||||
|
Height = 46
|
||||||
|
AutoSize = True
|
||||||
|
ButtonWidth = 63
|
||||||
|
Caption = 'ToolBar1'
|
||||||
|
EdgeInner = esNone
|
||||||
|
EdgeOuter = esNone
|
||||||
|
Flat = False
|
||||||
|
Images = ContenidoImageList
|
||||||
|
List = True
|
||||||
|
ParentShowHint = False
|
||||||
|
ShowCaptions = True
|
||||||
|
ShowHint = True
|
||||||
|
TabOrder = 0
|
||||||
|
Transparent = True
|
||||||
|
Visible = False
|
||||||
|
object ToolButton1: TToolButton
|
||||||
|
Left = 0
|
||||||
|
Top = 2
|
||||||
|
Action = actAnadir
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton2: TToolButton
|
||||||
|
Left = 62
|
||||||
|
Top = 2
|
||||||
|
Action = actEliminar
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton3: TToolButton
|
||||||
|
Left = 129
|
||||||
|
Top = 2
|
||||||
|
Action = actSubir
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton4: TToolButton
|
||||||
|
Left = 184
|
||||||
|
Top = 2
|
||||||
|
Action = actBajar
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton14: TToolButton
|
||||||
|
Left = 240
|
||||||
|
Top = 2
|
||||||
|
Action = FontEdit1
|
||||||
|
AutoSize = True
|
||||||
|
Wrap = True
|
||||||
|
end
|
||||||
|
object FontName: TJvFontComboBox
|
||||||
|
Left = 0
|
||||||
|
Top = 24
|
||||||
|
Width = 145
|
||||||
|
Height = 22
|
||||||
|
DroppedDownWidth = 145
|
||||||
|
MaxMRUCount = 0
|
||||||
|
FontName = 'Tahoma'
|
||||||
|
ItemIndex = 108
|
||||||
|
Options = [foTrueTypeOnly, foNoOEMFonts, foScalableOnly, foWysiWyg]
|
||||||
|
Sorted = True
|
||||||
|
TabOrder = 2
|
||||||
|
Visible = False
|
||||||
|
OnChange = FontNameChange
|
||||||
|
OnClick = FontNameChange
|
||||||
|
end
|
||||||
|
object FontSize: TEdit
|
||||||
|
Left = 145
|
||||||
|
Top = 24
|
||||||
|
Width = 26
|
||||||
|
Height = 22
|
||||||
|
Hint = 'Font Size|Select font size'
|
||||||
|
TabOrder = 1
|
||||||
|
Text = '0'
|
||||||
|
Visible = False
|
||||||
|
OnChange = FontSizeChange
|
||||||
|
end
|
||||||
|
object UpDown1: TUpDown
|
||||||
|
Left = 171
|
||||||
|
Top = 24
|
||||||
|
Width = 16
|
||||||
|
Height = 22
|
||||||
|
Associate = FontSize
|
||||||
|
TabOrder = 0
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object ToolButton13: TToolButton
|
||||||
|
Left = 187
|
||||||
|
Top = 24
|
||||||
|
Width = 8
|
||||||
|
Caption = 'ToolButton13'
|
||||||
|
ImageIndex = 10
|
||||||
|
Style = tbsSeparator
|
||||||
|
end
|
||||||
|
object ToolButton6: TToolButton
|
||||||
|
Left = 195
|
||||||
|
Top = 24
|
||||||
|
Action = RichEditBold1
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton7: TToolButton
|
||||||
|
Left = 229
|
||||||
|
Top = 24
|
||||||
|
Action = RichEditItalic1
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton8: TToolButton
|
||||||
|
Left = 263
|
||||||
|
Top = 24
|
||||||
|
Action = RichEditUnderline1
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton12: TToolButton
|
||||||
|
Left = 297
|
||||||
|
Top = 24
|
||||||
|
Width = 8
|
||||||
|
Caption = 'ToolButton12'
|
||||||
|
ImageIndex = 10
|
||||||
|
Style = tbsSeparator
|
||||||
|
end
|
||||||
|
object ToolButton9: TToolButton
|
||||||
|
Left = 305
|
||||||
|
Top = 24
|
||||||
|
Action = RichEditAlignLeft1
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton10: TToolButton
|
||||||
|
Left = 339
|
||||||
|
Top = 24
|
||||||
|
Action = RichEditAlignCenter1
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton11: TToolButton
|
||||||
|
Left = 373
|
||||||
|
Top = 24
|
||||||
|
Action = RichEditAlignRight1
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object cxGrid: TcxGrid
|
||||||
|
Left = 0
|
||||||
|
Top = 72
|
||||||
|
Width = 451
|
||||||
|
Height = 232
|
||||||
|
Align = alClient
|
||||||
|
TabOrder = 1
|
||||||
|
LookAndFeel.Kind = lfOffice11
|
||||||
|
LookAndFeel.NativeStyle = True
|
||||||
|
object cxGridView: TcxGridDBTableView
|
||||||
|
NavigatorButtons.ConfirmDelete = False
|
||||||
|
FilterBox.Visible = fvNever
|
||||||
|
OnEditing = cxGridViewEditing
|
||||||
|
OnEditKeyDown = cxGridViewEditKeyDown
|
||||||
|
OnEditValueChanged = cxGridViewEditValueChanged
|
||||||
|
OnInitEdit = cxGridViewInitEdit
|
||||||
|
DataController.DataSource = DADataSource
|
||||||
|
DataController.Filter.Options = [fcoCaseInsensitive]
|
||||||
|
DataController.KeyFieldNames = 'ID'
|
||||||
|
DataController.Options = [dcoAnsiSort, dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoSortByDisplayText, dcoFocusTopRowAfterSorting, dcoImmediatePost]
|
||||||
|
DataController.Summary.DefaultGroupSummaryItems = <>
|
||||||
|
DataController.Summary.FooterSummaryItems = <
|
||||||
|
item
|
||||||
|
Format = ',0.00 '#8364';-,0.00 '#8364
|
||||||
|
Kind = skSum
|
||||||
|
end>
|
||||||
|
DataController.Summary.SummaryGroups = <>
|
||||||
|
OptionsBehavior.AlwaysShowEditor = True
|
||||||
|
OptionsBehavior.CellHints = True
|
||||||
|
OptionsBehavior.FocusCellOnTab = True
|
||||||
|
OptionsBehavior.GoToNextCellOnEnter = True
|
||||||
|
OptionsBehavior.BestFitMaxRecordCount = 20
|
||||||
|
OptionsBehavior.FocusCellOnCycle = True
|
||||||
|
OptionsCustomize.ColumnFiltering = False
|
||||||
|
OptionsCustomize.ColumnGrouping = False
|
||||||
|
OptionsCustomize.ColumnMoving = False
|
||||||
|
OptionsCustomize.ColumnSorting = False
|
||||||
|
OptionsCustomize.DataRowSizing = True
|
||||||
|
OptionsData.Appending = True
|
||||||
|
OptionsData.CancelOnExit = False
|
||||||
|
OptionsSelection.MultiSelect = True
|
||||||
|
OptionsSelection.UnselectFocusedRecordOnExit = False
|
||||||
|
OptionsView.CellEndEllipsis = True
|
||||||
|
OptionsView.CellAutoHeight = True
|
||||||
|
OptionsView.ColumnAutoWidth = True
|
||||||
|
OptionsView.GridLineColor = cl3DLight
|
||||||
|
OptionsView.GroupByBox = False
|
||||||
|
OptionsView.HeaderEndEllipsis = True
|
||||||
|
OptionsView.Indicator = True
|
||||||
|
OptionsView.NewItemRowInfoText = 'Click here to add a new row'
|
||||||
|
Styles.ContentEven = cxStyleEven
|
||||||
|
Styles.ContentOdd = cxStyleOdd
|
||||||
|
Styles.Inactive = cxStyleSelection
|
||||||
|
Styles.Selection = cxStyleSelection
|
||||||
|
Styles.OnGetContentStyle = cxGridViewStylesGetContentStyle
|
||||||
|
object cxGridViewID: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'ID'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object cxGridViewPOSICION: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'POSICION'
|
||||||
|
Visible = False
|
||||||
|
SortIndex = 0
|
||||||
|
SortOrder = soAscending
|
||||||
|
end
|
||||||
|
object cxGridViewTIPO: TcxGridDBColumn
|
||||||
|
Caption = 'Tipo'
|
||||||
|
DataBinding.FieldName = 'TIPO_DETALLE'
|
||||||
|
PropertiesClassName = 'TcxImageComboBoxProperties'
|
||||||
|
Properties.Items = <>
|
||||||
|
BestFitMaxWidth = 64
|
||||||
|
Width = 56
|
||||||
|
end
|
||||||
|
object cxGridViewDESCRIPCION: TcxGridDBColumn
|
||||||
|
Caption = 'Concepto'
|
||||||
|
DataBinding.FieldName = 'CONCEPTO'
|
||||||
|
PropertiesClassName = 'TcxRichEditProperties'
|
||||||
|
Width = 224
|
||||||
|
end
|
||||||
|
object cxGridViewCANTIDAD: TcxGridDBColumn
|
||||||
|
Caption = 'Cantidad'
|
||||||
|
DataBinding.FieldName = 'CANTIDAD'
|
||||||
|
PropertiesClassName = 'TcxMaskEditProperties'
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
BestFitMaxWidth = 64
|
||||||
|
HeaderAlignmentHorz = taRightJustify
|
||||||
|
Width = 130
|
||||||
|
end
|
||||||
|
object cxGridViewIMPORTEUNIDAD: TcxGridDBColumn
|
||||||
|
Caption = 'Importe unidad'
|
||||||
|
DataBinding.FieldName = 'IMPORTE_UNIDAD'
|
||||||
|
PropertiesClassName = 'TcxCurrencyEditProperties'
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
BestFitMaxWidth = 120
|
||||||
|
FooterAlignmentHorz = taRightJustify
|
||||||
|
HeaderAlignmentHorz = taRightJustify
|
||||||
|
Width = 130
|
||||||
|
end
|
||||||
|
object cxGridViewIMPORTETOTAL: TcxGridDBColumn
|
||||||
|
Caption = 'Importe total'
|
||||||
|
DataBinding.FieldName = 'IMPORTE_TOTAL'
|
||||||
|
PropertiesClassName = 'TcxCurrencyEditProperties'
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
BestFitMaxWidth = 120
|
||||||
|
HeaderAlignmentHorz = taRightJustify
|
||||||
|
Options.Editing = False
|
||||||
|
Width = 130
|
||||||
|
end
|
||||||
|
object cxGridViewVISIBLE: TcxGridDBColumn
|
||||||
|
Caption = #191'Visible?'
|
||||||
|
DataBinding.FieldName = 'VISIBLE'
|
||||||
|
PropertiesClassName = 'TcxCheckBoxProperties'
|
||||||
|
Properties.Alignment = taCenter
|
||||||
|
Properties.DisplayChecked = '1'
|
||||||
|
Properties.DisplayUnchecked = '0'
|
||||||
|
Properties.Glyph.Data = {
|
||||||
|
92030000424D9203000000000000920100002800000020000000100000000100
|
||||||
|
08000000000000020000120B0000120B0000570000005700000000000000FFFF
|
||||||
|
FF0040384000703840008048500090586000C0606000A0505000804040006030
|
||||||
|
30009050500070404000A060600090606000A0707000B0808000C09090004030
|
||||||
|
3000E0B0B000B0909000FFF0F000FF787000E0787000C0686000FF9890009048
|
||||||
|
4000A0585000D0888000E0989000E0706000FF80700080484000A0686000FFA0
|
||||||
|
9000FF887000B060500070484000FFB0A000C0989000D0A8A000E0B8B000FF98
|
||||||
|
8000A0605000FFC0B000F0C0B00080686000F0D8D000B0908000E0C8B000E0D8
|
||||||
|
D000FFE0C000FFF8F000F0E0C000FFF0D000FFF8E00020283000FEFEFE00FAFA
|
||||||
|
FA00F7F7F700F3F3F300F1F1F100F0F0F000EDEDED00EAEAEA00E7E7E700E6E6
|
||||||
|
E600E3E3E300E0E0E000DADADA00D7D7D700D3D3D300D0D0D000CDCDCD00C9C9
|
||||||
|
C900C6C6C600C4C4C400C3C3C300C0C0C000BEBEBE00BCBCBC00B9B9B900B7B7
|
||||||
|
B700B3B3B300AEAEAE00ACACAC00A6A6A600FFFFFF0056565656565656565656
|
||||||
|
5656565656565656565656565656565656565656565656565656565656565656
|
||||||
|
5656565656565656565656565656565656565656565656565656565656565656
|
||||||
|
5656565656565656565656565656565656565656565656565656565656565656
|
||||||
|
5656565656565656565656565656565656565656565656565656404040444C4C
|
||||||
|
463D5656565656565656122830262D2D2F325656565644444444433E4145474A
|
||||||
|
50463B404456101010102734181D061A242F35122656564646443A3F434A544C
|
||||||
|
49493A3C4646560F0F10362C1507110A2320362E0F0F56564845394341535554
|
||||||
|
44473944484856560E13331C21023711161714260E0E5656564A3E403E38544A
|
||||||
|
4344464B4B565656560D31122B01111A1E1B0F050556565656564E49423F4343
|
||||||
|
434A4E4E565656565656040C2925221E1E2A04045656565656565650504F4D4F
|
||||||
|
50505056565656565656560B0B1F19080B0B0B56565656565656565652505151
|
||||||
|
505656565656565656565656090B03030B565656565656565656565656565656
|
||||||
|
5656565656565656565656565656565656565656565656565656565656565656
|
||||||
|
5656565656565656565656565656565656565656565656565656565656565656
|
||||||
|
5656565656565656565656565656565656565656565656565656565656565656
|
||||||
|
56565656565656565656565656565656565656565656}
|
||||||
|
Properties.GlyphCount = 2
|
||||||
|
Properties.ImmediatePost = True
|
||||||
|
Properties.NullStyle = nssUnchecked
|
||||||
|
Properties.ValueChecked = 1
|
||||||
|
Properties.ValueUnchecked = 0
|
||||||
|
Visible = False
|
||||||
|
FooterAlignmentHorz = taCenter
|
||||||
|
HeaderAlignmentHorz = taCenter
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object cxGridLevel: TcxGridLevel
|
||||||
|
GridView = cxGridView
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object TBXDock1: TTBXDock
|
||||||
|
Left = 0
|
||||||
|
Top = 46
|
||||||
|
Width = 451
|
||||||
|
Height = 26
|
||||||
|
BackgroundOnToolbars = False
|
||||||
|
UseParentBackground = True
|
||||||
|
object TBXToolbar1: TTBXToolbar
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Caption = 'TBXToolbar1'
|
||||||
|
DragHandleStyle = dhNone
|
||||||
|
Images = ContenidoImageList
|
||||||
|
TabOrder = 0
|
||||||
|
object TBXItem1: TTBXItem
|
||||||
|
Action = actAnadir
|
||||||
|
DisplayMode = nbdmImageAndText
|
||||||
|
Images = ContenidoImageList
|
||||||
|
end
|
||||||
|
object TBXItem2: TTBXItem
|
||||||
|
Action = actEliminar
|
||||||
|
DisplayMode = nbdmImageAndText
|
||||||
|
Images = ContenidoImageList
|
||||||
|
end
|
||||||
|
object TBXSeparatorItem1: TTBXSeparatorItem
|
||||||
|
end
|
||||||
|
object TBXItem3: TTBXItem
|
||||||
|
Action = actSubir
|
||||||
|
DisplayMode = nbdmImageAndText
|
||||||
|
end
|
||||||
|
object TBXItem4: TTBXItem
|
||||||
|
Action = actBajar
|
||||||
|
DisplayMode = nbdmImageAndText
|
||||||
|
end
|
||||||
|
object TBXSeparatorItem2: TTBXSeparatorItem
|
||||||
|
end
|
||||||
|
object TBXItem5: TTBXItem
|
||||||
|
Action = RichEditBold1
|
||||||
|
end
|
||||||
|
object TBXItem6: TTBXItem
|
||||||
|
Action = RichEditItalic1
|
||||||
|
end
|
||||||
|
object TBXItem7: TTBXItem
|
||||||
|
Action = RichEditUnderline1
|
||||||
|
end
|
||||||
|
object TBXSeparatorItem4: TTBXSeparatorItem
|
||||||
|
end
|
||||||
|
object TBXItem9: TTBXItem
|
||||||
|
Action = RichEditAlignLeft1
|
||||||
|
end
|
||||||
|
object TBXItem10: TTBXItem
|
||||||
|
Action = RichEditAlignCenter1
|
||||||
|
end
|
||||||
|
object TBXItem11: TTBXItem
|
||||||
|
Action = RichEditAlignRight1
|
||||||
|
end
|
||||||
|
object TBXSeparatorItem3: TTBXSeparatorItem
|
||||||
|
end
|
||||||
|
object TBXItem8: TTBXItem
|
||||||
|
Action = FontEdit1
|
||||||
|
end
|
||||||
|
object TBXSeparatorItem5: TTBXSeparatorItem
|
||||||
|
end
|
||||||
|
object TBXItem13: TTBXItem
|
||||||
|
Action = actAnchoAutomatico
|
||||||
|
DisplayMode = nbdmImageAndText
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object ActionListContenido: TActionList
|
||||||
|
Images = ContenidoImageList
|
||||||
|
Left = 8
|
||||||
|
Top = 104
|
||||||
|
object actAnadir: TAction
|
||||||
|
Category = 'Operaciones'
|
||||||
|
Caption = 'A'#241'adir'
|
||||||
|
ImageIndex = 0
|
||||||
|
ShortCut = 45
|
||||||
|
OnExecute = actAnadirExecute
|
||||||
|
OnUpdate = actAnadirUpdate
|
||||||
|
end
|
||||||
|
object actEliminar: TAction
|
||||||
|
Category = 'Operaciones'
|
||||||
|
Caption = 'Eliminar'
|
||||||
|
ImageIndex = 1
|
||||||
|
ShortCut = 16430
|
||||||
|
OnExecute = actEliminarExecute
|
||||||
|
OnUpdate = actEliminarUpdate
|
||||||
|
end
|
||||||
|
object actSubir: TAction
|
||||||
|
Category = 'Operaciones'
|
||||||
|
Caption = 'Subir'
|
||||||
|
ImageIndex = 2
|
||||||
|
OnExecute = actSubirExecute
|
||||||
|
OnUpdate = actSubirUpdate
|
||||||
|
end
|
||||||
|
object actBajar: TAction
|
||||||
|
Category = 'Operaciones'
|
||||||
|
Caption = 'Bajar'
|
||||||
|
ImageIndex = 3
|
||||||
|
OnExecute = actBajarExecute
|
||||||
|
OnUpdate = actBajarUpdate
|
||||||
|
end
|
||||||
|
object RichEditBold1: TRichEditBold
|
||||||
|
Category = 'Format'
|
||||||
|
AutoCheck = True
|
||||||
|
Hint = 'Negrita'
|
||||||
|
ImageIndex = 4
|
||||||
|
ShortCut = 16450
|
||||||
|
end
|
||||||
|
object RichEditItalic1: TRichEditItalic
|
||||||
|
Category = 'Format'
|
||||||
|
AutoCheck = True
|
||||||
|
Hint = 'Cursiva'
|
||||||
|
ImageIndex = 5
|
||||||
|
ShortCut = 16457
|
||||||
|
end
|
||||||
|
object RichEditUnderline1: TRichEditUnderline
|
||||||
|
Category = 'Format'
|
||||||
|
AutoCheck = True
|
||||||
|
Hint = 'Subrayado'
|
||||||
|
ImageIndex = 6
|
||||||
|
ShortCut = 16469
|
||||||
|
end
|
||||||
|
object RichEditAlignLeft1: TRichEditAlignLeft
|
||||||
|
Category = 'Format'
|
||||||
|
AutoCheck = True
|
||||||
|
Hint = 'Alinear a la izquierda'
|
||||||
|
ImageIndex = 7
|
||||||
|
end
|
||||||
|
object RichEditAlignCenter1: TRichEditAlignCenter
|
||||||
|
Category = 'Format'
|
||||||
|
AutoCheck = True
|
||||||
|
Hint = 'Center|Centers text between margins'
|
||||||
|
ImageIndex = 8
|
||||||
|
end
|
||||||
|
object RichEditAlignRight1: TRichEditAlignRight
|
||||||
|
Category = 'Format'
|
||||||
|
AutoCheck = True
|
||||||
|
Hint = 'Align Right|Aligns text at the right indent'
|
||||||
|
ImageIndex = 9
|
||||||
|
end
|
||||||
|
object FontEdit1: TFontEdit
|
||||||
|
Category = 'Dialog'
|
||||||
|
Dialog.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Dialog.Font.Color = clWindowText
|
||||||
|
Dialog.Font.Height = -11
|
||||||
|
Dialog.Font.Name = 'Tahoma'
|
||||||
|
Dialog.Font.Style = []
|
||||||
|
Enabled = False
|
||||||
|
Hint = 'Formato de fuente'
|
||||||
|
ImageIndex = 10
|
||||||
|
BeforeExecute = FontEdit1BeforeExecute
|
||||||
|
OnAccept = FontEdit1Accept
|
||||||
|
end
|
||||||
|
object RichEditAlignRight2: TRichEditAlignRight
|
||||||
|
Category = 'Format'
|
||||||
|
AutoCheck = True
|
||||||
|
Caption = 'Align &Right'
|
||||||
|
Hint = 'Align Right|Aligns text at the right indent'
|
||||||
|
ImageIndex = 11
|
||||||
|
end
|
||||||
|
object actAnchoAutomatico: TAction
|
||||||
|
Category = 'Operaciones'
|
||||||
|
Caption = 'Ancho autom'#225'tico'
|
||||||
|
ImageIndex = 11
|
||||||
|
OnExecute = actAnchoAutomaticoExecute
|
||||||
|
OnUpdate = actAnchoAutomaticoUpdate
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object DADataSource: TDADataSource
|
||||||
|
Left = 8
|
||||||
|
Top = 136
|
||||||
|
end
|
||||||
|
object ContenidoImageList: TPngImageList
|
||||||
|
PngImages = <
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000D04944415478DA
|
||||||
|
6364C0062630FCC72A5EC0C0882EC488CB80191909706EDDBA750CAF767D6260
|
||||||
|
5830240DF8F9FB3743EBE6CD780CC011602003409A7F0071EF8E1D10030C30D5
|
||||||
|
31A23B1706609AB1E23F7FC0F4FA2967B01B408CE6A3B76E815D856100319ABF
|
||||||
|
FFFAC570EEC103540340218D0C92EDECE01AD79E398335ACE106305CC0942CAC
|
||||||
|
77871BB0F5E2454820620138A331D3CB09EEECBD57AF929E0E629DADC106FCF9
|
||||||
|
F70F1E602419106A67C6F01DE40260805D7AFC9874037C2C0D194EDDBD8B1260
|
||||||
|
241900A6D103178B01000648ED7B1FCA93F30000000049454E44AE426082}
|
||||||
|
Name = 'PngImage0'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD2520000006E4944415478DA
|
||||||
|
63FCFFFF3F03258071D40006C6397A1214990036203925952CCD73E7CCC66100
|
||||||
|
C85BBF7F32307CFDC4C0F0FD2B03C33710FD05487F46E0374F19E6FE964032E0
|
||||||
|
CF6F840120CD200D5F3F43357E42F0416C90013FBFA119B0B099742FC00CA028
|
||||||
|
10073E1D0C7D030077CE5E397DD56C480000000049454E44AE426082}
|
||||||
|
Name = 'PngImage1'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000E14944415478DA
|
||||||
|
63FCFFFF3F032580717019C0C8C88822E9D770F9FFA6065D1441740B711A00D2
|
||||||
|
1C1DA5CA307DC64586037DE68C241900D3FCF10B23C39123CF19AE5EBECF7076
|
||||||
|
B623235106206BFEF899114C3FBAFB94E1C4D1AB0CB7567A33E235C0BFF1CAFF
|
||||||
|
9F3F7F3380B0B7BF2158F3BB8F4C0C7B36EE60F8F9E317C30F207EB1238C91A0
|
||||||
|
17AC728EFC77F234076BFEF2E631C3C1BDE7191E6E0C24CE0B20609CBAFFBFB9
|
||||||
|
A31DD0004606B6DF8F18766E3DC9F0726738F106E8C6EFFA6F68AC0617DFB8F6
|
||||||
|
30C3C783B1C41BA016BEF53FCCCF30FCF364326103C801C3C00000BEA5B3E15D
|
||||||
|
7F64240000000049454E44AE426082}
|
||||||
|
Name = 'PngImage2'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000DF4944415478DA
|
||||||
|
63FCFFFF3F032580717019C0C8C808A643DA6E80057FFDFACDF0F327041FE833
|
||||||
|
074BA25B88D380982805869FBF18183E7E61645830EF34C3B12936C41BE0D770
|
||||||
|
F97F74942A58F39123CF19AE5EBECF7076B623F106B8579EFB1F1CAACDF0F133
|
||||||
|
23C3E58BCF18CE9FBDC57079A11B6103FC1BAFFC87F9D9DBDF10EC8247779F32
|
||||||
|
9C387A95E1E78F5F0C3F80F8C58E3046BC2E70283AF91FA6F9DD472620666460
|
||||||
|
FBFD8861E7D6930C2F77863312E505E3D4FDFFCD1DED3034131D0620A016BEF5
|
||||||
|
BF85B5368A66920C000171F795FF91351334801C300C0C00007FBCB4E1E577C7
|
||||||
|
9A0000000049454E44AE426082}
|
||||||
|
Name = 'PngImage3'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001984944415478DA
|
||||||
|
63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
|
||||||
|
1BA234FDF9FB8FE1F79FBF60EC105CC4409201C89A8F9DBDC150D5360BD30046
|
||||||
|
C399181A59989918A23C55181A328C1804F9D8C0069CBD7C07BB01C886FC3F9F
|
||||||
|
CEF00F28BF7AD75D86888ABD0CEC6CCC0C8F774430FCF9F38FE1E2F57B840DF8
|
||||||
|
7B2E0DACF8C7AF3F0CFC360BC006DCDF120676C1B5DB0F091BF0F3540AC3C3E7
|
||||||
|
9F19DAE79D6758B6FD2E4353A6114384BB22D0D0BF0CB7EE3F216C003288F254
|
||||||
|
66288BD765E0E56206BAE01FC3FDC7CFB01B00F233B3D12C30FBFDA138B0730F
|
||||||
|
9C7ECE1056BE8FC1C954926172991958ECF9ABD79806803483FCCC6E36076CC0
|
||||||
|
8B3D5160C52031459FD560B10BCB7DC02E78F3EE2DAA01317E56F038E6B75908
|
||||||
|
567C6D6D1003273B33C396C38F18723B4F32B0B332311C99E70156F3F1D30754
|
||||||
|
03C2BDCC51342303666646066F1B1986EC5035065E6E16B0BA6FDF3EA31A10E4
|
||||||
|
6602762ACC1570F6EFBF503184DCBF7FFF197EFCF8826A809F9311C3A98BB748
|
||||||
|
CA4C700340B971E28CA524E7C6FC8CE81800E35A4E592A9A5C6B000000004945
|
||||||
|
4E44AE426082}
|
||||||
|
Name = 'PngImage4'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001844944415478DA
|
||||||
|
63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
|
||||||
|
1BA234FDF9FB8FE1F79FBF60EC105CC4409201C89A8F9DBDC150D5360BB7010B
|
||||||
|
37DF6248A8DB0FE7CB4BF2325C5D1B0237E0ECE53BF80D0081C69967191A669C
|
||||||
|
6188F35163985C61C5F0EF1FC4057FFEFC63B878FD1E6103744357335CB9F38E
|
||||||
|
61CB240F066B0331B866107DEDF643FC067CFFF98781CB622E98FD745714032B
|
||||||
|
0B235CF31F20BE75FF096E03FE01C5CE5D7FC3601ABD8E41535180E1E05C6F14
|
||||||
|
CDBF81ECFB8F9F613700A419A478C9D65B0CC98D871862BC5518BAF24DE19A7F
|
||||||
|
005D06623F7FF51AD30098669082CA49A71826AFB8CAD05D68CA10E2AC0009FD
|
||||||
|
DF7FA1B1F08FE1CDBBB7A806C4F859C1A3E8DDC79F0C0185BB182EDE7AC7B0BE
|
||||||
|
D799415B991F453388FEF8E903AA01E15EE6608993975F31B8656E4709D02D13
|
||||||
|
9D1964C438E19A41F8DBB7CFA80604B999C09D8F1C5DE83683F0BF7FFF197EFC
|
||||||
|
F8826A809F9311C3A98BB748CA4C700340B971E28CA524E7C6FC8CE818000A3C
|
||||||
|
81590C9B58CC0000000049454E44AE426082}
|
||||||
|
Name = 'PngImage5'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001854944415478DA
|
||||||
|
63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
|
||||||
|
1BA234FDF9FB8FE1F79FBF60EC105CC4806100A3E14C140DFFCFA763887F3C12
|
||||||
|
CF70ECEC0D86AAB65998067CFCF28B41C0763E98FDE6403C83303F07C33FA09A
|
||||||
|
B71F7E3088392D62B8BB259C81978B85E1ECE53BD80D40B60D643B48F39F3F10
|
||||||
|
67F358CD6778B52F1ACCBF78FD1E6103FE9E4B836B066141BB450CCF764582D9
|
||||||
|
D76E3F246CC0CF532970CD202CE6B494E1E1B630A0A17F196EDD7F42D880B707
|
||||||
|
E318981819C09ADF7DFCC9A011B886E1EEA66020FF1FC3FDC7CFB01B00F2B356
|
||||||
|
D02A869B0F3E305424EA3364846A80BDD1B5F012C3D53BEF1966D558820D7CFE
|
||||||
|
EA35A601B000BBF5F00343CDD4D30C07CE3C07C70A1F372B838BB91443419426
|
||||||
|
90CD0276C19B776F510D88F1B382FB1539E0E0ECDFB0B080F03F7EFA806A40B8
|
||||||
|
97395882DF6621C1D47870B60BC3B76F9F510D08723321CA6610FEF7EF3FC38F
|
||||||
|
1F5F500DF07332623875F1164999096E0028374E9CB194E4DC989F111D03002B
|
||||||
|
D67559EB1C43180000000049454E44AE426082}
|
||||||
|
Name = 'PngImage6'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000F94944415478DA
|
||||||
|
63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
|
||||||
|
1BA234FDF9FB8FE1F79FBF60EC105CC4409201C89A8F9DBDC150D5368B3803FE
|
||||||
|
01D5FCF983D00CC2672FDFC134809B9B1BAF0B9EBE7803D60C32ECE2F57B845D
|
||||||
|
80CD6618FFDAED87A4BB00062EDF78C870EBFE13DC2EC067F31F30FF1FC3FDC7
|
||||||
|
CF487701C8E61F3FFF800D7AFEEA35A601E836FFFCF507C5F6DFBF612EFAC7F0
|
||||||
|
E6DD5B540362FCAC18F8F978890A833D47AF327CFCF401D580702F7354DB70D8
|
||||||
|
0C93FBF6ED33AA01416E26446BFEF7EF3FC38F1F5F500DF07332623875F11651
|
||||||
|
5E8001B801A0DC3871C6529273637E46740C002BB66C59EAC44C620000000049
|
||||||
|
454E44AE426082}
|
||||||
|
Name = 'PngImage7'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001004944415478DA
|
||||||
|
63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
|
||||||
|
1BA234FDF9FB8FE1F79FBF60EC105CC4409201C89A8F9DBDC150D5368B3803FE
|
||||||
|
01D5FCF983D00CC2672FDFC16D0037373756839EBE7803D60C32ECE2F57B845D
|
||||||
|
80CD6618FFDAED879806E0B2191D5CBEF190E1D6FD27B85D80CFE63F60FE3F86
|
||||||
|
FB8F9F613700A499978707A7CD3F7EFE011BF4FCD56B4C03D06DFEF9EB0F8AED
|
||||||
|
BF7FC35CF48FE1CDBBB7A806C4F85931F0F3F11215067B8E5E65F8F8E903AA01
|
||||||
|
E15EE6A8B6E1B01926F7EDDB67540382DC4C88D6FCEFDF7F861F3FBEA01AE0E7
|
||||||
|
64C470EAE22DA2BC0003700340B971E28CA524E7C6FC8CE8180048E16F597BCE
|
||||||
|
9D230000000049454E44AE426082}
|
||||||
|
Name = 'PngImage8'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000FC4944415478DA
|
||||||
|
63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
|
||||||
|
1BA234FDF9FB8FE1F79FBF60EC105CC4409201C89A8F9DBDC150D5368B3803FE
|
||||||
|
01D5FCF983D00CC2672FDFC16D003737375E97DC79F09CE1E2F57B845D80CD66
|
||||||
|
18FFDAED87980610B219062EDF78C870EBFE13DC2EC067F31F30FF1FC3FDC7CF
|
||||||
|
B01B00D2CCCBC383D705C7CEDE6278FEEA35A601E836FFFCF507C5F6DFBF612E
|
||||||
|
FAC7F0E6DD5B540362FCAC18F8F978890A833D47AF327CFCF401D580702F7354
|
||||||
|
DB70D80C93FBF6ED33AA01416E26446BFEF7EF3FC38F1F5F500DF07332623875
|
||||||
|
F116515E8001B801A0DC3871C6529273637E46740C0021BE635977EAA72D0000
|
||||||
|
000049454E44AE426082}
|
||||||
|
Name = 'PngImage9'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001CB4944415478DA
|
||||||
|
63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
|
||||||
|
1BA234FDF9FB8FE1F79FBF60EC105CC480D580CAA3950C4B6E2C61789CFC18A7
|
||||||
|
E663676F3054B5CDC234E0EFFFBF0C327364185E7C7BC17020E40083BDB43DC3
|
||||||
|
3FA09A3F7F109A41F8ECE53BD80D587B672D43CBA916860BAF2F3024682530CC
|
||||||
|
759987A119C4BF78FD1E76031CD73A324CB09FC0E0B0C681E1CFBF3F0C8F129E
|
||||||
|
32B0317280350ADA2D6278B62B12CCBE76FB21A60137DFDF64D058A481E2EFB9
|
||||||
|
4E0B188214C2C09A41E0E1B630A00BFE32DCBAFF04D380C243850C06A2060CB1
|
||||||
|
1A710C871E1F61705C6FC7E020E5C470A02D0C6CB394DB7286BB9B82812EF8C7
|
||||||
|
70FFF13354034CED04194C969B303C4B7DCEC0CDC40B76A6DA52258667536B19
|
||||||
|
562D92623017B16190F75AC57075B53F58EEF9ABD7A806347E886578F0E90183
|
||||||
|
3CAF02C3D5C89B0C69FB531896555B63A4830BCB7DC02E78F3EE2DAA01317E56
|
||||||
|
28A12CECB098E1F18E70440CFCFECBA01DBA91E1F4622F30FFE3A70FA806847B
|
||||||
|
99A36886815B1B82E09A61E0E06C17866FDF3EA31A10E4668212DFC83643C410
|
||||||
|
72FFFEFD67F8F1E30BAA017E4E460CA72EDE222933C10D00E5C6893396929C1B
|
||||||
|
F333A26300FC1C815930D4A9C10000000049454E44AE426082}
|
||||||
|
Name = 'PngImage10'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001124944415478DA
|
||||||
|
63FCFFFF3F03258091620340848147C2FF0B3B1630A24B1223CE08E20CAC0B28
|
||||||
|
0A0098010B361C807BE3E7CF5F0C5FBF7D63F8F2ED3B98D65455C62ADE599ACC
|
||||||
|
886240BCBF3D58E19FBFFF18BE7DFFC5F0EDC72F86D6A98B1826D7E760159FD2
|
||||||
|
908B69C0EF3F7F810A7E337C072ABC71FF15C3FC556B1916F69463155FD45B81
|
||||||
|
3060DAF21DFF93835D18BEFF80D8F0FDC71F8647CFDF334C9CB38061E5D446AC
|
||||||
|
E21B66B7220CE89AB3EE7F6AA80754D16F862F409BDE7FFCC6D0D43F8561DDCC
|
||||||
|
76ACE2FB574C4418503771F1FFB4085F86DB0F5EA3847049633BC3C6F97D58C5
|
||||||
|
CF6E9B8730A0A86DE6FF6FC0D0FDF4F90BC3E72F5FA1F417867FFFFE33589818
|
||||||
|
601587A78381CF4C941A00005C20FBD97F751C0A0000000049454E44AE426082}
|
||||||
|
Name = 'PngImage11'
|
||||||
|
Background = clWindow
|
||||||
|
end>
|
||||||
|
Left = 40
|
||||||
|
Top = 112
|
||||||
|
Bitmap = {}
|
||||||
|
end
|
||||||
|
object cxStyleRepository: TcxStyleRepository
|
||||||
|
Left = 8
|
||||||
|
Top = 168
|
||||||
|
object cxStyleEven: TcxStyle
|
||||||
|
end
|
||||||
|
object cxStyleOdd: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = 16119285
|
||||||
|
end
|
||||||
|
object cxStyleSelection: TcxStyle
|
||||||
|
AssignedValues = [svColor, svTextColor]
|
||||||
|
Color = clHighlight
|
||||||
|
TextColor = clHighlightText
|
||||||
|
end
|
||||||
|
object cxStyle_IMPORTETOTAL: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = clInactiveCaptionText
|
||||||
|
end
|
||||||
|
object cxStyle_SUBTOTAL: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = cl3DLight
|
||||||
|
end
|
||||||
|
object cxStyle_TITULO: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = clMenuBar
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
746
Source/GUIBase/uViewDetallesBase.pas
Normal file
746
Source/GUIBase/uViewDetallesBase.pas
Normal file
@ -0,0 +1,746 @@
|
|||||||
|
unit uViewDetallesBase;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, cxStyles, ComCtrls, ToolWin, ActnList, cxCustomData,
|
||||||
|
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData,
|
||||||
|
uDADataTable, cxGridLevel, cxClasses, cxControls, cxGridCustomView,
|
||||||
|
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ImgList,
|
||||||
|
PngImageList, cxGrid, cxImageComboBox, cxTextEdit, cxMaskEdit, cxCheckBox,
|
||||||
|
uGridUtils, uControllerDetallesBase, cxCurrencyEdit, ExtCtrls, Grids, DBGrids, StdCtrls,
|
||||||
|
ExtActns, StdActns, cxRichEdit, JvExStdCtrls, JvCombobox, JvColorCombo,
|
||||||
|
TB2Item, TBX, TB2Dock, TB2Toolbar;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewDetallesBase = interface(IViewBase)
|
||||||
|
['{852EB860-13B6-4355-A6B0-4542AB16896F}']
|
||||||
|
procedure ExpandirTodo;
|
||||||
|
procedure ContraerTodo;
|
||||||
|
procedure AjustarAncho;
|
||||||
|
|
||||||
|
procedure SaveGridStatus;
|
||||||
|
procedure RestoreGridStatus;
|
||||||
|
|
||||||
|
procedure BeginUpdate;
|
||||||
|
procedure EndUpdate;
|
||||||
|
|
||||||
|
function IsEmpty : Boolean;
|
||||||
|
|
||||||
|
function GetFocusedView : TcxGridDBTableView;
|
||||||
|
property _FocusedView : TcxGridDBTableView read GetFocusedView;
|
||||||
|
|
||||||
|
function GetGrid : TcxGrid;
|
||||||
|
property _Grid : TcxGrid read GetGrid;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfrViewDetallesBase = class(TfrViewBase, IViewDetallesBase)
|
||||||
|
ActionListContenido: TActionList;
|
||||||
|
DADataSource: TDADataSource;
|
||||||
|
actAnadir: TAction;
|
||||||
|
actEliminar: TAction;
|
||||||
|
actSubir: TAction;
|
||||||
|
actBajar: TAction;
|
||||||
|
ContenidoImageList: TPngImageList;
|
||||||
|
ToolBar1: TToolBar;
|
||||||
|
cxStyleRepository: TcxStyleRepository;
|
||||||
|
cxStyleEven: TcxStyle;
|
||||||
|
cxStyleOdd: TcxStyle;
|
||||||
|
cxStyleSelection: TcxStyle;
|
||||||
|
ToolButton1: TToolButton;
|
||||||
|
ToolButton2: TToolButton;
|
||||||
|
ToolButton3: TToolButton;
|
||||||
|
ToolButton4: TToolButton;
|
||||||
|
cxGrid: TcxGrid;
|
||||||
|
cxGridView: TcxGridDBTableView;
|
||||||
|
cxGridViewID: TcxGridDBColumn;
|
||||||
|
cxGridViewPOSICION: TcxGridDBColumn;
|
||||||
|
cxGridViewTIPO: TcxGridDBColumn;
|
||||||
|
cxGridViewDESCRIPCION: TcxGridDBColumn;
|
||||||
|
cxGridViewCANTIDAD: TcxGridDBColumn;
|
||||||
|
cxGridViewIMPORTEUNIDAD: TcxGridDBColumn;
|
||||||
|
cxGridViewIMPORTETOTAL: TcxGridDBColumn;
|
||||||
|
cxGridViewVISIBLE: TcxGridDBColumn;
|
||||||
|
cxGridLevel: TcxGridLevel;
|
||||||
|
RichEditBold1: TRichEditBold;
|
||||||
|
RichEditItalic1: TRichEditItalic;
|
||||||
|
ToolButton6: TToolButton;
|
||||||
|
ToolButton7: TToolButton;
|
||||||
|
RichEditUnderline1: TRichEditUnderline;
|
||||||
|
RichEditAlignLeft1: TRichEditAlignLeft;
|
||||||
|
RichEditAlignRight1: TRichEditAlignRight;
|
||||||
|
RichEditAlignCenter1: TRichEditAlignCenter;
|
||||||
|
ToolButton8: TToolButton;
|
||||||
|
ToolButton9: TToolButton;
|
||||||
|
ToolButton10: TToolButton;
|
||||||
|
ToolButton11: TToolButton;
|
||||||
|
ToolButton12: TToolButton;
|
||||||
|
ToolButton13: TToolButton;
|
||||||
|
FontEdit1: TFontEdit;
|
||||||
|
ToolButton14: TToolButton;
|
||||||
|
UpDown1: TUpDown;
|
||||||
|
FontSize: TEdit;
|
||||||
|
FontName: TJvFontComboBox;
|
||||||
|
TBXDock1: TTBXDock;
|
||||||
|
TBXToolbar1: TTBXToolbar;
|
||||||
|
TBXItem1: TTBXItem;
|
||||||
|
TBXItem2: TTBXItem;
|
||||||
|
TBXSeparatorItem1: TTBXSeparatorItem;
|
||||||
|
TBXItem3: TTBXItem;
|
||||||
|
TBXItem4: TTBXItem;
|
||||||
|
TBXSeparatorItem2: TTBXSeparatorItem;
|
||||||
|
TBXItem5: TTBXItem;
|
||||||
|
TBXItem6: TTBXItem;
|
||||||
|
TBXItem7: TTBXItem;
|
||||||
|
TBXSeparatorItem3: TTBXSeparatorItem;
|
||||||
|
TBXItem8: TTBXItem;
|
||||||
|
TBXSeparatorItem4: TTBXSeparatorItem;
|
||||||
|
TBXItem9: TTBXItem;
|
||||||
|
TBXItem10: TTBXItem;
|
||||||
|
TBXItem11: TTBXItem;
|
||||||
|
cxStyle_IMPORTETOTAL: TcxStyle;
|
||||||
|
cxStyle_SUBTOTAL: TcxStyle;
|
||||||
|
cxStyle_TITULO: TcxStyle;
|
||||||
|
RichEditAlignRight2: TRichEditAlignRight;
|
||||||
|
actAnchoAutomatico: TAction;
|
||||||
|
TBXSeparatorItem5: TTBXSeparatorItem;
|
||||||
|
TBXItem13: TTBXItem;
|
||||||
|
|
||||||
|
procedure actAnadirExecute(Sender: TObject);
|
||||||
|
procedure actEliminarExecute(Sender: TObject);
|
||||||
|
procedure actSubirExecute(Sender: TObject);
|
||||||
|
procedure actBajarExecute(Sender: TObject);
|
||||||
|
procedure actEliminarUpdate(Sender: TObject);
|
||||||
|
procedure actSubirUpdate(Sender: TObject);
|
||||||
|
procedure actBajarUpdate(Sender: TObject);
|
||||||
|
procedure actAnadirUpdate(Sender: TObject);
|
||||||
|
|
||||||
|
procedure cxGridViewEditValueChanged(Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem);
|
||||||
|
procedure cxGridViewEditKeyDown(Sender: TcxCustomGridTableView;
|
||||||
|
AItem: TcxCustomGridTableItem; AEdit: TcxCustomEdit; var Key: Word;
|
||||||
|
Shift: TShiftState);
|
||||||
|
|
||||||
|
procedure cxGridViewInitEdit(Sender: TcxCustomGridTableView;
|
||||||
|
AItem: TcxCustomGridTableItem; AEdit: TcxCustomEdit);
|
||||||
|
procedure FontEdit1BeforeExecute(Sender: TObject);
|
||||||
|
procedure FontEdit1Accept(Sender: TObject);
|
||||||
|
|
||||||
|
procedure CustomViewCreate(Sender: TObject);
|
||||||
|
procedure CustomViewDestroy(Sender: TObject);
|
||||||
|
procedure FontSizeChange(Sender: TObject);
|
||||||
|
procedure FontNameChange(Sender: TObject);
|
||||||
|
|
||||||
|
procedure cxGridViewEditing(Sender: TcxCustomGridTableView;
|
||||||
|
AItem: TcxCustomGridTableItem; var AAllow: Boolean);
|
||||||
|
procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView;
|
||||||
|
ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem;
|
||||||
|
out AStyle: TcxStyle);
|
||||||
|
procedure TBXItem13Click(Sender: TObject);
|
||||||
|
procedure actAnchoAutomaticoExecute(Sender: TObject);
|
||||||
|
procedure actAnchoAutomaticoUpdate(Sender: TObject);
|
||||||
|
|
||||||
|
private
|
||||||
|
FController : IControllerDetallesBase;
|
||||||
|
FDetalles: IDAStronglyTypedDataTable;
|
||||||
|
FGridStatus: TcxGridStatus;
|
||||||
|
CurEdit: TcxRichEdit;
|
||||||
|
FUpdating: Boolean;
|
||||||
|
function CurrText: TTextAttributes;
|
||||||
|
procedure OnSelectChange(Sender:TObject);
|
||||||
|
|
||||||
|
function GetController: IControllerDetallesBase;
|
||||||
|
procedure SetController(const Value: IControllerDetallesBase);
|
||||||
|
function GetDetalles: IDAStronglyTypedDataTable;
|
||||||
|
procedure SetDetalles(const Value: IDAStronglyTypedDataTable);
|
||||||
|
|
||||||
|
function darPosicionCAMPO(const Nombre:String): Integer;
|
||||||
|
function darListaSeleccionados: TIntegerArray;
|
||||||
|
|
||||||
|
protected
|
||||||
|
function HayQueRecalcular(AItem: TcxCustomGridTableItem): Boolean; virtual;
|
||||||
|
function EsTipoEditable(AItem: TcxCustomGridTableItem): Boolean; virtual;
|
||||||
|
function darTipoLetraPorDefecto: TFont; virtual;
|
||||||
|
function GetFocusedView : TcxGridDBTableView; virtual;
|
||||||
|
function GetGrid : TcxGrid; virtual;
|
||||||
|
procedure SeleccionarRowActual;
|
||||||
|
|
||||||
|
public
|
||||||
|
procedure BeginUpdate;
|
||||||
|
procedure EndUpdate;
|
||||||
|
procedure SaveGridStatus;
|
||||||
|
procedure RestoreGridStatus;
|
||||||
|
procedure ExpandirTodo;
|
||||||
|
procedure ContraerTodo;
|
||||||
|
procedure AjustarAncho;
|
||||||
|
function IsEmpty : Boolean;
|
||||||
|
destructor Destroy; override;
|
||||||
|
property _FocusedView : TcxGridDBTableView read GetFocusedView;
|
||||||
|
property _Grid : TcxGrid read GetGrid;
|
||||||
|
property Controller: IControllerDetallesBase read GetController write SetController;
|
||||||
|
property Detalles: IDAStronglyTypedDataTable read GetDetalles write SetDetalles;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
function EnumFontsProc(var LogFont: TLogFont; var TextMetric: TTextMetric;
|
||||||
|
FontType: Integer; Data: Pointer): Integer; stdcall;
|
||||||
|
begin
|
||||||
|
TStrings(Data).Add(LogFont.lfFaceName);
|
||||||
|
Result := 1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.actAnadirExecute(Sender: TObject);
|
||||||
|
var
|
||||||
|
bEsMultiSelect : Boolean;
|
||||||
|
begin
|
||||||
|
// Debo quitar el multiselect porque provoca que se quede seleccionado
|
||||||
|
// el registro actual y no el nuevo registro que voy a añadir
|
||||||
|
bEsMultiSelect := cxGridView.OptionsSelection.MultiSelect;
|
||||||
|
if bEsMultiSelect then
|
||||||
|
cxGridView.OptionsSelection.MultiSelect := False;
|
||||||
|
|
||||||
|
cxGridView.BeginUpdate;
|
||||||
|
try
|
||||||
|
if cxGridView.Controller.EditingController.IsEditing then
|
||||||
|
cxGridView.Controller.EditingController.Edit.PostEditValue;
|
||||||
|
|
||||||
|
if Assigned(Controller)
|
||||||
|
and Assigned(FDetalles) then
|
||||||
|
Controller.add(FDetalles, TIPO_DETALLE_CONCEPTO);
|
||||||
|
finally
|
||||||
|
cxGridView.EndUpdate;
|
||||||
|
|
||||||
|
// Dejo la propiedad MultiSelect como estaba
|
||||||
|
if bEsMultiSelect then
|
||||||
|
cxGridView.OptionsSelection.MultiSelect := bEsMultiSelect;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.actEliminarExecute(Sender: TObject);
|
||||||
|
var
|
||||||
|
AuxTop, AuxRow:Integer;
|
||||||
|
|
||||||
|
begin
|
||||||
|
cxGridView.BeginUpdate;
|
||||||
|
try
|
||||||
|
if Assigned(Controller)
|
||||||
|
and Assigned(FDetalles) then
|
||||||
|
begin
|
||||||
|
AuxTop := cxGridView.Controller.TopRowIndex;
|
||||||
|
AuxRow := cxGridView.DataController.FocusedRowIndex;
|
||||||
|
|
||||||
|
Controller.delete(FDetalles, darListaSeleccionados);
|
||||||
|
|
||||||
|
if(FDetalles.RecordCount > 0) then
|
||||||
|
begin
|
||||||
|
//Selecciona en el grid el registro siguiente
|
||||||
|
if (AuxRow < cxGridView.DataController.RowCount-1) then
|
||||||
|
Inc(AuxRow)
|
||||||
|
else
|
||||||
|
Dec(AuxRow);
|
||||||
|
|
||||||
|
cxGridView.DataController.SelectRows(AuxRow,AuxRow);
|
||||||
|
cxGridView.Controller.TopRowIndex := AuxTop;
|
||||||
|
end;
|
||||||
|
end
|
||||||
|
finally
|
||||||
|
cxGridView.EndUpdate;
|
||||||
|
end;
|
||||||
|
|
||||||
|
SeleccionarRowActual;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.actEliminarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if not Assigned(DADataSource.DataTable) then
|
||||||
|
(Sender as TAction).Enabled := False
|
||||||
|
else
|
||||||
|
(Sender as TAction).Enabled := (not ReadOnly)
|
||||||
|
and (not DADataSource.DataTable.IsEmpty)
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.actSubirUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if not Assigned(cxGridView.Controller.FocusedRow) then
|
||||||
|
(Sender as TAction).Enabled := False
|
||||||
|
else
|
||||||
|
(Sender as TAction).Enabled := (not ReadOnly)
|
||||||
|
and (not cxGridView.Controller.FocusedRow.IsFirst)
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.AjustarAncho;
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.ApplyBestFit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.BeginUpdate;
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.BeginUpdate;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesBase.darTipoLetraPorDefecto: TFont;
|
||||||
|
begin
|
||||||
|
Result := TFont.Create;
|
||||||
|
Result.Name := 'Tahoma';
|
||||||
|
Result.Size := 9;
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TfrViewDetallesBase.Destroy;
|
||||||
|
begin
|
||||||
|
FController := NIL;
|
||||||
|
FDetalles := NIL;
|
||||||
|
|
||||||
|
if Assigned(FGridStatus) then
|
||||||
|
FreeAndNil(FGridStatus);
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.ContraerTodo;
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.ViewData.Collapse(True);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesBase.CurrText: TTextAttributes;
|
||||||
|
begin
|
||||||
|
Result := NIL;
|
||||||
|
if Assigned(CurEdit) then
|
||||||
|
// if CurEdit.FindSelection then
|
||||||
|
if CurEdit.SelLength > 0 then
|
||||||
|
Result := CurEdit.SelAttributes
|
||||||
|
else
|
||||||
|
Result := CurEdit.DefAttributes;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.CustomViewCreate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
CurEdit := Nil;
|
||||||
|
FUpdating := False;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.CustomViewDestroy(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
CurEdit := Nil;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.cxGridViewEditing(Sender: TcxCustomGridTableView;
|
||||||
|
AItem: TcxCustomGridTableItem; var AAllow: Boolean);
|
||||||
|
begin
|
||||||
|
AAllow := EsTipoEditable(AItem);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.cxGridViewEditKeyDown(
|
||||||
|
Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem;
|
||||||
|
AEdit: TcxCustomEdit; var Key: Word; Shift: TShiftState);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxGridView.BeginUpdate;
|
||||||
|
try
|
||||||
|
Case Key of
|
||||||
|
VK_DOWN : begin
|
||||||
|
//En el caso de ser la última fila hacemos un append nosotros no el grid
|
||||||
|
//ya que se saltaria la lógica del controllerDetallesBase
|
||||||
|
if cxGridView.Controller.IsFinish then
|
||||||
|
begin
|
||||||
|
Key := 0;
|
||||||
|
if Sender.Controller.EditingController.IsEditing then
|
||||||
|
Sender.Controller.EditingController.Edit.PostEditValue;
|
||||||
|
actAnadir.Execute;
|
||||||
|
end;
|
||||||
|
|
||||||
|
//Baja los conceptos seleccionados
|
||||||
|
if Shift = [ssAlt] then
|
||||||
|
begin
|
||||||
|
Key := 0;
|
||||||
|
actBajar.Execute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
VK_UP : begin
|
||||||
|
//Sube los conceptos seleccionados
|
||||||
|
if Shift = [ssAlt] then
|
||||||
|
begin
|
||||||
|
Key := 0;
|
||||||
|
actSubir.Execute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
VK_RETURN, VK_RIGHT
|
||||||
|
: begin
|
||||||
|
//En el caso de ser la última fila hacemos un append nosotros no el grid
|
||||||
|
//ya que se saltaria la lógica del controllerDetallesBase
|
||||||
|
if cxGridView.Controller.IsFinish
|
||||||
|
and AItem.IsLast then
|
||||||
|
begin
|
||||||
|
Key := 0;
|
||||||
|
if Sender.Controller.EditingController.IsEditing then
|
||||||
|
Sender.Controller.EditingController.Edit.PostEditValue;
|
||||||
|
actAnadir.Execute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
cxGridView.EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.cxGridViewEditValueChanged(Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxGridView.BeginUpdate;
|
||||||
|
try
|
||||||
|
if HayQueRecalcular(AItem) then
|
||||||
|
begin
|
||||||
|
if Sender.Controller.EditingController.IsEditing then
|
||||||
|
Sender.Controller.EditingController.Edit.PostEditValue;
|
||||||
|
|
||||||
|
Controller.actualizarTotales(Detalles);
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
cxGridView.EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.cxGridViewInitEdit(Sender: TcxCustomGridTableView;
|
||||||
|
AItem: TcxCustomGridTableItem; AEdit: TcxCustomEdit);
|
||||||
|
var
|
||||||
|
FuentePorDefecto: TFont;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
|
||||||
|
if AEdit is TcxRichEdit then
|
||||||
|
begin
|
||||||
|
FuentePorDefecto := darTipoLetraPorDefecto;
|
||||||
|
//La primera vez que accedemos al grid entra dos veces y perderiamos el editor
|
||||||
|
//dando un pete.
|
||||||
|
if not Assigned(CurEdit) then
|
||||||
|
begin
|
||||||
|
FontEdit1.Enabled := True;
|
||||||
|
// UpDown1.Enabled := True;
|
||||||
|
// FontSize.Enabled := True;
|
||||||
|
// FontName.Enabled := True;
|
||||||
|
|
||||||
|
CurEdit := TcxRichEdit(AEdit);
|
||||||
|
if length(CurEdit.Text) = 0 then
|
||||||
|
CurEdit.DefAttributes.Assign(FuentePorDefecto)
|
||||||
|
end
|
||||||
|
else
|
||||||
|
if length(CurEdit.Text) = 0 then
|
||||||
|
CurEdit.DefAttributes.Assign(FuentePorDefecto);
|
||||||
|
|
||||||
|
FreeAndNil(FuentePorDefecto);
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
CurEdit := Nil;
|
||||||
|
FontEdit1.Enabled := False;
|
||||||
|
// UpDown1.Enabled := False;
|
||||||
|
// FontSize.Enabled := False;
|
||||||
|
// FontName.Enabled := False;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.cxGridViewStylesGetContentStyle(
|
||||||
|
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
|
||||||
|
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
|
||||||
|
var
|
||||||
|
IndiceCol : Integer;
|
||||||
|
ATipo : String;
|
||||||
|
begin
|
||||||
|
if Assigned(ARecord) then
|
||||||
|
begin
|
||||||
|
IndiceCol := cxGridViewTIPO.Index;
|
||||||
|
ATipo := VarToStr(ARecord.Values[IndiceCol]);
|
||||||
|
if ATipo = TIPO_DETALLE_SUBTOTAL then
|
||||||
|
AStyle := cxStyle_SUBTOTAL;
|
||||||
|
if ATipo = TIPO_DETALLE_TITULO then
|
||||||
|
AStyle := cxStyle_TITULO;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesBase.darListaSeleccionados: TIntegerArray;
|
||||||
|
var
|
||||||
|
i, j: Integer;
|
||||||
|
begin
|
||||||
|
j := darPosicionCampo(CAMPO_POSICION);
|
||||||
|
|
||||||
|
with cxGridView.Controller do
|
||||||
|
for i:=0 to SelectedRecordCount-1 do
|
||||||
|
begin
|
||||||
|
SetLength(Result, i+1);
|
||||||
|
Result[i] := SelectedRecords[i].Values[j];
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesBase.DarPosicionCAMPO(const Nombre: String): Integer;
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
Result := -1;
|
||||||
|
|
||||||
|
i:=0;
|
||||||
|
while ((cxGridView.Columns[i].DataBinding.FieldName <> Nombre)
|
||||||
|
and (i < cxGridView.ColumnCount)) do
|
||||||
|
inc(i);
|
||||||
|
|
||||||
|
if (i = cxGridView.ColumnCount)
|
||||||
|
then raise Exception.Create('El campo ' + Nombre + ' no se ha encontrado en el grid (uViewDetallesBase)');
|
||||||
|
|
||||||
|
Result := i;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.EndUpdate;
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.EndUpdate;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesBase.EsTipoEditable(AItem: TcxCustomGridTableItem): Boolean;
|
||||||
|
var
|
||||||
|
IndiceCol : Integer;
|
||||||
|
begin
|
||||||
|
Result := True;
|
||||||
|
|
||||||
|
IndiceCol := cxGridView.GetColumnByFieldName(CAMPO_TIPO).Index;
|
||||||
|
if (AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_SALTO) then
|
||||||
|
begin
|
||||||
|
IndiceCol := cxGridView.GetColumnByFieldName(CAMPO_CONCEPTO).Index;
|
||||||
|
if AItem.Index >= IndiceCol then
|
||||||
|
Result := False
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
if (AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_SUBTOTAL)
|
||||||
|
or (AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_TITULO) then
|
||||||
|
begin
|
||||||
|
IndiceCol := cxGridView.GetColumnByFieldName(CAMPO_CONCEPTO).Index;
|
||||||
|
if AItem.Index > IndiceCol then
|
||||||
|
Result := False
|
||||||
|
end
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.ExpandirTodo;
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.ViewData.Expand(True);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.FontEdit1Accept(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
CurrText.Assign(FontEdit1.Dialog.Font);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.FontEdit1BeforeExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FontEdit1.Dialog.Font.Assign(CurEdit.SelAttributes);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.FontNameChange(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if FUpdating then Exit;
|
||||||
|
CurrText.Name := FontName.Items[FontName.ItemIndex];
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.FontSizeChange(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if FUpdating then Exit;
|
||||||
|
CurrText.Size := StrToInt(FontSize.Text);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesBase.GetController: IControllerDetallesBase;
|
||||||
|
begin
|
||||||
|
Result := FController;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesBase.GetDetalles: IDAStronglyTypedDataTable;
|
||||||
|
begin
|
||||||
|
Result := FDetalles;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesBase.GetFocusedView: TcxGridDBTableView;
|
||||||
|
begin
|
||||||
|
Result := cxGridView;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesBase.GetGrid: TcxGrid;
|
||||||
|
begin
|
||||||
|
Result := cxGrid;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesBase.HayQueRecalcular(AItem: TcxCustomGridTableItem): Boolean;
|
||||||
|
begin
|
||||||
|
Result := (AItem = cxGridViewTIPO)
|
||||||
|
or (AItem = cxGridViewCANTIDAD)
|
||||||
|
or (AItem = cxGridViewIMPORTEUNIDAD);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesBase.IsEmpty: Boolean;
|
||||||
|
begin
|
||||||
|
Result := (_FocusedView.ViewData.RowCount < 1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.OnSelectChange(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if (csDestroying in ComponentState) then
|
||||||
|
Exit;
|
||||||
|
|
||||||
|
try
|
||||||
|
FUpdating := True;
|
||||||
|
// FontSize.Text := IntToStr(CurEdit.SelAttributes.Size);
|
||||||
|
// FontName.FontName := CurEdit.SelAttributes.Name;
|
||||||
|
finally
|
||||||
|
FUpdating := False;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.RestoreGridStatus;
|
||||||
|
begin
|
||||||
|
if Assigned(FGridStatus) and (not IsEmpty) then
|
||||||
|
FGridStatus.Restore(_FocusedView);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.SaveGridStatus;
|
||||||
|
begin
|
||||||
|
FreeAndNil(FGridStatus);
|
||||||
|
if not IsEmpty then
|
||||||
|
FGridStatus := TcxGridStatus.Create(_FocusedView);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.SeleccionarRowActual;
|
||||||
|
begin
|
||||||
|
//Quitamos lo que hubiera seleccionado
|
||||||
|
cxGrid.ActiveView.DataController.ClearSelection;
|
||||||
|
with cxGrid.ActiveView.DataController do
|
||||||
|
if RowCount > 0 then
|
||||||
|
SelectRows(GetFocusedRowIndex,GetFocusedRowIndex);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.SetController(const Value: IControllerDetallesBase);
|
||||||
|
var
|
||||||
|
AListaValores : TStringList;
|
||||||
|
AItem : TcxImageComboBoxItem;
|
||||||
|
i: integer;
|
||||||
|
DC: HDC;
|
||||||
|
begin
|
||||||
|
FController := Value;
|
||||||
|
|
||||||
|
//Rellenamos los tipos de letra que tenemos
|
||||||
|
FontName.Items.Clear;
|
||||||
|
DC := GetDC(0);
|
||||||
|
EnumFonts(DC, nil, @EnumFontsProc, Pointer(FontName.Items));
|
||||||
|
ReleaseDC(0, DC);
|
||||||
|
FontName.Sorted := True;
|
||||||
|
|
||||||
|
//Rellenamos los tipos de conceptos que hay
|
||||||
|
if Assigned(FController) then
|
||||||
|
begin
|
||||||
|
AListaValores := FController.darListaTIPOSDETALLE;
|
||||||
|
with (cxGridViewTIPO.Properties as TcxImageComboBoxProperties) do
|
||||||
|
if Items.Count = 0 then
|
||||||
|
begin
|
||||||
|
Items.BeginUpdate;
|
||||||
|
try
|
||||||
|
Items.Clear;
|
||||||
|
for i:=0 to AListaValores.Count-1 do
|
||||||
|
begin
|
||||||
|
AItem := Items.Add;
|
||||||
|
AItem.Tag := i;
|
||||||
|
AItem.Description := AListaValores.ValueFromIndex[i];
|
||||||
|
AItem.Value := AListaValores.Names[i];
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
DefaultDescription := AListaValores.ValueFromIndex[0];
|
||||||
|
FreeAndNil(AListaValores);
|
||||||
|
Items.EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.SetDetalles(const Value: IDAStronglyTypedDataTable);
|
||||||
|
begin
|
||||||
|
FDetalles := Value;
|
||||||
|
if Assigned(FDetalles) then
|
||||||
|
DADataSource.DataTable := FDetalles.DataTable
|
||||||
|
else
|
||||||
|
DADataSource.DataTable := NIL;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.TBXItem13Click(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if cxGridView.Controller.EditingController.IsEditing then
|
||||||
|
cxGridView.Controller.EditingController.Edit.PostEditValue;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.actAnadirUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := not ReadOnly;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.actAnchoAutomaticoExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxGridView.ApplyBestFit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.actAnchoAutomaticoUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := not IsEmpty;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.actBajarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
cxGridView.BeginUpdate;
|
||||||
|
try
|
||||||
|
if cxGridView.Controller.EditingController.IsEditing then
|
||||||
|
cxGridView.Controller.EditingController.Edit.PostEditValue;
|
||||||
|
|
||||||
|
if Assigned(Controller)
|
||||||
|
and Assigned(FDetalles) then
|
||||||
|
Controller.move(FDetalles, darListaSeleccionados, 1);
|
||||||
|
finally
|
||||||
|
cxGridView.EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.actBajarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if not Assigned(cxGridView.Controller.FocusedRow) then
|
||||||
|
(Sender as TAction).Enabled := False
|
||||||
|
else
|
||||||
|
(Sender as TAction).Enabled := (not ReadOnly)
|
||||||
|
and (not cxGridView.Controller.FocusedRow.IsLast)
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesBase.actSubirExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
cxGridView.BeginUpdate;
|
||||||
|
try
|
||||||
|
if cxGridView.Controller.EditingController.IsEditing then
|
||||||
|
cxGridView.Controller.EditingController.Edit.PostEditValue;
|
||||||
|
|
||||||
|
if Assigned(Controller)
|
||||||
|
and Assigned(FDetalles) then
|
||||||
|
Controller.move(FDetalles, darListaSeleccionados, -1);
|
||||||
|
finally
|
||||||
|
cxGridView.EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
95
Source/GUIBase/uViewDetallesDTO.dfm
Normal file
95
Source/GUIBase/uViewDetallesDTO.dfm
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
inherited frViewDetallesDTO: TfrViewDetallesDTO
|
||||||
|
inherited ToolBar1: TToolBar
|
||||||
|
ButtonWidth = 110
|
||||||
|
inherited ToolButton1: TToolButton
|
||||||
|
ExplicitWidth = 109
|
||||||
|
end
|
||||||
|
inherited ToolButton2: TToolButton
|
||||||
|
Left = 109
|
||||||
|
ExplicitLeft = 109
|
||||||
|
ExplicitWidth = 114
|
||||||
|
end
|
||||||
|
inherited ToolButton3: TToolButton
|
||||||
|
Left = 223
|
||||||
|
ExplicitLeft = 223
|
||||||
|
end
|
||||||
|
inherited ToolButton4: TToolButton
|
||||||
|
Left = 278
|
||||||
|
ExplicitLeft = 278
|
||||||
|
end
|
||||||
|
inherited ToolButton14: TToolButton
|
||||||
|
Left = 334
|
||||||
|
ExplicitLeft = 334
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited cxGrid: TcxGrid
|
||||||
|
inherited cxGridView: TcxGridDBTableView
|
||||||
|
object cxGridViewDESCUENTO: TcxGridDBColumn [6]
|
||||||
|
Caption = 'Dto'
|
||||||
|
DataBinding.FieldName = 'DESCUENTO'
|
||||||
|
PropertiesClassName = 'TcxCurrencyEditProperties'
|
||||||
|
Properties.DisplayFormat = ',0.00 %;-,0.00 %'
|
||||||
|
Properties.EditFormat = ',0.00;-,0.00'
|
||||||
|
Properties.MaxValue = 100.000000000000000000
|
||||||
|
end
|
||||||
|
object cxGridViewIMPORTENETO: TcxGridDBColumn [7]
|
||||||
|
Caption = 'Importe neto'
|
||||||
|
DataBinding.ValueType = 'Currency'
|
||||||
|
PropertiesClassName = 'TcxCurrencyEditProperties'
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.DisplayFormat = ',0.00 '#8364';-,0.00 '#8364
|
||||||
|
Properties.EditFormat = ',0.00 '#8364';-,0.00 '#8364
|
||||||
|
Properties.ReadOnly = True
|
||||||
|
Properties.OnValidate = cxGridViewIMPORTENETOPropertiesValidate
|
||||||
|
OnGetDisplayText = cxGridViewIMPORTENETOGetDisplayText
|
||||||
|
HeaderAlignmentHorz = taRightJustify
|
||||||
|
Options.Editing = False
|
||||||
|
end
|
||||||
|
object cxGridViewIMPORTEPORTE: TcxGridDBColumn [8]
|
||||||
|
Caption = 'Importe porte'
|
||||||
|
DataBinding.FieldName = 'IMPORTE_PORTE'
|
||||||
|
PropertiesClassName = 'TcxCurrencyEditProperties'
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.EditFormat = ',0.00 '#8364';-,0.00 '#8364
|
||||||
|
HeaderAlignmentHorz = taRightJustify
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited TBXDock1: TTBXDock
|
||||||
|
inherited TBXToolbar1: TTBXToolbar
|
||||||
|
ExplicitWidth = 447
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited ActionListContenido: TActionList
|
||||||
|
inherited actAnadir: TAction
|
||||||
|
Caption = 'A'#241'adir concepto'
|
||||||
|
end
|
||||||
|
inherited actEliminar: TAction
|
||||||
|
Caption = 'Eliminar concepto'
|
||||||
|
end
|
||||||
|
inherited RichEditBold1: TRichEditBold
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited RichEditItalic1: TRichEditItalic
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited RichEditUnderline1: TRichEditUnderline
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited RichEditAlignLeft1: TRichEditAlignLeft
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited RichEditAlignCenter1: TRichEditAlignCenter
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited RichEditAlignRight1: TRichEditAlignRight
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited FontEdit1: TFontEdit
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
inherited RichEditAlignRight2: TRichEditAlignRight
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
75
Source/GUIBase/uViewDetallesDTO.pas
Normal file
75
Source/GUIBase/uViewDetallesDTO.pas
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
unit uViewDetallesDTO;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewDetallesBase, cxStyles, cxCustomData, cxGraphics, cxFilter,
|
||||||
|
cxData, cxDataStorage, cxEdit, DB, cxDBData, cxImageComboBox, cxRichEdit,
|
||||||
|
cxMaskEdit, cxCurrencyEdit, cxCheckBox, ImgList, PngImageList, uDADataTable,
|
||||||
|
StdActns, ExtActns, ActnList, TB2Item, TBX, TB2Dock, TB2Toolbar, cxGridLevel,
|
||||||
|
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
|
||||||
|
cxControls, cxGridCustomView, cxGrid, ComCtrls, StdCtrls, JvExStdCtrls,
|
||||||
|
JvCombobox, JvColorCombo, ToolWin;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewDetallesDTO = interface(IViewDetallesBase)
|
||||||
|
['{0D221FFB-9F43-48FC-9AE7-0AD0F0791AD1}']
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfrViewDetallesDTO = class(TfrViewDetallesBase, IViewDetallesDTO)
|
||||||
|
cxGridViewDESCUENTO: TcxGridDBColumn;
|
||||||
|
cxGridViewIMPORTEPORTE: TcxGridDBColumn;
|
||||||
|
cxGridViewIMPORTENETO: TcxGridDBColumn;
|
||||||
|
procedure cxGridViewIMPORTENETOGetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
|
||||||
|
var AText: string);
|
||||||
|
procedure cxGridViewIMPORTENETOPropertiesValidate(Sender: TObject;
|
||||||
|
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
||||||
|
protected
|
||||||
|
function HayQueRecalcular(AItem: TcxCustomGridTableItem): Boolean; override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
{ TfrViewDetallesDTO }
|
||||||
|
|
||||||
|
procedure TfrViewDetallesDTO.cxGridViewIMPORTENETOGetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
|
||||||
|
var AText: string);
|
||||||
|
var
|
||||||
|
ImporteNeto : Double;
|
||||||
|
begin
|
||||||
|
//Se encarga de mostrar el campo calculado de importe neto
|
||||||
|
ImporteNeto := -1;
|
||||||
|
|
||||||
|
if not VarIsNull(ARecord.Values[cxGridViewIMPORTEUNIDAD.Index]) then
|
||||||
|
if not VarIsNull(ARecord.Values[cxGridViewDESCUENTO.Index]) then
|
||||||
|
ImporteNeto := ARecord.Values[cxGridViewIMPORTEUNIDAD.Index] - ((ARecord.Values[cxGridViewIMPORTEUNIDAD.Index] * ARecord.Values[cxGridViewDESCUENTO.Index])/100)
|
||||||
|
else
|
||||||
|
ImporteNeto := ARecord.Values[cxGridViewIMPORTEUNIDAD.Index];
|
||||||
|
|
||||||
|
if (ImporteNeto <> -1) then
|
||||||
|
begin
|
||||||
|
AText := FormatCurr(',0.00 €;-,0.00 €', FloatToCurr(ImporteNeto))
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesDTO.cxGridViewIMPORTENETOPropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption;
|
||||||
|
var Error: Boolean);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if not VarIsNull(DisplayValue) then
|
||||||
|
begin
|
||||||
|
cxGridViewDESCUENTO.DataBinding.Field.Value := ((cxGridViewIMPORTEUNIDAD.DataBinding.Field.Value - DisplayValue) * 100) / cxGridViewIMPORTEUNIDAD.DataBinding.Field.Value;
|
||||||
|
Controller.ActualizarTotales(Detalles);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesDTO.HayQueRecalcular(AItem: TcxCustomGridTableItem): Boolean;
|
||||||
|
begin
|
||||||
|
Result := inherited HayQueRecalcular(AItem);
|
||||||
|
if not Result then
|
||||||
|
Result := (AItem = cxGridViewDESCUENTO) or (AItem = cxGridViewIMPORTEPORTE);
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
238
Source/GUIBase/uViewDetallesGenerico.dfm
Normal file
238
Source/GUIBase/uViewDetallesGenerico.dfm
Normal file
@ -0,0 +1,238 @@
|
|||||||
|
inherited frViewDetallesGenerico: TfrViewDetallesGenerico
|
||||||
|
Width = 503
|
||||||
|
Height = 357
|
||||||
|
ExplicitWidth = 503
|
||||||
|
ExplicitHeight = 357
|
||||||
|
object cxGrid: TcxGrid
|
||||||
|
Left = 0
|
||||||
|
Top = 25
|
||||||
|
Width = 503
|
||||||
|
Height = 332
|
||||||
|
Align = alClient
|
||||||
|
TabOrder = 0
|
||||||
|
LookAndFeel.Kind = lfOffice11
|
||||||
|
LookAndFeel.NativeStyle = True
|
||||||
|
object cxGridView: TcxGridDBTableView
|
||||||
|
NavigatorButtons.ConfirmDelete = False
|
||||||
|
FilterBox.Visible = fvNever
|
||||||
|
OnEditKeyDown = cxGridViewEditKeyDown
|
||||||
|
DataController.DataSource = dsDetalles
|
||||||
|
DataController.Filter.Options = [fcoCaseInsensitive]
|
||||||
|
DataController.KeyFieldNames = 'ID'
|
||||||
|
DataController.Options = [dcoAnsiSort, dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoFocusTopRowAfterSorting, dcoImmediatePost]
|
||||||
|
DataController.Summary.DefaultGroupSummaryItems = <>
|
||||||
|
DataController.Summary.FooterSummaryItems = <>
|
||||||
|
DataController.Summary.SummaryGroups = <>
|
||||||
|
OptionsBehavior.AlwaysShowEditor = True
|
||||||
|
OptionsBehavior.CellHints = True
|
||||||
|
OptionsBehavior.FocusCellOnTab = True
|
||||||
|
OptionsBehavior.GoToNextCellOnEnter = True
|
||||||
|
OptionsBehavior.BestFitMaxRecordCount = 20
|
||||||
|
OptionsBehavior.FocusCellOnCycle = True
|
||||||
|
OptionsCustomize.ColumnFiltering = False
|
||||||
|
OptionsCustomize.ColumnGrouping = False
|
||||||
|
OptionsCustomize.ColumnMoving = False
|
||||||
|
OptionsCustomize.ColumnSorting = False
|
||||||
|
OptionsCustomize.DataRowSizing = True
|
||||||
|
OptionsData.Appending = True
|
||||||
|
OptionsData.CancelOnExit = False
|
||||||
|
OptionsSelection.MultiSelect = True
|
||||||
|
OptionsSelection.UnselectFocusedRecordOnExit = False
|
||||||
|
OptionsView.CellEndEllipsis = True
|
||||||
|
OptionsView.CellAutoHeight = True
|
||||||
|
OptionsView.ColumnAutoWidth = True
|
||||||
|
OptionsView.GridLineColor = cl3DLight
|
||||||
|
OptionsView.GroupByBox = False
|
||||||
|
OptionsView.HeaderEndEllipsis = True
|
||||||
|
OptionsView.Indicator = True
|
||||||
|
object cxGridViewID: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'ID'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object cxGridLevel: TcxGridLevel
|
||||||
|
GridView = cxGridView
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object ToolBar1: TToolBar
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 503
|
||||||
|
Height = 25
|
||||||
|
ButtonWidth = 113
|
||||||
|
Caption = 'ToolBar1'
|
||||||
|
EdgeInner = esNone
|
||||||
|
EdgeOuter = esNone
|
||||||
|
Flat = False
|
||||||
|
Images = ContenidoImageList
|
||||||
|
List = True
|
||||||
|
ParentShowHint = False
|
||||||
|
ShowCaptions = True
|
||||||
|
ShowHint = True
|
||||||
|
TabOrder = 1
|
||||||
|
Transparent = True
|
||||||
|
object ToolButton1: TToolButton
|
||||||
|
Left = 0
|
||||||
|
Top = 2
|
||||||
|
Action = actAnadir
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton4: TToolButton
|
||||||
|
Left = 62
|
||||||
|
Top = 2
|
||||||
|
Action = actModificar
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton5: TToolButton
|
||||||
|
Left = 136
|
||||||
|
Top = 2
|
||||||
|
Width = 8
|
||||||
|
Caption = 'ToolButton5'
|
||||||
|
ImageIndex = 2
|
||||||
|
Style = tbsSeparator
|
||||||
|
end
|
||||||
|
object ToolButton2: TToolButton
|
||||||
|
Left = 144
|
||||||
|
Top = 2
|
||||||
|
Action = actEliminar
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
object ToolButton6: TToolButton
|
||||||
|
Left = 211
|
||||||
|
Top = 2
|
||||||
|
Width = 8
|
||||||
|
Caption = 'ToolButton6'
|
||||||
|
ImageIndex = 2
|
||||||
|
Style = tbsSeparator
|
||||||
|
end
|
||||||
|
object ToolButton7: TToolButton
|
||||||
|
Left = 219
|
||||||
|
Top = 2
|
||||||
|
Action = actAnchoAutomatico
|
||||||
|
AutoSize = True
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dsDetalles: TDADataSource
|
||||||
|
Left = 40
|
||||||
|
Top = 144
|
||||||
|
end
|
||||||
|
object ContenidoImageList: TPngImageList
|
||||||
|
PngImages = <
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000000F84944415478DA
|
||||||
|
63FCFFFF3F03084C59BC03C2200072E33C19616C905E46640372623DF06A06AA
|
||||||
|
6198B77413C3F99DD3194936E0DFBF7F0CD396EE62D051576128AAEB031B42B4
|
||||||
|
0120CDBFFFFC6398BD720F43B0A70DC3CD7B2FC0869CDB318D91A00130CDBF7F
|
||||||
|
FF6558B06E3FD80B3040D00064CDBFFF40F0AA6D47C1722083F01A804D3304FF
|
||||||
|
63D8B2EF147E03F06906D13B0F9DC56D0058E16F540D20FC07C607CA1D387911
|
||||||
|
BB01E991AE043583F847CF5EC16E4052881341CD207CEAE275EC06C406D813D4
|
||||||
|
0CC2E7AFDEC26E40848F2D41CD20B12B37EF603720D8C38AA06610C069809F8B
|
||||||
|
39C3A63D2789C994D80D404EA6C400900100F58BBFF09BC1E25C000000004945
|
||||||
|
4E44AE426082}
|
||||||
|
Name = 'PngImage0'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
61000000097048597300000AEB00000AEB01828B0D5A000002854944415478DA
|
||||||
|
A5935D48536118C7FFAFDB8CCD557E7F34B33167F9119617A91596495D781304
|
||||||
|
451021A651362821B1ABA49B6EA4460961D88542055D84DD6545415992174994
|
||||||
|
9625CC8F9C329D9B5F3BE9CED9D9797BCEA1C932A3A0079EC3CBE13CBFE7FF7F
|
||||||
|
9FF330CE39FE2798FAB80BA4E61559EB2551E67B07279AE8D51FA98F2CC99546
|
||||||
|
031A3D6E5FF329993F631D80B52227A6D7929F9BAEA459D1D73BE8DC3330D6B8
|
||||||
|
1AD206641414DA5A6224E1E8ECA47779660955D532EF642F1371BD74331A14FA
|
||||||
|
9C27A4439F5D88777DAE1B65FD230D11485786B9363D65FD35C1EB4B9817427E
|
||||||
|
9F80C335C05BD53E23B2A934132FB23662B71406C2B14698F38AF0E9EB9473E8
|
||||||
|
E3C8655BD686D6F858A5DA3F27B04511E37E0195B5C0A00AD6003FE5259758F0
|
||||||
|
3AD1843C15125218CCB6AD707FF34EAC93973217041154ECF608D8770E188BD8
|
||||||
|
5A01A8A1DEC5F60CF4980CB0A890E8A47AFFF477EC3F037C8EBE975F006ADC37
|
||||||
|
60A7351E3D061DE222C522A5270047AD82DBAB27B21AC09EDA373525E9A52BCB
|
||||||
|
7E5F4CB4822509BE80848AB3C0C09A806380EE7CA1BDC55EB4CDE17AF2984932
|
||||||
|
75A60CCA088739742A84CE1E49C1010730F41BA03B27CD595C517CB1FFF92B04
|
||||||
|
E6035AF142101DCB12DA743AB413243FA468331D0F01E51780D1154057AAF148
|
||||||
|
D92E7BE794778E8DB92634C901116FA6451CAA27214EC06802AE5227AA839ED2
|
||||||
|
45A0729AC6A406182DD9329C10A7B7F57D18D63A93DF99D92076905F4FB4DF56
|
||||||
|
A08C20ED9476027CD1209C7BD9FBDC947BC1C0E2C9596A4B003E27E2F8E9301E
|
||||||
|
AEB507B700334968A6631D019C759C5F627780822413BA194312CDFB41958C13
|
||||||
|
7FDB4052739000430ECEDD913F313B568F9B8B326AC8F7CCBFAEB27A073F0058
|
||||||
|
5538F0EAB25B380000000049454E44AE426082}
|
||||||
|
Name = 'PngImage1'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD2520000015D4944415478DA
|
||||||
|
63FCFFFF3F03082CDD7212C22000627C2D1891F98CC80644FB98E3D50C54C3D0
|
||||||
|
3B6521C3F99DD3194936E0DFBF7F0CCBB79D6690161366B04C57058B715C6060
|
||||||
|
24CA0090E6DF7FFE31ACD9759621A4D68281352A97E1F7B2C90C8B2E10E10298
|
||||||
|
E6DFBFFF325C5DC2C1F044E912C39B4B4B19984A3AB17BC171E64DACAEE860D0
|
||||||
|
60D0F399C2F0F2D636868587CC18A41A1A18D218F07801DD669866100E699161
|
||||||
|
10D5F6050726411720DB0CD35CDE369B61DED24DD80DF8FDE72FD856107D6319
|
||||||
|
1786E6ED7B4F311C387911BB01611E260C6E73EF80F9110C1F180C182C18C4D5
|
||||||
|
BC5034830C3E7AF60A7603029D0D212E00FA7DEDAA2B0C2D2D210C6B6A9EA068
|
||||||
|
06E15317AF6337C0C75E8F2160D92330FF4E8B0B838B4B0D985D5CE907D70CC2
|
||||||
|
E7AFDEC26E80BBB50E5CD11FA84B60E181C0FF18AEDCBC83DD0027734D829A41
|
||||||
|
00A701B6C66A0C9BF69C24265362370094D348012003002CB76B52FA97B19500
|
||||||
|
00000049454E44AE426082}
|
||||||
|
Name = 'PngImage2'
|
||||||
|
Background = clWindow
|
||||||
|
end
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001124944415478DA
|
||||||
|
63FCFFFF3F03258091620340848147C2FF0B3B1630A24B1223CE08E20CAC0B28
|
||||||
|
0A0098010B361C807BE3E7CF5F0C5FBF7D63F8F2ED3B98D65455C62ADE599ACC
|
||||||
|
886240BCBF3D58E19FBFFF18BE7DFFC5F0EDC72F86D6A98B1826D7E760159FD2
|
||||||
|
908B69C0EF3F7F810A7E337C072ABC71FF15C3FC556B1916F69463155FD45B81
|
||||||
|
3060DAF21DFF93835D18BEFF80D8F0FDC71F8647CFDF334C9CB38061E5D446AC
|
||||||
|
E21B66B7220CE89AB3EE7F6AA80754D16F862F409BDE7FFCC6D0D43F8561DDCC
|
||||||
|
76ACE2FB574C4418503771F1FFB4085F86DB0F5EA3847049633BC3C6F97D58C5
|
||||||
|
CF6E9B8730A0A86DE6FF6FC0D0FDF4F90BC3E72F5FA1F417867FFFFE33589818
|
||||||
|
601587A78381CF4C941A00005C20FBD97F751C0A0000000049454E44AE426082}
|
||||||
|
Name = 'PngImage3'
|
||||||
|
Background = clWindow
|
||||||
|
end>
|
||||||
|
Left = 40
|
||||||
|
Top = 112
|
||||||
|
Bitmap = {}
|
||||||
|
end
|
||||||
|
object ActionListContenido: TActionList
|
||||||
|
Images = ContenidoImageList
|
||||||
|
Left = 40
|
||||||
|
Top = 80
|
||||||
|
object actAnadir: TAction
|
||||||
|
Category = 'Operaciones'
|
||||||
|
Caption = 'A'#241'adir'
|
||||||
|
ImageIndex = 0
|
||||||
|
ShortCut = 45
|
||||||
|
OnExecute = actAnadirExecute
|
||||||
|
OnUpdate = actAnadirUpdate
|
||||||
|
end
|
||||||
|
object actEliminar: TAction
|
||||||
|
Category = 'Operaciones'
|
||||||
|
Caption = 'Eliminar'
|
||||||
|
ImageIndex = 1
|
||||||
|
ShortCut = 16430
|
||||||
|
OnExecute = actEliminarExecute
|
||||||
|
OnUpdate = actEliminarUpdate
|
||||||
|
end
|
||||||
|
object actModificar: TAction
|
||||||
|
Category = 'Operaciones'
|
||||||
|
Caption = 'Modificar'
|
||||||
|
ImageIndex = 2
|
||||||
|
OnExecute = actModificarExecute
|
||||||
|
OnUpdate = actModificarUpdate
|
||||||
|
end
|
||||||
|
object actAnchoAutomatico: TAction
|
||||||
|
Category = 'Operaciones'
|
||||||
|
Caption = 'Ancho autom'#225'tico'
|
||||||
|
ImageIndex = 3
|
||||||
|
OnExecute = actAnchoAutomaticoExecute
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
206
Source/GUIBase/uViewDetallesGenerico.pas
Normal file
206
Source/GUIBase/uViewDetallesGenerico.pas
Normal file
@ -0,0 +1,206 @@
|
|||||||
|
unit uViewDetallesGenerico;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
||||||
|
cxDataStorage, cxEdit, DB, cxDBData, cxTextEdit, ActnList, ImgList,
|
||||||
|
PngImageList, uDADataTable, ComCtrls, ToolWin, cxGridLevel,
|
||||||
|
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
|
||||||
|
cxControls, cxGridCustomView, cxGrid, uDAInterfaces;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfrViewDetallesGenerico = class(TfrViewBase)
|
||||||
|
cxGrid: TcxGrid;
|
||||||
|
cxGridView: TcxGridDBTableView;
|
||||||
|
cxGridViewID: TcxGridDBColumn;
|
||||||
|
cxGridLevel: TcxGridLevel;
|
||||||
|
ToolBar1: TToolBar;
|
||||||
|
ToolButton1: TToolButton;
|
||||||
|
ToolButton2: TToolButton;
|
||||||
|
dsDetalles: TDADataSource;
|
||||||
|
ContenidoImageList: TPngImageList;
|
||||||
|
ActionListContenido: TActionList;
|
||||||
|
actAnadir: TAction;
|
||||||
|
actEliminar: TAction;
|
||||||
|
ToolButton4: TToolButton;
|
||||||
|
actModificar: TAction;
|
||||||
|
ToolButton5: TToolButton;
|
||||||
|
ToolButton6: TToolButton;
|
||||||
|
actAnchoAutomatico: TAction;
|
||||||
|
ToolButton7: TToolButton;
|
||||||
|
procedure cxGridViewEditKeyDown(Sender: TcxCustomGridTableView;
|
||||||
|
AItem: TcxCustomGridTableItem; AEdit: TcxCustomEdit; var Key: Word;
|
||||||
|
Shift: TShiftState);
|
||||||
|
procedure actAnadirExecute(Sender: TObject);
|
||||||
|
procedure actEliminarExecute(Sender: TObject);
|
||||||
|
procedure actEliminarUpdate(Sender: TObject);
|
||||||
|
procedure actAnadirUpdate(Sender: TObject);
|
||||||
|
procedure actAnchoAutomaticoExecute(Sender: TObject);
|
||||||
|
procedure actModificarUpdate(Sender: TObject);
|
||||||
|
procedure actModificarExecute(Sender: TObject);
|
||||||
|
protected
|
||||||
|
function HayDatos : Boolean;
|
||||||
|
procedure AnadirInterno; virtual;
|
||||||
|
procedure ModificarInterno; virtual;
|
||||||
|
procedure EliminarInterno; virtual;
|
||||||
|
|
||||||
|
function GetModified: Boolean; override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
uses
|
||||||
|
uDataTableUtils;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesGenerico.actAnadirExecute(Sender: TObject);
|
||||||
|
var
|
||||||
|
bEsMultiSelect : Boolean;
|
||||||
|
begin
|
||||||
|
// Debo quitar el multiselect porque provoca que se quede seleccionado
|
||||||
|
// el registro actual y no el nuevo registro que voy a añadir
|
||||||
|
bEsMultiSelect := cxGridView.OptionsSelection.MultiSelect;
|
||||||
|
if bEsMultiSelect then
|
||||||
|
cxGridView.OptionsSelection.MultiSelect := False;
|
||||||
|
|
||||||
|
cxGridView.BeginUpdate;
|
||||||
|
try
|
||||||
|
if cxGridView.Controller.EditingController.IsEditing then
|
||||||
|
cxGridView.Controller.EditingController.Edit.PostEditValue;
|
||||||
|
|
||||||
|
AnadirInterno;
|
||||||
|
finally
|
||||||
|
cxGridView.EndUpdate;
|
||||||
|
|
||||||
|
// Dejo la propiedad MultiSelect como estaba
|
||||||
|
if bEsMultiSelect then
|
||||||
|
cxGridView.OptionsSelection.MultiSelect := bEsMultiSelect;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesGenerico.actAnadirUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := Assigned(dsDetalles.DataTable);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesGenerico.actAnchoAutomaticoExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxGridView.ApplyBestFit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesGenerico.actEliminarExecute(Sender: TObject);
|
||||||
|
var
|
||||||
|
AuxTop, AuxRow:Integer;
|
||||||
|
begin
|
||||||
|
cxGridView.BeginUpdate;
|
||||||
|
AuxTop := cxGridView.Controller.TopRowIndex;
|
||||||
|
AuxRow := cxGridView.DataController.FocusedRowIndex;
|
||||||
|
try
|
||||||
|
EliminarInterno;
|
||||||
|
|
||||||
|
//Selecciona en el grid el registro siguiente
|
||||||
|
if (AuxRow < cxGridView.DataController.RowCount-1) then
|
||||||
|
Inc(AuxRow)
|
||||||
|
else
|
||||||
|
Dec(AuxRow);
|
||||||
|
|
||||||
|
if dsDetalles.DataTable.RecordCount > 0 then
|
||||||
|
begin
|
||||||
|
cxGridView.DataController.SelectRows(AuxRow,AuxRow);
|
||||||
|
cxGridView.Controller.TopRowIndex := AuxTop;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
cxGridView.EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesGenerico.actEliminarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := HayDatos;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesGenerico.actModificarExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ModificarInterno;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesGenerico.actModificarUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := HayDatos and
|
||||||
|
(cxGridView.DataController.FocusedRowIndex >= 0)
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesGenerico.AnadirInterno;
|
||||||
|
begin
|
||||||
|
dsDetalles.DataTable.Insert;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesGenerico.cxGridViewEditKeyDown(
|
||||||
|
Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem;
|
||||||
|
AEdit: TcxCustomEdit; var Key: Word; Shift: TShiftState);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxGridView.BeginUpdate;
|
||||||
|
try
|
||||||
|
Case Key of
|
||||||
|
VK_DOWN : begin
|
||||||
|
//En el caso de ser la última fila hacemos un append nosotros no el grid
|
||||||
|
//ya que se saltaria la lógica del controllerDetallesBase
|
||||||
|
if cxGridView.Controller.IsFinish then
|
||||||
|
begin
|
||||||
|
Key := 0;
|
||||||
|
if Sender.Controller.EditingController.IsEditing then
|
||||||
|
Sender.Controller.EditingController.Edit.PostEditValue;
|
||||||
|
actAnadir.Execute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
VK_RETURN, VK_RIGHT
|
||||||
|
: begin
|
||||||
|
//En el caso de ser la última fila hacemos un append nosotros no el grid
|
||||||
|
//ya que se saltaria la lógica del controllerDetallesBase
|
||||||
|
if cxGridView.Controller.IsFinish
|
||||||
|
and AItem.IsLast then
|
||||||
|
begin
|
||||||
|
Key := 0;
|
||||||
|
if Sender.Controller.EditingController.IsEditing then
|
||||||
|
Sender.Controller.EditingController.Edit.PostEditValue;
|
||||||
|
actAnadir.Execute;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
cxGridView.EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesGenerico.EliminarInterno;
|
||||||
|
begin
|
||||||
|
dsDetalles.DataTable.Delete;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesGenerico.GetModified: Boolean;
|
||||||
|
begin
|
||||||
|
Result := DataTableModified(dsDetalles.DataTable) or inherited GetModified;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewDetallesGenerico.HayDatos: Boolean;
|
||||||
|
begin
|
||||||
|
Result := Assigned(dsDetalles.DataTable) and
|
||||||
|
(cxGridView.ViewInfo.VisibleRecordCount > 0)
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewDetallesGenerico.ModificarInterno;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
200
Source/GUIBase/uViewFiltroBase.dfm
Normal file
200
Source/GUIBase/uViewFiltroBase.dfm
Normal file
@ -0,0 +1,200 @@
|
|||||||
|
object frViewFiltroBase: TfrViewFiltroBase
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 565
|
||||||
|
Height = 102
|
||||||
|
TabOrder = 0
|
||||||
|
Visible = False
|
||||||
|
object TBXDockablePanel1: TTBXDockablePanel
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Align = alClient
|
||||||
|
Caption = 'TBXDockablePanel1'
|
||||||
|
CloseButton = False
|
||||||
|
CloseButtonWhenDocked = False
|
||||||
|
DockedHeight = 98
|
||||||
|
DockMode = dmCannotFloatOrChangeDocks
|
||||||
|
FloatingWidth = 128
|
||||||
|
FloatingHeight = 98
|
||||||
|
ShowCaption = False
|
||||||
|
ShowCaptionWhenDocked = False
|
||||||
|
SupportedDocks = [dkStandardDock, dkMultiDock]
|
||||||
|
TabOrder = 0
|
||||||
|
ExplicitWidth = 128
|
||||||
|
ExplicitHeight = 98
|
||||||
|
object dxLayoutControl1: TdxLayoutControl
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 565
|
||||||
|
Height = 68
|
||||||
|
Align = alTop
|
||||||
|
ParentBackground = True
|
||||||
|
TabOrder = 0
|
||||||
|
AutoContentSizes = [acsWidth, acsHeight]
|
||||||
|
ExplicitWidth = 128
|
||||||
|
object txtFiltroTodo: TcxTextEdit
|
||||||
|
Left = 87
|
||||||
|
Top = 10
|
||||||
|
Properties.OnChange = OnCamposFiltroChange
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 0
|
||||||
|
Width = 273
|
||||||
|
end
|
||||||
|
object edtFechaIniFiltro: TcxDateEdit
|
||||||
|
Left = 87
|
||||||
|
Top = 37
|
||||||
|
Properties.OnChange = OnCamposFiltroChange
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.ButtonStyle = bts3D
|
||||||
|
Style.PopupBorderStyle = epbsFrame3D
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 1
|
||||||
|
Width = 121
|
||||||
|
end
|
||||||
|
object edtFechaFinFiltro: TcxDateEdit
|
||||||
|
Left = 350
|
||||||
|
Top = 37
|
||||||
|
Properties.OnChange = OnCamposFiltroChange
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.ButtonStyle = bts3D
|
||||||
|
Style.PopupBorderStyle = epbsFrame3D
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 2
|
||||||
|
Width = 121
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Group_Root: TdxLayoutGroup
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutControl1Item1: TdxLayoutItem
|
||||||
|
Caption = 'Que contenga:'
|
||||||
|
Control = txtFiltroTodo
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Group1: TdxLayoutGroup
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
LayoutDirection = ldHorizontal
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutControl1Item2: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Entre la fecha:'
|
||||||
|
Control = edtFechaIniFiltro
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Item3: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'y'
|
||||||
|
Control = edtFechaFinFiltro
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object TBXAlignmentPanel1: TTBXAlignmentPanel
|
||||||
|
Left = 0
|
||||||
|
Top = 68
|
||||||
|
Width = 565
|
||||||
|
Height = 30
|
||||||
|
Margins.Left = 10
|
||||||
|
Align = alTop
|
||||||
|
TabOrder = 1
|
||||||
|
ExplicitWidth = 128
|
||||||
|
object tbxBotones: TTBXToolbar
|
||||||
|
Left = 10
|
||||||
|
Top = 0
|
||||||
|
Width = 555
|
||||||
|
Height = 30
|
||||||
|
Align = alTop
|
||||||
|
AutoResize = False
|
||||||
|
BorderStyle = bsNone
|
||||||
|
Caption = 'tbxBotones'
|
||||||
|
ChevronHint = 'M'#225's botones|'
|
||||||
|
DockMode = dmCannotFloatOrChangeDocks
|
||||||
|
DockPos = -23
|
||||||
|
DockRow = 1
|
||||||
|
DragHandleStyle = dhNone
|
||||||
|
ParentShowHint = False
|
||||||
|
ShowHint = True
|
||||||
|
TabOrder = 0
|
||||||
|
ExplicitWidth = 118
|
||||||
|
object TBXItem2: TTBXItem
|
||||||
|
Action = actQuitarFiltro
|
||||||
|
DisplayMode = nbdmImageAndText
|
||||||
|
Images = PngImageList
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList
|
||||||
|
Left = 136
|
||||||
|
Top = 16
|
||||||
|
end
|
||||||
|
object ActionList1: TActionList
|
||||||
|
Images = PngImageList
|
||||||
|
Left = 384
|
||||||
|
Top = 72
|
||||||
|
object actQuitarFiltro: TAction
|
||||||
|
Caption = 'Quitar filtros y ver todo'
|
||||||
|
ImageIndex = 0
|
||||||
|
OnExecute = actQuitarFiltroExecute
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object PngImageList: TPngImageList
|
||||||
|
PngImages = <
|
||||||
|
item
|
||||||
|
PngImage.Data = {
|
||||||
|
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
||||||
|
610000000970485973000017120000171201679FD252000001B04944415478DA
|
||||||
|
63FCFFFF3F03258071D400064674018780D0A7823C7C09EB97CCDD8D4B535EC3
|
||||||
|
C493AF1EDC305BB1603A2323BA66090111A9272F9F301CD9BE99119701110999
|
||||||
|
FF616A189135FFF9F9430A9F4618B0F1F405FB1B6E0021CDD70CF8FF0B09B0D7
|
||||||
|
481C78D50AE2FF7295B1FBC82F7AF0C585F30C8C96EE5ED3E425E533618A1F3E
|
||||||
|
7F385D4A5A79C3DA79937781F8C149B96E6627F7F4F8B23ED3DD226BC2F04840
|
||||||
|
96A19CE72DC3E7E387182EDEF8389911E49F1913DA192EBCE06778FBF727C3E3
|
||||||
|
CF0C0C276614A2B860F98C690C9BAA5A1854F7F530282A4830DC7FF08261E657
|
||||||
|
318689B76F33820DC8A89806D70C026B1A43E19A65C46518C0F25F3F3048CE28
|
||||||
|
6050BFBC9A61DB7F198693AE390C535AF220068496F6C3355F7EFC9EE1E6BC34
|
||||||
|
782CC0E47F5EBFC060D7E5C170E8BD208301F73B06BE7F1FFD642E316C6604F9
|
||||||
|
F1D9D3BB01CC4CCCE070F8FBEF2F4618FC7D723D22F3EF93C4FB37DE301C1296
|
||||||
|
D9E8FBE68198BED87F4BFEBF1FED084619087CB4178BB974FFD3D42B8F7E7801
|
||||||
|
6D390A12DB28C4BA51558ECB8F2803D6F1B2C67CFEF5C728EEE7FF62A006701A
|
||||||
|
98C0C0202ECBCDB00A00547CD715F016991D0000000049454E44AE426082}
|
||||||
|
Name = 'PngImage0'
|
||||||
|
Background = clWindow
|
||||||
|
end>
|
||||||
|
Left = 424
|
||||||
|
Top = 72
|
||||||
|
Bitmap = {}
|
||||||
|
end
|
||||||
|
end
|
||||||
144
Source/GUIBase/uViewFiltroBase.pas
Normal file
144
Source/GUIBase/uViewFiltroBase.pas
Normal file
@ -0,0 +1,144 @@
|
|||||||
|
unit uViewFiltroBase;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, cxMaskEdit, cxDropDownEdit, cxCalendar, dxLayoutControl,
|
||||||
|
cxContainer, cxEdit, cxTextEdit, dxLayoutLookAndFeels, cxControls,
|
||||||
|
StdCtrls, Buttons, cxRadioGroup, TBXDkPanels, TB2ExtItems, TBXExtItems,
|
||||||
|
TBX, TB2Item, TB2Dock, TB2Toolbar, ActnList, ImgList, PngImageList;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewFiltroBase = interface
|
||||||
|
['{0D0EA630-BF93-4BA1-93C2-FD5A5B0CBEED}']
|
||||||
|
function GetFiltrosChange: TNotifyEvent;
|
||||||
|
procedure SetFiltrosChange(const Value: TNotifyEvent);
|
||||||
|
property OnFiltrosChange: TNotifyEvent read GetFiltrosChange write SetFiltrosChange;
|
||||||
|
|
||||||
|
function GetVerFiltros: Boolean;
|
||||||
|
procedure SetVerFiltros(const Value: Boolean);
|
||||||
|
property VerFiltros: Boolean read GetVerFiltros write SetVerFiltros;
|
||||||
|
|
||||||
|
function GetTexto: String;
|
||||||
|
procedure SetTexto(const Value: String);
|
||||||
|
property Texto: String read GetTexto write SetTexto;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfrViewFiltroBase = class(TFrame, IViewFiltroBase)
|
||||||
|
dxLayoutControl1Group_Root: TdxLayoutGroup;
|
||||||
|
dxLayoutControl1: TdxLayoutControl;
|
||||||
|
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
|
||||||
|
dxLayoutControl1Item1: TdxLayoutItem;
|
||||||
|
txtFiltroTodo: TcxTextEdit;
|
||||||
|
dxLayoutControl1Item2: TdxLayoutItem;
|
||||||
|
edtFechaIniFiltro: TcxDateEdit;
|
||||||
|
dxLayoutControl1Item3: TdxLayoutItem;
|
||||||
|
edtFechaFinFiltro: TcxDateEdit;
|
||||||
|
dxLayoutControl1Group1: TdxLayoutGroup;
|
||||||
|
TBXDockablePanel1: TTBXDockablePanel;
|
||||||
|
ActionList1: TActionList;
|
||||||
|
actQuitarFiltro: TAction;
|
||||||
|
PngImageList: TPngImageList;
|
||||||
|
tbxBotones: TTBXToolbar;
|
||||||
|
TBXItem2: TTBXItem;
|
||||||
|
TBXAlignmentPanel1: TTBXAlignmentPanel;
|
||||||
|
procedure OnCamposFiltroChange(Sender: TObject);
|
||||||
|
procedure actQuitarFiltroExecute(Sender: TObject);
|
||||||
|
|
||||||
|
private
|
||||||
|
FOnFiltrosChange: TNotifyEvent;
|
||||||
|
|
||||||
|
function GetFiltrosChange: TNotifyEvent;
|
||||||
|
procedure SetFiltrosChange(const Value: TNotifyEvent);
|
||||||
|
function GetVerFiltros: Boolean;
|
||||||
|
procedure SetVerFiltros(const Value: Boolean);
|
||||||
|
function GetTexto: String;
|
||||||
|
procedure SetTexto(const Value: String);
|
||||||
|
|
||||||
|
protected
|
||||||
|
procedure LimpiarCampos; virtual;
|
||||||
|
function ValidarCampos: Boolean; virtual;
|
||||||
|
|
||||||
|
public
|
||||||
|
property OnFiltrosChange: TNotifyEvent read GetFiltrosChange write SetFiltrosChange;
|
||||||
|
property VerFiltros: Boolean read GetVerFiltros write SetVerFiltros;
|
||||||
|
property Texto: String read GetTexto write SetTexto;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
uses uDialogUtils;
|
||||||
|
|
||||||
|
{ TfrViewFiltroBase }
|
||||||
|
|
||||||
|
function TfrViewFiltroBase.GetFiltrosChange: TNotifyEvent;
|
||||||
|
begin
|
||||||
|
Result := FOnFiltrosChange;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewFiltroBase.SetFiltrosChange(const Value: TNotifyEvent);
|
||||||
|
begin
|
||||||
|
FOnFiltrosChange := Value;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewFiltroBase.GetVerFiltros: Boolean;
|
||||||
|
begin
|
||||||
|
Result := Self.Visible;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewFiltroBase.SetVerFiltros(const Value: Boolean);
|
||||||
|
begin
|
||||||
|
Self.Visible := Value;
|
||||||
|
if not Self.Visible then
|
||||||
|
actQuitarFiltro.Execute;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewFiltroBase.LimpiarCampos;
|
||||||
|
begin
|
||||||
|
txtFiltroTodo.Clear;
|
||||||
|
edtFechaIniFiltro.Clear;
|
||||||
|
edtFechaFinFiltro.Clear;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewFiltroBase.OnCamposFiltroChange(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if ValidarCampos then
|
||||||
|
if Assigned(FOnFiltrosChange) then
|
||||||
|
FOnFiltrosChange(Sender);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewFiltroBase.ValidarCampos: Boolean;
|
||||||
|
begin
|
||||||
|
Result := True;
|
||||||
|
|
||||||
|
if not VarIsNull(edtFechaIniFiltro.EditValue) and not VarIsNull(edtFechaFinFiltro.EditValue) then
|
||||||
|
begin
|
||||||
|
if (edtFechaIniFiltro.EditValue > edtFechaFinFiltro.EditValue) then
|
||||||
|
begin
|
||||||
|
ShowWarningMessage('La fecha de inicio debe ser anterior a la fecha final');
|
||||||
|
edtFechaIniFiltro.SetFocus;
|
||||||
|
Result := False;
|
||||||
|
end
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewFiltroBase.actQuitarFiltroExecute(Sender: TObject);
|
||||||
|
begin
|
||||||
|
LimpiarCampos;
|
||||||
|
if Assigned(FOnFiltrosChange) then
|
||||||
|
FOnFiltrosChange(Sender);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewFiltroBase.GetTexto: String;
|
||||||
|
begin
|
||||||
|
Result := txtFiltroTodo.Text;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewFiltroBase.SetTexto(const Value: String);
|
||||||
|
begin
|
||||||
|
txtFiltroTodo.Text := Value;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
47
Source/GUIBase/uViewFormaPago.dfm
Normal file
47
Source/GUIBase/uViewFormaPago.dfm
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
inherited frViewFormaPago: TfrViewFormaPago
|
||||||
|
Width = 300
|
||||||
|
ExplicitWidth = 300
|
||||||
|
DesignSize = (
|
||||||
|
300
|
||||||
|
291)
|
||||||
|
object Label5: TLabel
|
||||||
|
Left = 8
|
||||||
|
Top = 8
|
||||||
|
Width = 85
|
||||||
|
Height = 13
|
||||||
|
Caption = 'Forma de pago'
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clActiveCaption
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'MS Sans Serif'
|
||||||
|
Font.Style = [fsBold]
|
||||||
|
ParentFont = False
|
||||||
|
end
|
||||||
|
object Bevel1: TBevel
|
||||||
|
Left = 96
|
||||||
|
Top = 8
|
||||||
|
Width = 192
|
||||||
|
Height = 9
|
||||||
|
Anchors = [akLeft, akTop, akRight]
|
||||||
|
Shape = bsBottomLine
|
||||||
|
end
|
||||||
|
object memFormaPago: TcxDBMemo
|
||||||
|
Left = 16
|
||||||
|
Top = 32
|
||||||
|
Anchors = [akLeft, akTop, akRight, akBottom]
|
||||||
|
DataBinding.DataField = 'FORMA_PAGO'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Properties.ScrollBars = ssVertical
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 0
|
||||||
|
Height = 175
|
||||||
|
Width = 269
|
||||||
|
end
|
||||||
|
object DADataSource: TDADataSource
|
||||||
|
Left = 16
|
||||||
|
Top = 48
|
||||||
|
end
|
||||||
|
end
|
||||||
26
Source/GUIBase/uViewFormaPago.pas
Normal file
26
Source/GUIBase/uViewFormaPago.pas
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
unit uViewFormaPago;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, DB, uDADataTable, cxMemo, cxDBEdit, cxControls,
|
||||||
|
cxContainer, cxEdit, cxTextEdit, ExtCtrls, StdCtrls;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfrViewFormaPago = class(TfrViewBase)
|
||||||
|
DADataSource: TDADataSource;
|
||||||
|
memFormaPago: TcxDBMemo;
|
||||||
|
Label5: TLabel;
|
||||||
|
Bevel1: TBevel;
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
end.
|
||||||
332
Source/GUIBase/uViewGrid.dfm
Normal file
332
Source/GUIBase/uViewGrid.dfm
Normal file
@ -0,0 +1,332 @@
|
|||||||
|
inherited frViewGrid: TfrViewGrid
|
||||||
|
Width = 554
|
||||||
|
Height = 594
|
||||||
|
ExplicitWidth = 554
|
||||||
|
ExplicitHeight = 594
|
||||||
|
object cxGrid: TcxGrid [0]
|
||||||
|
Left = 0
|
||||||
|
Top = 102
|
||||||
|
Width = 554
|
||||||
|
Height = 466
|
||||||
|
Align = alClient
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = []
|
||||||
|
ParentFont = False
|
||||||
|
TabOrder = 0
|
||||||
|
LookAndFeel.Kind = lfOffice11
|
||||||
|
LookAndFeel.NativeStyle = True
|
||||||
|
object cxGridView: TcxGridDBTableView
|
||||||
|
OnDblClick = cxGridViewDblClick
|
||||||
|
NavigatorButtons.ConfirmDelete = False
|
||||||
|
FilterBox.Visible = fvNever
|
||||||
|
DataController.DataSource = dsDataSource
|
||||||
|
DataController.Filter.Options = [fcoCaseInsensitive]
|
||||||
|
DataController.Options = [dcoAnsiSort, dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoSortByDisplayText]
|
||||||
|
DataController.Summary.DefaultGroupSummaryItems = <>
|
||||||
|
DataController.Summary.FooterSummaryItems = <>
|
||||||
|
DataController.Summary.SummaryGroups = <>
|
||||||
|
OptionsBehavior.CellHints = True
|
||||||
|
OptionsCustomize.ColumnFiltering = False
|
||||||
|
OptionsCustomize.ColumnGrouping = False
|
||||||
|
OptionsCustomize.ColumnsQuickCustomization = True
|
||||||
|
OptionsData.Deleting = False
|
||||||
|
OptionsData.DeletingConfirmation = False
|
||||||
|
OptionsData.Editing = False
|
||||||
|
OptionsData.Inserting = False
|
||||||
|
OptionsSelection.CellSelect = False
|
||||||
|
OptionsSelection.UnselectFocusedRecordOnExit = False
|
||||||
|
OptionsView.CellEndEllipsis = True
|
||||||
|
OptionsView.CellAutoHeight = True
|
||||||
|
OptionsView.ColumnAutoWidth = True
|
||||||
|
OptionsView.DataRowHeight = 22
|
||||||
|
OptionsView.Footer = True
|
||||||
|
OptionsView.GridLineColor = clHighlight
|
||||||
|
OptionsView.GridLines = glHorizontal
|
||||||
|
OptionsView.GroupByBox = False
|
||||||
|
OptionsView.HeaderEndEllipsis = True
|
||||||
|
Styles.Inactive = cxStyleSelection
|
||||||
|
Styles.Selection = cxStyleSelection
|
||||||
|
Styles.OnGetContentStyle = cxGridViewStylesGetContentStyle
|
||||||
|
end
|
||||||
|
object cxGridLevel: TcxGridLevel
|
||||||
|
GridView = cxGridView
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inline frViewFiltroBase1: TfrViewFiltroBase [1]
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 554
|
||||||
|
Height = 102
|
||||||
|
Align = alTop
|
||||||
|
TabOrder = 1
|
||||||
|
Visible = False
|
||||||
|
ExplicitWidth = 554
|
||||||
|
inherited TBXDockablePanel1: TTBXDockablePanel
|
||||||
|
ExplicitWidth = 554
|
||||||
|
ExplicitHeight = 102
|
||||||
|
inherited dxLayoutControl1: TdxLayoutControl
|
||||||
|
Width = 554
|
||||||
|
ExplicitWidth = 554
|
||||||
|
inherited txtFiltroTodo: TcxTextEdit
|
||||||
|
ExplicitWidth = 273
|
||||||
|
Width = 273
|
||||||
|
end
|
||||||
|
inherited edtFechaIniFiltro: TcxDateEdit
|
||||||
|
ExplicitWidth = 121
|
||||||
|
Width = 121
|
||||||
|
end
|
||||||
|
inherited edtFechaFinFiltro: TcxDateEdit
|
||||||
|
Left = 344
|
||||||
|
ExplicitLeft = 344
|
||||||
|
ExplicitWidth = 121
|
||||||
|
Width = 121
|
||||||
|
end
|
||||||
|
end
|
||||||
|
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
|
||||||
|
Width = 554
|
||||||
|
ExplicitWidth = 554
|
||||||
|
inherited tbxBotones: TTBXToolbar
|
||||||
|
Width = 544
|
||||||
|
ExplicitWidth = 544
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object pnlAgrupaciones: TTBXDockablePanel
|
||||||
|
Left = 0
|
||||||
|
Top = 568
|
||||||
|
MinClientHeight = 8
|
||||||
|
Align = alBottom
|
||||||
|
Caption = 'pnlAgrupaciones'
|
||||||
|
DockedHeight = 26
|
||||||
|
FloatingWidth = 128
|
||||||
|
FloatingHeight = 26
|
||||||
|
SupportedDocks = [dkStandardDock, dkMultiDock]
|
||||||
|
TabOrder = 2
|
||||||
|
Visible = False
|
||||||
|
object TBXAlignmentPanel1: TTBXAlignmentPanel
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 554
|
||||||
|
Height = 26
|
||||||
|
Margins.Left = 10
|
||||||
|
Align = alTop
|
||||||
|
TabOrder = 0
|
||||||
|
object TBXToolbar1: TTBXToolbar
|
||||||
|
Left = 10
|
||||||
|
Top = 0
|
||||||
|
Width = 544
|
||||||
|
Height = 26
|
||||||
|
Align = alTop
|
||||||
|
AutoResize = False
|
||||||
|
Caption = 'TBXToolbar1'
|
||||||
|
TabOrder = 0
|
||||||
|
object TBXItem1: TTBXItem
|
||||||
|
Action = actQuitarAgrupaciones
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxComponentPrinter: TdxComponentPrinter
|
||||||
|
CurrentLink = dxComponentPrinterLink
|
||||||
|
PreviewOptions.EnableOptions = [peoCanChangeMargins, peoPageBackground, peoPageSetup, peoPreferences, peoPrint]
|
||||||
|
PreviewOptions.VisibleOptions = [pvoPageBackground, pvoPageSetup, pvoPreferences, pvoPrint, pvoPrintStyles, pvoReportFileOperations, pvoPageMargins]
|
||||||
|
PreviewOptions.WindowState = wsMaximized
|
||||||
|
Version = 0
|
||||||
|
Left = 368
|
||||||
|
Top = 128
|
||||||
|
object dxComponentPrinterLink: TdxGridReportLink
|
||||||
|
Active = True
|
||||||
|
Component = cxGrid
|
||||||
|
PrinterPage.DMPaper = 9
|
||||||
|
PrinterPage.Footer = 6350
|
||||||
|
PrinterPage.GrayShading = True
|
||||||
|
PrinterPage.Header = 6350
|
||||||
|
PrinterPage.Margins.Bottom = 12700
|
||||||
|
PrinterPage.Margins.Left = 12700
|
||||||
|
PrinterPage.Margins.Right = 12700
|
||||||
|
PrinterPage.Margins.Top = 12700
|
||||||
|
PrinterPage.PageSize.X = 210000
|
||||||
|
PrinterPage.PageSize.Y = 297000
|
||||||
|
PrinterPage.ScaleMode = smFit
|
||||||
|
PrinterPage._dxMeasurementUnits_ = 0
|
||||||
|
PrinterPage._dxLastMU_ = 2
|
||||||
|
ReportDocument.CreationDate = 39296.809313506940000000
|
||||||
|
StyleManager = dxPrintStyleManager1
|
||||||
|
OptionsCards.Shadow.Depth = 0
|
||||||
|
OptionsExpanding.ExpandGroupRows = True
|
||||||
|
OptionsExpanding.ExpandMasterRows = True
|
||||||
|
OptionsFormatting.SuppressBackgroundBitmaps = True
|
||||||
|
OptionsFormatting.UseNativeStyles = True
|
||||||
|
OptionsFormatting.ConsumeSelectionStyle = True
|
||||||
|
OptionsLevels.Unwrap = True
|
||||||
|
OptionsRefinements.TransparentGraphics = True
|
||||||
|
OptionsSize.AutoWidth = True
|
||||||
|
OptionsView.Caption = False
|
||||||
|
OptionsView.ExpandButtons = False
|
||||||
|
OptionsView.FilterBar = False
|
||||||
|
StyleRepository = cxStyleRepositoryInforme
|
||||||
|
Styles.Content = cxStyleContentInforme
|
||||||
|
Styles.Footer = cxStyleFooterInforme
|
||||||
|
Styles.Group = cxStyleGroupInforme
|
||||||
|
Styles.Header = cxStyleHeaderInforme
|
||||||
|
Styles.Selection = cxStyleSelectionInforme
|
||||||
|
BuiltInReportLink = True
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxPSEngineController1: TdxPSEngineController
|
||||||
|
LookAndFeel = pslfOffice11
|
||||||
|
UseNativeLookAndFeel = False
|
||||||
|
Left = 336
|
||||||
|
Top = 128
|
||||||
|
end
|
||||||
|
object cxStyleRepository1: TcxStyleRepository
|
||||||
|
Left = 296
|
||||||
|
Top = 128
|
||||||
|
object cxStyleEven: TcxStyle
|
||||||
|
end
|
||||||
|
object cxStyleOdd: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = clInactiveCaptionText
|
||||||
|
end
|
||||||
|
object cxStyleSelection: TcxStyle
|
||||||
|
AssignedValues = [svColor, svTextColor]
|
||||||
|
Color = clHighlight
|
||||||
|
TextColor = clHighlightText
|
||||||
|
end
|
||||||
|
object cxStyleSinOrden: TcxStyle
|
||||||
|
end
|
||||||
|
object cxStyleConOrden: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = 16119285
|
||||||
|
end
|
||||||
|
object cxStyleFiltered: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = clInfoBk
|
||||||
|
end
|
||||||
|
object cxStyleFilteredConOrden: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = 14546175
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object cxViewGridPopupMenu: TcxGridPopupMenu
|
||||||
|
Grid = cxGrid
|
||||||
|
PopupMenus = <
|
||||||
|
item
|
||||||
|
GridView = cxGridView
|
||||||
|
HitTypes = [gvhtCell]
|
||||||
|
Index = 0
|
||||||
|
end>
|
||||||
|
Left = 264
|
||||||
|
Top = 128
|
||||||
|
end
|
||||||
|
object ActionList1: TActionList
|
||||||
|
Left = 400
|
||||||
|
Top = 360
|
||||||
|
object actQuitarAgrupaciones: TAction
|
||||||
|
Caption = 'Quitar agrupaciones'
|
||||||
|
OnExecute = actQuitarAgrupacionesExecute
|
||||||
|
OnUpdate = actQuitarAgrupacionesUpdate
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object PngImageList10: TPngImageList
|
||||||
|
PngImages = <>
|
||||||
|
Left = 368
|
||||||
|
Top = 360
|
||||||
|
end
|
||||||
|
object cxStyleRepositoryInforme: TcxStyleRepository
|
||||||
|
Left = 368
|
||||||
|
Top = 160
|
||||||
|
object cxStyleContentInforme: TcxStyle
|
||||||
|
AssignedValues = [svColor, svFont, svTextColor]
|
||||||
|
Color = clWhite
|
||||||
|
Font.Charset = ANSI_CHARSET
|
||||||
|
Font.Color = clBlack
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = []
|
||||||
|
TextColor = clBlack
|
||||||
|
end
|
||||||
|
object cxStyleFooterInforme: TcxStyle
|
||||||
|
AssignedValues = [svColor, svFont, svTextColor]
|
||||||
|
Color = 14803425
|
||||||
|
Font.Charset = ANSI_CHARSET
|
||||||
|
Font.Color = clBlack
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = [fsBold]
|
||||||
|
TextColor = clBlack
|
||||||
|
end
|
||||||
|
object cxStyleGroupInforme: TcxStyle
|
||||||
|
AssignedValues = [svColor, svFont, svTextColor]
|
||||||
|
Color = clWhite
|
||||||
|
Font.Charset = ANSI_CHARSET
|
||||||
|
Font.Color = clBlack
|
||||||
|
Font.Height = -12
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = [fsBold]
|
||||||
|
TextColor = clBlack
|
||||||
|
end
|
||||||
|
object cxStyleHeaderInforme: TcxStyle
|
||||||
|
AssignedValues = [svColor, svFont, svTextColor]
|
||||||
|
Color = 14803425
|
||||||
|
Font.Charset = ANSI_CHARSET
|
||||||
|
Font.Color = clBlack
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = [fsBold]
|
||||||
|
TextColor = clBlack
|
||||||
|
end
|
||||||
|
object cxStyleSelectionInforme: TcxStyle
|
||||||
|
AssignedValues = [svColor, svFont, svTextColor]
|
||||||
|
Color = clWhite
|
||||||
|
Font.Charset = ANSI_CHARSET
|
||||||
|
Font.Color = clBlack
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = []
|
||||||
|
TextColor = clBlack
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxPrintStyleManager1: TdxPrintStyleManager
|
||||||
|
CurrentStyle = dxPrintStyleManager1Style1
|
||||||
|
Version = 0
|
||||||
|
Left = 336
|
||||||
|
Top = 160
|
||||||
|
object dxPrintStyleManager1Style1: TdxPSPrintStyle
|
||||||
|
PrinterPage.DMPaper = 9
|
||||||
|
PrinterPage.Footer = 6350
|
||||||
|
PrinterPage.Header = 6350
|
||||||
|
PrinterPage.Margins.Bottom = 20000
|
||||||
|
PrinterPage.Margins.Left = 12700
|
||||||
|
PrinterPage.Margins.Right = 12700
|
||||||
|
PrinterPage.Margins.Top = 20000
|
||||||
|
PrinterPage.PageFooter.CenterTitle.Strings = (
|
||||||
|
'[Date & Time Printed]')
|
||||||
|
PrinterPage.PageFooter.Font.Charset = DEFAULT_CHARSET
|
||||||
|
PrinterPage.PageFooter.Font.Color = clBlack
|
||||||
|
PrinterPage.PageFooter.Font.Height = -12
|
||||||
|
PrinterPage.PageFooter.Font.Name = 'Tahoma'
|
||||||
|
PrinterPage.PageFooter.Font.Style = []
|
||||||
|
PrinterPage.PageFooter.LeftTitle.Strings = (
|
||||||
|
'LUIS LEON REPRESENTACIONES S.L.')
|
||||||
|
PrinterPage.PageFooter.RightTitle.Strings = (
|
||||||
|
'[Page #] de [Total Pages]')
|
||||||
|
PrinterPage.PageHeader.Font.Charset = DEFAULT_CHARSET
|
||||||
|
PrinterPage.PageHeader.Font.Color = clBlack
|
||||||
|
PrinterPage.PageHeader.Font.Height = -15
|
||||||
|
PrinterPage.PageHeader.Font.Name = 'Tahoma'
|
||||||
|
PrinterPage.PageHeader.Font.Style = []
|
||||||
|
PrinterPage.PageHeader.LeftTitle.Strings = (
|
||||||
|
'')
|
||||||
|
PrinterPage.PageSize.X = 210000
|
||||||
|
PrinterPage.PageSize.Y = 297000
|
||||||
|
PrinterPage._dxMeasurementUnits_ = 0
|
||||||
|
PrinterPage._dxLastMU_ = 2
|
||||||
|
BuiltInStyle = True
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
221
Source/GUIBase/uViewGrid.pas
Normal file
221
Source/GUIBase/uViewGrid.pas
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
{*******************************************************}
|
||||||
|
{ }
|
||||||
|
{ Administración de puntos de venta }
|
||||||
|
{ }
|
||||||
|
{ Copyright (C) 2006 Rodax Software S.L. }
|
||||||
|
{ }
|
||||||
|
{*******************************************************}
|
||||||
|
|
||||||
|
unit uViewGrid;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
||||||
|
cxDataStorage, cxEdit, DB, cxDBData, uDADataTable, cxGridLevel,
|
||||||
|
cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView,
|
||||||
|
cxGridTableView, cxGridDBTableView, cxGrid, Menus, ActnList, Grids,
|
||||||
|
DBGrids, JvComponent, JvFormAutoSize, dxPSGlbl, dxPSUtl, dxPSEngn,
|
||||||
|
dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns,
|
||||||
|
dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk, dxPrnDlg,
|
||||||
|
cxIntlPrintSys3, dxPSPrvwAdv, uViewGridBase, cxGridCustomPopupMenu,
|
||||||
|
cxGridPopupMenu, uViewFiltroBase, ComCtrls, cxPC, ImgList, PngImageList,
|
||||||
|
TB2Item, TBX, TB2Dock, TB2Toolbar, TBXDkPanels, dxPgsDlg;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewGrid = interface(IViewGridBase)
|
||||||
|
['{7EA40980-AD73-4590-A53A-932316C7B121}']
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfrViewGrid = class(TfrViewGridBase, IViewGrid)
|
||||||
|
cxGrid: TcxGrid;
|
||||||
|
cxGridLevel: TcxGridLevel;
|
||||||
|
cxGridView: TcxGridDBTableView;
|
||||||
|
dxComponentPrinter: TdxComponentPrinter;
|
||||||
|
dxPSEngineController1: TdxPSEngineController;
|
||||||
|
cxStyleRepository1: TcxStyleRepository;
|
||||||
|
cxStyleEven: TcxStyle;
|
||||||
|
cxStyleOdd: TcxStyle;
|
||||||
|
cxStyleSelection: TcxStyle;
|
||||||
|
cxStyleSinOrden: TcxStyle;
|
||||||
|
cxStyleConOrden: TcxStyle;
|
||||||
|
cxViewGridPopupMenu: TcxGridPopupMenu;
|
||||||
|
dxComponentPrinterLink: TdxGridReportLink;
|
||||||
|
cxStyleFiltered: TcxStyle;
|
||||||
|
cxStyleFilteredConOrden: TcxStyle;
|
||||||
|
frViewFiltroBase1: TfrViewFiltroBase;
|
||||||
|
ActionList1: TActionList;
|
||||||
|
PngImageList10: TPngImageList;
|
||||||
|
actQuitarAgrupaciones: TAction;
|
||||||
|
pnlAgrupaciones: TTBXDockablePanel;
|
||||||
|
TBXAlignmentPanel1: TTBXAlignmentPanel;
|
||||||
|
TBXToolbar1: TTBXToolbar;
|
||||||
|
TBXItem1: TTBXItem;
|
||||||
|
cxStyleRepositoryInforme: TcxStyleRepository;
|
||||||
|
cxStyleContentInforme: TcxStyle;
|
||||||
|
cxStyleFooterInforme: TcxStyle;
|
||||||
|
cxStyleGroupInforme: TcxStyle;
|
||||||
|
cxStyleHeaderInforme: TcxStyle;
|
||||||
|
cxStyleSelectionInforme: TcxStyle;
|
||||||
|
dxPrintStyleManager1: TdxPrintStyleManager;
|
||||||
|
dxPrintStyleManager1Style1: TdxPSPrintStyle;
|
||||||
|
procedure cxGridViewStylesGetContentStyle(
|
||||||
|
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
|
||||||
|
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
|
||||||
|
procedure cxGridViewDblClick(Sender: TObject);
|
||||||
|
procedure actQuitarAgrupacionesExecute(Sender: TObject);
|
||||||
|
procedure actQuitarAgrupacionesUpdate(Sender: TObject);
|
||||||
|
protected
|
||||||
|
function GetGrid : TcxGrid; override;
|
||||||
|
function GetFocusedView : TcxGridDBTableView; override;
|
||||||
|
procedure SetPopupMenu(const Value: TPopupMenu); override;
|
||||||
|
procedure FilterChanged(Sender : TObject); override;
|
||||||
|
procedure OnChangeValoresFiltro(Sender: TObject);
|
||||||
|
procedure SetViewFiltros(const Value: IViewFiltroBase); override;
|
||||||
|
function AddFilterGrid(const Operacion: tcxFilterBoolOperatorKind): TcxFilterCriteriaItemList;
|
||||||
|
public
|
||||||
|
function esSeleccionCeldaDatos: Boolean; override;
|
||||||
|
procedure Preview; override;
|
||||||
|
procedure Print; override;
|
||||||
|
constructor Create(AOwner: TComponent); override;
|
||||||
|
destructor Destroy; override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
uDataModuleBase, uDBSelectionListUtils;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
{
|
||||||
|
********************************* TfrViewGrid **********************************
|
||||||
|
}
|
||||||
|
|
||||||
|
{ TfrViewGrid }
|
||||||
|
function TfrViewGrid.GetFocusedView: TcxGridDBTableView;
|
||||||
|
begin
|
||||||
|
Result := cxGridView;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGrid.GetGrid: TcxGrid;
|
||||||
|
begin
|
||||||
|
Result := cxGrid;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid.OnChangeValoresFiltro(Sender: TObject);
|
||||||
|
begin
|
||||||
|
cxGridView.DataController.Filter.BeginUpdate;
|
||||||
|
RefrescarFiltro;
|
||||||
|
cxGridView.DataController.Filter.EndUpdate;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid.Preview;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
dxComponentPrinter.Preview;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid.Print;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
dxComponentPrinter.Print(True, nil, nil);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid.SetPopupMenu(const Value: TPopupMenu);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxViewGridPopupMenu.PopupMenus[0].PopupMenu := FPopupMenu;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid.SetViewFiltros(const Value: IViewFiltroBase);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(ViewFiltros) then
|
||||||
|
ViewFiltros.OnFiltrosChange := OnChangeValoresFiltro
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid.actQuitarAgrupacionesExecute(Sender: TObject);
|
||||||
|
var
|
||||||
|
Columna: TcxGridDBColumn;
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
for i := 0 to cxGridView.ColumnCount - 1 do
|
||||||
|
begin
|
||||||
|
Columna := (cxGridView as TcxGridDBTableView).Columns[i];
|
||||||
|
if not (Columna.GroupIndex < 0) then
|
||||||
|
begin
|
||||||
|
Columna.GroupIndex := -1;
|
||||||
|
Columna.Visible := True;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid.actQuitarAgrupacionesUpdate(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
(Sender as TAction).Enabled := (cxGridView.GroupedColumnCount > 0);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGrid.AddFilterGrid(const Operacion: tcxFilterBoolOperatorKind): TcxFilterCriteriaItemList;
|
||||||
|
var
|
||||||
|
AItemList: TcxFilterCriteriaItemList;
|
||||||
|
begin
|
||||||
|
AItemList := cxGridView.DataController.Filter.Root;
|
||||||
|
Result := AItemList.AddItemList(Operacion);
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TfrViewGrid.Create(AOwner: TComponent);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
ViewFiltros := frViewFiltroBase1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid.cxGridViewDblClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(FOnDblClick) then
|
||||||
|
FOnDblClick(Sender);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid.cxGridViewStylesGetContentStyle(
|
||||||
|
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
|
||||||
|
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(AItem) then
|
||||||
|
begin
|
||||||
|
if AItem.SortOrder = soNone then
|
||||||
|
AStyle := cxStyleSinOrden
|
||||||
|
else begin
|
||||||
|
AStyle := cxStyleConOrden;
|
||||||
|
if Filtered then
|
||||||
|
AStyle := cxStyleFilteredConOrden;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TfrViewGrid.Destroy;
|
||||||
|
begin
|
||||||
|
ViewFiltros := Nil;
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGrid.esSeleccionCeldaDatos: Boolean;
|
||||||
|
begin
|
||||||
|
Result := not (cxGridView.Controller.FocusedRecord is TcxGridGroupRow);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid.FilterChanged(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Filtered then
|
||||||
|
_FocusedView.Styles.Content := cxStyleFiltered
|
||||||
|
else
|
||||||
|
_FocusedView.Styles.Content := nil;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
136
Source/GUIBase/uViewGrid2Niveles.dfm
Normal file
136
Source/GUIBase/uViewGrid2Niveles.dfm
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
inherited frViewGrid2Niveles: TfrViewGrid2Niveles
|
||||||
|
Width = 519
|
||||||
|
Height = 367
|
||||||
|
ExplicitWidth = 519
|
||||||
|
ExplicitHeight = 367
|
||||||
|
object cxGrid: TcxGrid [0]
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 519
|
||||||
|
Height = 367
|
||||||
|
Align = alClient
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'Tahoma'
|
||||||
|
Font.Style = []
|
||||||
|
ParentFont = False
|
||||||
|
TabOrder = 0
|
||||||
|
LookAndFeel.Kind = lfOffice11
|
||||||
|
LookAndFeel.NativeStyle = True
|
||||||
|
object cxGridView1N: TcxGridDBTableView
|
||||||
|
OnDblClick = cxGridView1NDblClick
|
||||||
|
NavigatorButtons.ConfirmDelete = False
|
||||||
|
FilterBox.Visible = fvNever
|
||||||
|
DataController.DataSource = dsDataSource
|
||||||
|
DataController.Filter.Options = [fcoCaseInsensitive]
|
||||||
|
DataController.Options = [dcoAnsiSort, dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoSortByDisplayText]
|
||||||
|
DataController.Summary.DefaultGroupSummaryItems = <>
|
||||||
|
DataController.Summary.FooterSummaryItems = <>
|
||||||
|
DataController.Summary.SummaryGroups = <>
|
||||||
|
OptionsBehavior.CellHints = True
|
||||||
|
OptionsCustomize.ColumnFiltering = False
|
||||||
|
OptionsCustomize.ColumnGrouping = False
|
||||||
|
OptionsCustomize.ColumnsQuickCustomization = True
|
||||||
|
OptionsData.Deleting = False
|
||||||
|
OptionsData.DeletingConfirmation = False
|
||||||
|
OptionsData.Editing = False
|
||||||
|
OptionsData.Inserting = False
|
||||||
|
OptionsSelection.CellSelect = False
|
||||||
|
OptionsSelection.UnselectFocusedRecordOnExit = False
|
||||||
|
OptionsView.CellEndEllipsis = True
|
||||||
|
OptionsView.CellAutoHeight = True
|
||||||
|
OptionsView.ColumnAutoWidth = True
|
||||||
|
OptionsView.Footer = True
|
||||||
|
OptionsView.FooterAutoHeight = True
|
||||||
|
OptionsView.GridLineColor = cl3DLight
|
||||||
|
OptionsView.GroupByBox = False
|
||||||
|
OptionsView.HeaderEndEllipsis = True
|
||||||
|
Styles.Inactive = cxStyleSelection
|
||||||
|
Styles.Selection = cxStyleSelection
|
||||||
|
Styles.OnGetContentStyle = cxGridViewStylesGetContentStyle
|
||||||
|
end
|
||||||
|
object cxGridView: TcxGridDBTableView
|
||||||
|
NavigatorButtons.ConfirmDelete = False
|
||||||
|
DataController.Summary.DefaultGroupSummaryItems = <>
|
||||||
|
DataController.Summary.FooterSummaryItems = <>
|
||||||
|
DataController.Summary.SummaryGroups = <>
|
||||||
|
end
|
||||||
|
object cxGridLevel1N: TcxGridLevel
|
||||||
|
GridView = cxGridView1N
|
||||||
|
object cxGridLevel: TcxGridLevel
|
||||||
|
GridView = cxGridView
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxComponentPrinter: TdxComponentPrinter
|
||||||
|
CurrentLink = dxComponentPrinterLink
|
||||||
|
PreviewOptions.EnableOptions = [peoCanChangeMargins, peoPageBackground, peoPageSetup, peoPreferences, peoPrint]
|
||||||
|
PreviewOptions.VisibleOptions = [pvoPageBackground, pvoPageSetup, pvoPreferences, pvoPrint, pvoPrintStyles, pvoReportFileOperations, pvoPageMargins]
|
||||||
|
PreviewOptions.WindowState = wsMaximized
|
||||||
|
Version = 0
|
||||||
|
Left = 368
|
||||||
|
Top = 128
|
||||||
|
object dxComponentPrinterLink: TdxGridReportLink
|
||||||
|
Component = cxGrid
|
||||||
|
PrinterPage.DMPaper = 9
|
||||||
|
PrinterPage.Footer = 6350
|
||||||
|
PrinterPage.Header = 6350
|
||||||
|
PrinterPage.Margins.Bottom = 12700
|
||||||
|
PrinterPage.Margins.Left = 12700
|
||||||
|
PrinterPage.Margins.Right = 12700
|
||||||
|
PrinterPage.Margins.Top = 12700
|
||||||
|
PrinterPage.PageSize.X = 210000
|
||||||
|
PrinterPage.PageSize.Y = 297000
|
||||||
|
PrinterPage._dxMeasurementUnits_ = 0
|
||||||
|
PrinterPage._dxLastMU_ = 2
|
||||||
|
BuiltInReportLink = True
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxPSEngineController1: TdxPSEngineController
|
||||||
|
LookAndFeel = pslfOffice11
|
||||||
|
UseNativeLookAndFeel = False
|
||||||
|
Left = 336
|
||||||
|
Top = 128
|
||||||
|
end
|
||||||
|
object cxStyleRepository1: TcxStyleRepository
|
||||||
|
Left = 296
|
||||||
|
Top = 128
|
||||||
|
object cxStyleEven: TcxStyle
|
||||||
|
end
|
||||||
|
object cxStyleOdd: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = clInactiveCaptionText
|
||||||
|
end
|
||||||
|
object cxStyleSelection: TcxStyle
|
||||||
|
AssignedValues = [svColor, svTextColor]
|
||||||
|
Color = clHighlight
|
||||||
|
TextColor = clHighlightText
|
||||||
|
end
|
||||||
|
object cxStyleSinOrden: TcxStyle
|
||||||
|
end
|
||||||
|
object cxStyleConOrden: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = 16119285
|
||||||
|
end
|
||||||
|
object cxStyleFiltered: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = clInfoBk
|
||||||
|
end
|
||||||
|
object cxStyleFilteredConOrden: TcxStyle
|
||||||
|
AssignedValues = [svColor]
|
||||||
|
Color = 14546175
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object cxViewGridPopupMenu: TcxGridPopupMenu
|
||||||
|
Grid = cxGrid
|
||||||
|
PopupMenus = <
|
||||||
|
item
|
||||||
|
GridView = cxGridView1N
|
||||||
|
HitTypes = [gvhtCell]
|
||||||
|
Index = 0
|
||||||
|
end>
|
||||||
|
Left = 264
|
||||||
|
Top = 128
|
||||||
|
end
|
||||||
|
end
|
||||||
211
Source/GUIBase/uViewGrid2Niveles.pas
Normal file
211
Source/GUIBase/uViewGrid2Niveles.pas
Normal file
@ -0,0 +1,211 @@
|
|||||||
|
{*******************************************************}
|
||||||
|
{ }
|
||||||
|
{ Administración de puntos de venta }
|
||||||
|
{ }
|
||||||
|
{ Copyright (C) 2006 Rodax Software S.L. }
|
||||||
|
{ }
|
||||||
|
{*******************************************************}
|
||||||
|
|
||||||
|
unit uViewGrid2Niveles;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
||||||
|
cxDataStorage, cxEdit, DB, cxDBData, uDADataTable, cxGridLevel,
|
||||||
|
cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView,
|
||||||
|
cxGridTableView, cxGridDBTableView, cxGrid, Menus, ActnList, Grids,
|
||||||
|
DBGrids, JvComponent, JvFormAutoSize, dxPSGlbl, dxPSUtl, dxPSEngn,
|
||||||
|
dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns,
|
||||||
|
dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk, dxPrnDlg,
|
||||||
|
cxIntlPrintSys3, dxPSPrvwAdv, uViewGridBase, cxGridCustomPopupMenu,
|
||||||
|
cxGridPopupMenu;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewGrid2Niveles = interface(IViewGridBase)
|
||||||
|
['{7EA40980-AD73-4590-A53A-932316C7B121}']
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfrViewGrid2Niveles = class(TfrViewGridBase, IViewGrid2Niveles)
|
||||||
|
cxGrid: TcxGrid;
|
||||||
|
cxGridLevel1N: TcxGridLevel;
|
||||||
|
cxGridView1N: TcxGridDBTableView;
|
||||||
|
dxComponentPrinter: TdxComponentPrinter;
|
||||||
|
dxPSEngineController1: TdxPSEngineController;
|
||||||
|
cxStyleRepository1: TcxStyleRepository;
|
||||||
|
cxStyleEven: TcxStyle;
|
||||||
|
cxStyleOdd: TcxStyle;
|
||||||
|
cxStyleSelection: TcxStyle;
|
||||||
|
cxStyleSinOrden: TcxStyle;
|
||||||
|
cxStyleConOrden: TcxStyle;
|
||||||
|
cxViewGridPopupMenu: TcxGridPopupMenu;
|
||||||
|
dxComponentPrinterLink: TdxGridReportLink;
|
||||||
|
cxStyleFiltered: TcxStyle;
|
||||||
|
cxStyleFilteredConOrden: TcxStyle;
|
||||||
|
cxGridLevel: TcxGridLevel;
|
||||||
|
cxGridView: TcxGridDBTableView;
|
||||||
|
procedure cxGridViewStylesGetContentStyle(
|
||||||
|
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
|
||||||
|
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
|
||||||
|
procedure cxGridView1NDblClick(Sender: TObject);
|
||||||
|
protected
|
||||||
|
function GetGrid : TcxGrid; override;
|
||||||
|
function GetFocusedView : TcxGridDBTableView; override;
|
||||||
|
procedure SetPopupMenu(const Value: TPopupMenu); override;
|
||||||
|
procedure FilterChanged(Sender : TObject); override;
|
||||||
|
function GetFiltered: Boolean; override;
|
||||||
|
procedure FiltrarGrid(TextoFiltro : String); override;
|
||||||
|
public
|
||||||
|
procedure AjustarAncho; override;
|
||||||
|
procedure ContraerTodo; override;
|
||||||
|
procedure ExpandirTodo; override;
|
||||||
|
function IsEmpty : Boolean; override;
|
||||||
|
procedure RestoreFromRegistry (const Path : String); override;
|
||||||
|
procedure StoreToRegistry (const Path : String); override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
uDataModuleBase, uDBSelectionListUtils;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
{
|
||||||
|
********************************* TfrViewGrid **********************************
|
||||||
|
}
|
||||||
|
|
||||||
|
{ TfrViewGrid }
|
||||||
|
function TfrViewGrid2Niveles.GetFiltered: Boolean;
|
||||||
|
begin
|
||||||
|
Result := inherited GetFiltered;
|
||||||
|
Result := Result OR (cxGridView1N.DataController.Filter.Root.Count > 0);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGrid2Niveles.GetFocusedView: TcxGridDBTableView;
|
||||||
|
begin
|
||||||
|
Result := cxGridView;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGrid2Niveles.GetGrid: TcxGrid;
|
||||||
|
begin
|
||||||
|
Result := cxGrid;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGrid2Niveles.IsEmpty: Boolean;
|
||||||
|
begin
|
||||||
|
Result := (cxGridView1N.ViewData.RowCount < 1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid2Niveles.RestoreFromRegistry(const Path: String);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxGridView1N.RestoreFromRegistry(Path + '\\GridSettings\\' + Self.Name, False, False, []);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid2Niveles.SetPopupMenu(const Value: TPopupMenu);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxViewGridPopupMenu.PopupMenus[0].PopupMenu := FPopupMenu;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid2Niveles.StoreToRegistry(const Path: String);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxGridView1N.StoreToRegistry(Path + '\\GridSettings\\' + Self.Name, False, []);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid2Niveles.AjustarAncho;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxGridView1N.ApplyBestFit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid2Niveles.ContraerTodo;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxGridView1N.ViewData.Collapse(True);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid2Niveles.cxGridView1NDblClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(FOnDblClick) then
|
||||||
|
FOnDblClick(Sender);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid2Niveles.cxGridViewStylesGetContentStyle(
|
||||||
|
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
|
||||||
|
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Assigned(AItem) then
|
||||||
|
begin
|
||||||
|
if AItem.SortOrder = soNone then
|
||||||
|
AStyle := cxStyleSinOrden
|
||||||
|
else begin
|
||||||
|
AStyle := cxStyleConOrden;
|
||||||
|
if Filtered then
|
||||||
|
AStyle := cxStyleFilteredConOrden;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid2Niveles.ExpandirTodo;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
cxGridView1N.ViewData.Expand(True);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid2Niveles.FilterChanged(Sender: TObject);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
if Filtered then
|
||||||
|
begin
|
||||||
|
_FocusedView.Styles.Content := cxStyleFiltered;
|
||||||
|
cxGridView1N.Styles.Content := cxStyleFiltered
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
_FocusedView.Styles.Content := nil;
|
||||||
|
cxGridView1N.Styles.Content := nil
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGrid2Niveles.FiltrarGrid(TextoFiltro: String);
|
||||||
|
var
|
||||||
|
Columna: TcxGridDBColumn;
|
||||||
|
i: Integer;
|
||||||
|
AItemList: TcxFilterCriteriaItemList;
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
|
||||||
|
with cxGridView1N.DataController.Filter do
|
||||||
|
begin
|
||||||
|
BeginUpdate;
|
||||||
|
try
|
||||||
|
Options := [fcoCaseInsensitive, fcoSoftCompare];
|
||||||
|
Root.Clear;
|
||||||
|
if Length(TextoFiltro) > 0 then
|
||||||
|
begin
|
||||||
|
AItemList := Root.AddItemList(fboAnd);
|
||||||
|
AItemList.BoolOperatorKind := fboOr;
|
||||||
|
for i:=0 to (cxGridView1N as TcxGridDBTableView).ColumnCount - 1 do
|
||||||
|
begin
|
||||||
|
Columna := (cxGridView1N as TcxGridDBTableView).Columns[i];
|
||||||
|
if (Length(Columna.Caption) > 0) and (Columna.Caption <> 'RecID') then
|
||||||
|
AItemList.AddItem(Columna, foLike, '%'+TextoFiltro+'%', IntToStr(i));
|
||||||
|
end;
|
||||||
|
Active := True;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
Active := False;
|
||||||
|
finally
|
||||||
|
EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
10
Source/GUIBase/uViewGridBase.dfm
Normal file
10
Source/GUIBase/uViewGridBase.dfm
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
inherited frViewGridBase: TfrViewGridBase
|
||||||
|
Width = 441
|
||||||
|
Height = 268
|
||||||
|
ExplicitWidth = 441
|
||||||
|
ExplicitHeight = 268
|
||||||
|
object dsDataSource: TDADataSource
|
||||||
|
Left = 8
|
||||||
|
Top = 16
|
||||||
|
end
|
||||||
|
end
|
||||||
421
Source/GUIBase/uViewGridBase.pas
Normal file
421
Source/GUIBase/uViewGridBase.pas
Normal file
@ -0,0 +1,421 @@
|
|||||||
|
{*******************************************************}
|
||||||
|
{ }
|
||||||
|
{ Administración de puntos de venta }
|
||||||
|
{ }
|
||||||
|
{ Copyright (C) 2006 Rodax Software S.L. }
|
||||||
|
{ }
|
||||||
|
{*******************************************************}
|
||||||
|
|
||||||
|
unit uViewGridBase;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
||||||
|
cxDataStorage, cxEdit, DB, cxDBData, uDADataTable, cxGridLevel,
|
||||||
|
cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView,
|
||||||
|
cxGridTableView, cxGridDBTableView, cxGrid, Menus, ActnList, Grids,
|
||||||
|
DBGrids, JvComponent, JvFormAutoSize, dxPSGlbl, dxPSUtl, dxPSEngn,
|
||||||
|
dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns,
|
||||||
|
dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk, dxPrnDlg,
|
||||||
|
cxIntlPrintSys3, dxPSPrvwAdv, uGridUtils, uViewFiltroBase;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewGridBase = interface(IViewBase)
|
||||||
|
['{D5B9B017-2A2E-44AC-8223-E54664C6BC66}']
|
||||||
|
procedure ExpandirTodo;
|
||||||
|
procedure ContraerTodo;
|
||||||
|
procedure AjustarAncho;
|
||||||
|
|
||||||
|
procedure Preview;
|
||||||
|
procedure Print;
|
||||||
|
procedure PrintSetup;
|
||||||
|
|
||||||
|
function IsEmpty : Boolean;
|
||||||
|
|
||||||
|
procedure SaveGridStatus;
|
||||||
|
procedure RestoreGridStatus;
|
||||||
|
|
||||||
|
procedure GotoFirst;
|
||||||
|
procedure GotoLast;
|
||||||
|
|
||||||
|
function GetFocusedView : TcxGridDBTableView;
|
||||||
|
property _FocusedView : TcxGridDBTableView read GetFocusedView;
|
||||||
|
|
||||||
|
function GetGrid : TcxGrid;
|
||||||
|
property _Grid : TcxGrid read GetGrid;
|
||||||
|
|
||||||
|
procedure StoreToRegistry (const Path : String);
|
||||||
|
procedure RestoreFromRegistry (const Path : String);
|
||||||
|
|
||||||
|
procedure SetDblClick(const Value: TNotifyEvent);
|
||||||
|
function GetDblClick: TNotifyEvent;
|
||||||
|
property OnDblClick: TNotifyEvent read GetDblClick write SetDblClick;
|
||||||
|
|
||||||
|
procedure SetPopupMenu(const Value: TPopupMenu);
|
||||||
|
function GetPopupMenu: TPopupMenu;
|
||||||
|
property PopupMenu: TPopupMenu read GetPopupMenu write SetPopupMenu;
|
||||||
|
|
||||||
|
function GetMultiSelect: Boolean;
|
||||||
|
procedure SetMultiSelect(const Value: Boolean);
|
||||||
|
property MultiSelect : Boolean read GetMultiSelect write SetMultiSelect;
|
||||||
|
|
||||||
|
procedure SetFilter(const Value: string);
|
||||||
|
function GetFilter: string;
|
||||||
|
property Filter: string read GetFilter write SetFilter;
|
||||||
|
|
||||||
|
function GetFiltered: Boolean;
|
||||||
|
property Filtered : Boolean read GetFiltered;
|
||||||
|
|
||||||
|
function GetViewFiltros: IViewFiltroBase;
|
||||||
|
procedure SetViewFiltros(const Value: IViewFiltroBase);
|
||||||
|
property ViewFiltros: IViewFiltroBase read GetViewFiltros write SetViewFiltros;
|
||||||
|
|
||||||
|
function esSeleccionCeldaDatos: Boolean;
|
||||||
|
|
||||||
|
function getNumSeleccionados: Integer;
|
||||||
|
property NumSeleccionados: Integer read getNumSeleccionados;
|
||||||
|
|
||||||
|
function Locate(const AItemIndex: Integer; const AValue: String;
|
||||||
|
const APartialCompare: Boolean = False) : Boolean;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
TfrViewGridBase = class(TfrViewBase, IViewGridBase)
|
||||||
|
dsDataSource: TDADataSource;
|
||||||
|
private
|
||||||
|
FViewFiltros: IViewFiltroBase;
|
||||||
|
FFilter: string;
|
||||||
|
FOnFilterChanged : TNotifyEvent;
|
||||||
|
FGridStatus : TcxGridStatus;
|
||||||
|
protected
|
||||||
|
FOnDblClick: TNotifyEvent;
|
||||||
|
FPopupMenu: TPopupMenu;
|
||||||
|
function GetMultiSelect: Boolean; virtual;
|
||||||
|
procedure SetMultiSelect(const Value: Boolean); virtual;
|
||||||
|
procedure SetPopupMenu(const Value: TPopupMenu); virtual;
|
||||||
|
function GetPopupMenu: TPopupMenu; virtual;
|
||||||
|
procedure SetDblClick(const Value: TNotifyEvent); virtual;
|
||||||
|
function GetDblClick: TNotifyEvent; virtual;
|
||||||
|
function GetGrid : TcxGrid; virtual; abstract;
|
||||||
|
function GetFocusedView : TcxGridDBTableView; virtual; abstract;
|
||||||
|
function esSeleccionCeldaDatos: Boolean; virtual; abstract;
|
||||||
|
function getNumSeleccionados: Integer;
|
||||||
|
|
||||||
|
procedure SetFilter(const Value: string); virtual;
|
||||||
|
procedure RefrescarFiltro;
|
||||||
|
function GetFilter: string; virtual;
|
||||||
|
function GetFiltered: Boolean; virtual;
|
||||||
|
procedure FiltrarGrid(TextoFiltro : String); virtual;
|
||||||
|
function GetViewFiltros: IViewFiltroBase;
|
||||||
|
procedure SetViewFiltros(const Value: IViewFiltroBase); virtual;
|
||||||
|
procedure FilterChanged(Sender : TObject); virtual;
|
||||||
|
|
||||||
|
public
|
||||||
|
constructor Create(AOwner: TComponent); override;
|
||||||
|
destructor Destroy; override;
|
||||||
|
|
||||||
|
procedure ShowEmbedded(const AParent : TWinControl); override;
|
||||||
|
|
||||||
|
procedure ExpandirTodo; virtual;
|
||||||
|
procedure ContraerTodo; virtual;
|
||||||
|
procedure AjustarAncho; virtual;
|
||||||
|
|
||||||
|
procedure Preview; virtual;
|
||||||
|
procedure Print; virtual;
|
||||||
|
procedure PrintSetup; virtual;
|
||||||
|
|
||||||
|
function IsEmpty : Boolean; virtual;
|
||||||
|
|
||||||
|
procedure SaveGridStatus;
|
||||||
|
procedure RestoreGridStatus;
|
||||||
|
|
||||||
|
procedure GotoFirst;
|
||||||
|
procedure GotoLast;
|
||||||
|
|
||||||
|
procedure StoreToRegistry (const Path : String); virtual;
|
||||||
|
procedure RestoreFromRegistry (const Path : String); virtual;
|
||||||
|
|
||||||
|
function Locate(const AItemIndex: Integer; const AValue: String;
|
||||||
|
const APartialCompare: Boolean = False) : Boolean;
|
||||||
|
|
||||||
|
property Filter: string read GetFilter write SetFilter;
|
||||||
|
property Filtered : Boolean read GetFiltered;
|
||||||
|
|
||||||
|
procedure AnadirOtrosFiltros; virtual;
|
||||||
|
property ViewFiltros: IViewFiltroBase read GetViewFiltros write SetViewFiltros;
|
||||||
|
|
||||||
|
property _FocusedView : TcxGridDBTableView read GetFocusedView;
|
||||||
|
property _Grid : TcxGrid read GetGrid;
|
||||||
|
property OnDblClick: TNotifyEvent read GetDblClick write SetDblClick;
|
||||||
|
property PopupMenu: TPopupMenu read GetPopupMenu write SetPopupMenu;
|
||||||
|
property MultiSelect : Boolean read GetMultiSelect write SetMultiSelect;
|
||||||
|
property NumSeleccionados: Integer read getNumSeleccionados;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure Register;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
uses
|
||||||
|
CCReg, uDataModuleBase, uDBSelectionListUtils;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
procedure Register;
|
||||||
|
begin
|
||||||
|
RegisterCustomContainer(TfrViewGridBase);
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TfrViewGrid }
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.AjustarAncho;
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.ApplyBestFit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.AnadirOtrosFiltros;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.ContraerTodo;
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.ViewData.Collapse(True);
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TfrViewGridBase.Create(AOwner: TComponent);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FFilter := '';
|
||||||
|
FOnFilterChanged := FilterChanged;
|
||||||
|
FPopupMenu := nil;
|
||||||
|
FOnDblClick := nil;
|
||||||
|
FGridStatus := NIL;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.ExpandirTodo;
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.ViewData.Expand(True);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGridBase.GetDblClick: TNotifyEvent;
|
||||||
|
begin
|
||||||
|
Result := FOnDblClick;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGridBase.GetFilter: string;
|
||||||
|
begin
|
||||||
|
Result := FFilter;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGridBase.GetFiltered: Boolean;
|
||||||
|
begin
|
||||||
|
//Los niveles de los grid no se consideran filtros
|
||||||
|
if (_Grid.Levels.Count > 1) then
|
||||||
|
Result := (_FocusedView.DataController.Filter.Root.Count > 1)
|
||||||
|
else
|
||||||
|
Result := (_FocusedView.DataController.Filter.Root.Count > 0);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGridBase.GetMultiSelect: Boolean;
|
||||||
|
begin
|
||||||
|
Result := _FocusedView.OptionsSelection.MultiSelect;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGridBase.getNumSeleccionados: Integer;
|
||||||
|
begin
|
||||||
|
Result := _FocusedView.DataController.GetSelectedCount;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGridBase.GetPopupMenu: TPopupMenu;
|
||||||
|
begin
|
||||||
|
Result := FPopupMenu;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGridBase.GetViewFiltros: IViewFiltroBase;
|
||||||
|
begin
|
||||||
|
Result := FViewFiltros;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.GotoFirst;
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.DataController.GotoFirst;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.GotoLast;
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.DataController.GotoLast;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGridBase.IsEmpty: Boolean;
|
||||||
|
begin
|
||||||
|
Result := (_FocusedView.ViewData.RowCount < 1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TfrViewGridBase.Locate(const AItemIndex: Integer; const AValue: String;
|
||||||
|
const APartialCompare: Boolean): Boolean;
|
||||||
|
begin
|
||||||
|
{ if Assigned(_FocusedView) then
|
||||||
|
Result := _FocusedView.DataController.FindRecordIndexByText(0, AItemIndex, AText, APartialCompare, True, True)}
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.Preview;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.Print;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.PrintSetup;
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.RefrescarFiltro;
|
||||||
|
begin
|
||||||
|
//De esta forma obligaremos a que se creen nuevamente todos los filtros, cuando llamemos a este metodo
|
||||||
|
if Assigned(ViewFiltros) then
|
||||||
|
Filter := ViewFiltros.Texto;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.RestoreFromRegistry(const Path : String);
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.RestoreFromRegistry(Path + '\\GridSettings\\' + Self.Name, False, False, [], Self.Name);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.RestoreGridStatus;
|
||||||
|
begin
|
||||||
|
if Assigned(FGridStatus) and (not IsEmpty) then
|
||||||
|
FGridStatus.Restore(_FocusedView);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.SaveGridStatus;
|
||||||
|
begin
|
||||||
|
FreeAndNil(FGridStatus);
|
||||||
|
if not IsEmpty then
|
||||||
|
FGridStatus := TcxGridStatus.Create(_FocusedView);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.SetDblClick(const Value: TNotifyEvent);
|
||||||
|
begin
|
||||||
|
FOnDblClick := Value;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.SetFilter(const Value: string);
|
||||||
|
begin
|
||||||
|
FFilter := Value;
|
||||||
|
|
||||||
|
//Así tendremos el mismo valor en el filtro simple que en el filtro en detalle
|
||||||
|
if Assigned(ViewFiltros) then
|
||||||
|
ViewFiltros.Texto := FFilter;
|
||||||
|
|
||||||
|
FiltrarGrid(FFilter);
|
||||||
|
|
||||||
|
//Obliga a generar todos los filtros de las vista hija
|
||||||
|
AnadirOtrosFiltros;
|
||||||
|
|
||||||
|
if Assigned(FOnFilterChanged) then
|
||||||
|
FOnFilterChanged(Self);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.SetMultiSelect(const Value: Boolean);
|
||||||
|
begin
|
||||||
|
_FocusedView.OptionsSelection.MultiSelect := Value;
|
||||||
|
// _FocusedView..OnSelectionChanged := SelectionChanged;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.SetPopupMenu(const Value: TPopupMenu);
|
||||||
|
begin
|
||||||
|
FPopupMenu := Value;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.SetViewFiltros(const Value: IViewFiltroBase);
|
||||||
|
begin
|
||||||
|
if Assigned(FViewFiltros) then
|
||||||
|
ViewFiltros.OnFiltrosChange := Nil;
|
||||||
|
|
||||||
|
FViewFiltros := Value;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.ShowEmbedded(const AParent: TWinControl);
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
|
||||||
|
// No activar la tabla ya por si acaso tuviera parámetros
|
||||||
|
{ if not DADataSource.DataTable.Active then
|
||||||
|
DADataSource.DataTable.Active := True;}
|
||||||
|
|
||||||
|
GotoFirst;
|
||||||
|
_FocusedView.Focused := True;
|
||||||
|
if _FocusedView.ViewData.RecordCount > 0 then
|
||||||
|
begin
|
||||||
|
_FocusedView.ViewData.Records[0].Selected := True;
|
||||||
|
_FocusedView.ViewData.Records[0].Focused := True;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.StoreToRegistry(const Path : String);
|
||||||
|
begin
|
||||||
|
if Assigned(_FocusedView) then
|
||||||
|
_FocusedView.StoreToRegistry(Path + '\\GridSettings\\' + Self.Name, False, [], Self.Name);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.FiltrarGrid(TextoFiltro : String);
|
||||||
|
var
|
||||||
|
Columna: TcxGridDBColumn;
|
||||||
|
i: Integer;
|
||||||
|
AItemList: TcxFilterCriteriaItemList;
|
||||||
|
begin
|
||||||
|
with _FocusedView.DataController.Filter do
|
||||||
|
begin
|
||||||
|
BeginUpdate;
|
||||||
|
try
|
||||||
|
Options := [fcoCaseInsensitive, fcoSoftCompare];
|
||||||
|
Root.Clear;
|
||||||
|
if Length(TextoFiltro) > 0 then
|
||||||
|
begin
|
||||||
|
AItemList := Root.AddItemList(fboAnd);
|
||||||
|
AItemList.BoolOperatorKind := fboOr;
|
||||||
|
for i:=0 to (_FocusedView as TcxGridDBTableView).ColumnCount - 1 do
|
||||||
|
begin
|
||||||
|
Columna := (_FocusedView as TcxGridDBTableView).Columns[i];
|
||||||
|
if (Length(Columna.Caption) > 0) and (Columna.Caption <> 'RecID') then
|
||||||
|
AItemList.AddItem(Columna, foLike, '%'+TextoFiltro+'%', IntToStr(i));
|
||||||
|
end;
|
||||||
|
Active := True;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
Active := False;
|
||||||
|
finally
|
||||||
|
EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TfrViewGridBase.FilterChanged(Sender: TObject);
|
||||||
|
begin
|
||||||
|
//
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TfrViewGridBase.Destroy;
|
||||||
|
begin
|
||||||
|
FOnFilterChanged := Nil;
|
||||||
|
if Assigned(FGridStatus) then
|
||||||
|
FreeAndNil(FGridStatus);
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
54
Source/GUIBase/uViewIncidencias.dfm
Normal file
54
Source/GUIBase/uViewIncidencias.dfm
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
inherited frViewIncidencias: TfrViewIncidencias
|
||||||
|
Width = 451
|
||||||
|
Height = 370
|
||||||
|
Align = alBottom
|
||||||
|
ExplicitWidth = 451
|
||||||
|
ExplicitHeight = 370
|
||||||
|
object pnlSup: TPanel
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 451
|
||||||
|
Height = 28
|
||||||
|
Align = alTop
|
||||||
|
BevelOuter = bvNone
|
||||||
|
TabOrder = 0
|
||||||
|
object eIncidenciaActiva: TcxDBCheckBox
|
||||||
|
Left = 2
|
||||||
|
Top = 4
|
||||||
|
Caption = 'Hay incidencias sin resolver'
|
||||||
|
DataBinding.DataField = 'INCIDENCIAS_ACTIVAS'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Properties.ValueChecked = 1
|
||||||
|
Properties.ValueUnchecked = 0
|
||||||
|
TabOrder = 0
|
||||||
|
Transparent = True
|
||||||
|
Width = 359
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object GroupBox1: TGroupBox
|
||||||
|
Left = 0
|
||||||
|
Top = 28
|
||||||
|
Width = 451
|
||||||
|
Height = 342
|
||||||
|
Align = alClient
|
||||||
|
Caption = 'Incidencias'
|
||||||
|
TabOrder = 1
|
||||||
|
DesignSize = (
|
||||||
|
451
|
||||||
|
342)
|
||||||
|
object eIncidencias: TcxDBMemo
|
||||||
|
Left = 10
|
||||||
|
Top = 22
|
||||||
|
Anchors = [akLeft, akTop, akRight, akBottom]
|
||||||
|
DataBinding.DataField = 'INCIDENCIAS'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
TabOrder = 0
|
||||||
|
Height = 305
|
||||||
|
Width = 420
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object DADataSource: TDADataSource
|
||||||
|
Left = 560
|
||||||
|
Top = 8
|
||||||
|
end
|
||||||
|
end
|
||||||
30
Source/GUIBase/uViewIncidencias.pas
Normal file
30
Source/GUIBase/uViewIncidencias.pas
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
unit uViewIncidencias;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, ExtCtrls, StdCtrls, DB, uDADataTable, cxGraphics,
|
||||||
|
cxTextEdit, cxMaskEdit, cxDropDownEdit, cxDBEdit, cxControls,
|
||||||
|
cxContainer, cxEdit, cxLabel, cxDBLabel, cxCurrencyEdit, cxSpinEdit,
|
||||||
|
cxCheckBox, cxMemo;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfrViewIncidencias = class(TfrViewBase)
|
||||||
|
DADataSource: TDADataSource;
|
||||||
|
pnlSup: TPanel;
|
||||||
|
eIncidenciaActiva: TcxDBCheckBox;
|
||||||
|
eIncidencias: TcxDBMemo;
|
||||||
|
GroupBox1: TGroupBox;
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
end.
|
||||||
46
Source/GUIBase/uViewObservaciones.dfm
Normal file
46
Source/GUIBase/uViewObservaciones.dfm
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
inherited frViewObservaciones: TfrViewObservaciones
|
||||||
|
Width = 300
|
||||||
|
DesignSize = (
|
||||||
|
300
|
||||||
|
226)
|
||||||
|
object Label5: TLabel
|
||||||
|
Left = 8
|
||||||
|
Top = 8
|
||||||
|
Width = 85
|
||||||
|
Height = 13
|
||||||
|
Caption = 'Observaciones'
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clActiveCaption
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'MS Sans Serif'
|
||||||
|
Font.Style = [fsBold]
|
||||||
|
ParentFont = False
|
||||||
|
end
|
||||||
|
object Bevel1: TBevel
|
||||||
|
Left = 96
|
||||||
|
Top = 8
|
||||||
|
Width = 192
|
||||||
|
Height = 9
|
||||||
|
Anchors = [akLeft, akTop, akRight]
|
||||||
|
Shape = bsBottomLine
|
||||||
|
end
|
||||||
|
object memObservaciones: TcxDBMemo
|
||||||
|
Left = 16
|
||||||
|
Top = 32
|
||||||
|
Anchors = [akLeft, akTop, akRight, akBottom]
|
||||||
|
DataBinding.DataField = 'OBSERVACIONES'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Properties.ScrollBars = ssVertical
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 0
|
||||||
|
Height = 179
|
||||||
|
Width = 269
|
||||||
|
end
|
||||||
|
object DADataSource: TDADataSource
|
||||||
|
Left = 16
|
||||||
|
Top = 48
|
||||||
|
end
|
||||||
|
end
|
||||||
26
Source/GUIBase/uViewObservaciones.pas
Normal file
26
Source/GUIBase/uViewObservaciones.pas
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
unit uViewObservaciones;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, DB, uDADataTable, cxMemo, cxDBEdit, cxControls,
|
||||||
|
cxContainer, cxEdit, cxTextEdit, ExtCtrls, StdCtrls;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfrViewObservaciones = class(TfrViewBase)
|
||||||
|
Label5: TLabel;
|
||||||
|
Bevel1: TBevel;
|
||||||
|
memObservaciones: TcxDBMemo;
|
||||||
|
DADataSource: TDADataSource;
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
end.
|
||||||
10
Source/GUIBase/uViewPreview.dfm
Normal file
10
Source/GUIBase/uViewPreview.dfm
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
inherited frViewPreview: TfrViewPreview
|
||||||
|
object frxPreview: TfrxPreview
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 294
|
||||||
|
Height = 214
|
||||||
|
Align = alClient
|
||||||
|
OutlineVisible = False
|
||||||
|
end
|
||||||
|
end
|
||||||
43
Source/GUIBase/uViewPreview.pas
Normal file
43
Source/GUIBase/uViewPreview.pas
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
unit uViewPreview;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, frxClass, frxPreview, JvComponent, JvFormAutoSize;
|
||||||
|
|
||||||
|
type
|
||||||
|
IViewPreview = interface(IViewBase)
|
||||||
|
['{F9A96948-4005-4E9B-8045-7B4874A05D19}']
|
||||||
|
function GetPreview: TfrxPreview;
|
||||||
|
property Preview : TfrxPreview read GetPreview;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TfrViewPreview = class(TfrViewBase, IViewPreview)
|
||||||
|
frxPreview: TfrxPreview;
|
||||||
|
private
|
||||||
|
function GetPreview: TfrxPreview;
|
||||||
|
public
|
||||||
|
property Preview : TfrxPreview read GetPreview;
|
||||||
|
end;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
{ TfrViewPreview }
|
||||||
|
|
||||||
|
function TfrViewPreview.GetPreview: TfrxPreview;
|
||||||
|
begin
|
||||||
|
Result := frxPreview;
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
RegisterClass(TfrViewPreview);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
UnRegisterClass(TfrViewPreview);
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
||||||
|
|
||||||
619
Source/GUIBase/uViewTotales.dfm
Normal file
619
Source/GUIBase/uViewTotales.dfm
Normal file
@ -0,0 +1,619 @@
|
|||||||
|
inherited frViewTotales: TfrViewTotales
|
||||||
|
Width = 451
|
||||||
|
Height = 350
|
||||||
|
Align = alBottom
|
||||||
|
ExplicitWidth = 451
|
||||||
|
ExplicitHeight = 350
|
||||||
|
object dxLayoutControl1: TdxLayoutControl
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 451
|
||||||
|
Height = 217
|
||||||
|
Margins.Left = 0
|
||||||
|
Margins.Top = 0
|
||||||
|
Margins.Right = 0
|
||||||
|
Margins.Bottom = 0
|
||||||
|
Align = alTop
|
||||||
|
ParentBackground = True
|
||||||
|
TabOrder = 0
|
||||||
|
AutoContentSizes = [acsWidth, acsHeight]
|
||||||
|
object Bevel1: TBevel
|
||||||
|
Left = 104
|
||||||
|
Top = 109
|
||||||
|
Width = 73
|
||||||
|
Height = 9
|
||||||
|
Shape = bsBottomLine
|
||||||
|
end
|
||||||
|
object Bevel3: TBevel
|
||||||
|
Left = 278
|
||||||
|
Top = 28
|
||||||
|
Width = 3
|
||||||
|
Height = 122
|
||||||
|
Shape = bsRightLine
|
||||||
|
end
|
||||||
|
object Bevel4: TBevel
|
||||||
|
Left = 390
|
||||||
|
Top = 109
|
||||||
|
Width = 192
|
||||||
|
Height = 9
|
||||||
|
Shape = bsBottomLine
|
||||||
|
end
|
||||||
|
object ImporteDto: TcxDBCurrencyEdit
|
||||||
|
Left = 175
|
||||||
|
Top = 129
|
||||||
|
AutoSize = False
|
||||||
|
DataBinding.DataField = 'IMPORTE_DESCUENTO'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Enabled = False
|
||||||
|
ParentFont = False
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.ReadOnly = True
|
||||||
|
Properties.UseLeftAlignmentOnEditing = False
|
||||||
|
Properties.UseThousandSeparator = True
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Style.Font.Color = clWindowText
|
||||||
|
Style.Font.Height = -11
|
||||||
|
Style.Font.Name = 'Tahoma'
|
||||||
|
Style.Font.Style = []
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.TextColor = clWindowText
|
||||||
|
Style.IsFontAssigned = True
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.TextColor = clWindowText
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 5
|
||||||
|
Height = 21
|
||||||
|
Width = 93
|
||||||
|
end
|
||||||
|
object ImporteIVA: TcxDBCurrencyEdit
|
||||||
|
Left = 461
|
||||||
|
Top = 55
|
||||||
|
AutoSize = False
|
||||||
|
DataBinding.DataField = 'IMPORTE_IVA'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Enabled = False
|
||||||
|
ParentFont = False
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.ReadOnly = True
|
||||||
|
Properties.UseLeftAlignmentOnEditing = False
|
||||||
|
Properties.UseThousandSeparator = True
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Style.Font.Color = clWindowText
|
||||||
|
Style.Font.Height = -11
|
||||||
|
Style.Font.Name = 'Tahoma'
|
||||||
|
Style.Font.Style = []
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.TextColor = clWindowText
|
||||||
|
Style.IsFontAssigned = True
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.TextColor = clWindowText
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 9
|
||||||
|
Height = 21
|
||||||
|
Width = 137
|
||||||
|
end
|
||||||
|
object ImporteTotal: TcxDBCurrencyEdit
|
||||||
|
Left = 391
|
||||||
|
Top = 129
|
||||||
|
AutoSize = False
|
||||||
|
DataBinding.DataField = 'IMPORTE_TOTAL'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Enabled = False
|
||||||
|
ParentFont = False
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.ReadOnly = True
|
||||||
|
Properties.UseLeftAlignmentOnEditing = False
|
||||||
|
Properties.UseThousandSeparator = True
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Style.Font.Color = clWindowText
|
||||||
|
Style.Font.Height = -12
|
||||||
|
Style.Font.Name = 'Tahoma'
|
||||||
|
Style.Font.Style = []
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.TextColor = clActiveCaption
|
||||||
|
Style.TextStyle = [fsBold]
|
||||||
|
Style.IsFontAssigned = True
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.TextColor = clWindowText
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 12
|
||||||
|
Height = 21
|
||||||
|
Width = 137
|
||||||
|
end
|
||||||
|
object edtDescuento: TcxDBSpinEdit
|
||||||
|
Left = 104
|
||||||
|
Top = 129
|
||||||
|
AutoSize = False
|
||||||
|
DataBinding.DataField = 'DESCUENTO'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
ParentFont = False
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.DisplayFormat = ',0.00 %;-,0.00 %'
|
||||||
|
Properties.ImmediatePost = True
|
||||||
|
Properties.MaxValue = 100.000000000000000000
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Style.Font.Color = clWindowText
|
||||||
|
Style.Font.Height = -11
|
||||||
|
Style.Font.Name = 'Tahoma'
|
||||||
|
Style.Font.Style = []
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.TextColor = clWindowText
|
||||||
|
Style.ButtonStyle = bts3D
|
||||||
|
Style.IsFontAssigned = True
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 4
|
||||||
|
Height = 21
|
||||||
|
Width = 65
|
||||||
|
end
|
||||||
|
object edtIVA: TcxDBSpinEdit
|
||||||
|
Left = 390
|
||||||
|
Top = 55
|
||||||
|
AutoSize = False
|
||||||
|
DataBinding.DataField = 'IVA'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Enabled = False
|
||||||
|
ParentFont = False
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.AssignedValues.MinValue = True
|
||||||
|
Properties.DisplayFormat = ',0.00 %;-,0.00 %'
|
||||||
|
Properties.ImmediatePost = True
|
||||||
|
Properties.MaxValue = 100.000000000000000000
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Style.Font.Color = clWindowText
|
||||||
|
Style.Font.Height = -11
|
||||||
|
Style.Font.Name = 'Tahoma'
|
||||||
|
Style.Font.Style = []
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.TextColor = clWindowText
|
||||||
|
Style.ButtonStyle = bts3D
|
||||||
|
Style.IsFontAssigned = True
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.TextColor = clWindowText
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 8
|
||||||
|
Height = 21
|
||||||
|
Width = 65
|
||||||
|
end
|
||||||
|
object ImporteBase: TcxDBCurrencyEdit
|
||||||
|
Left = 390
|
||||||
|
Top = 28
|
||||||
|
AutoSize = False
|
||||||
|
DataBinding.DataField = 'BASE_IMPONIBLE'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Enabled = False
|
||||||
|
ParentFont = False
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.ReadOnly = True
|
||||||
|
Properties.UseLeftAlignmentOnEditing = False
|
||||||
|
Properties.UseThousandSeparator = True
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Style.Font.Color = clWindowText
|
||||||
|
Style.Font.Height = -11
|
||||||
|
Style.Font.Name = 'Tahoma'
|
||||||
|
Style.Font.Style = [fsBold]
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.TextColor = clWindowText
|
||||||
|
Style.IsFontAssigned = True
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.TextColor = clWindowText
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 7
|
||||||
|
Height = 21
|
||||||
|
Width = 92
|
||||||
|
end
|
||||||
|
object edtRE: TcxDBSpinEdit
|
||||||
|
Left = 390
|
||||||
|
Top = 82
|
||||||
|
AutoSize = False
|
||||||
|
DataBinding.DataField = 'RE'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Enabled = False
|
||||||
|
ParentFont = False
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.AssignedValues.EditFormat = True
|
||||||
|
Properties.DisplayFormat = ',0.00 %;-,0.00 %'
|
||||||
|
Properties.ImmediatePost = True
|
||||||
|
Properties.MaxValue = 100.000000000000000000
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Style.Font.Color = clWindowText
|
||||||
|
Style.Font.Height = -11
|
||||||
|
Style.Font.Name = 'Tahoma'
|
||||||
|
Style.Font.Style = []
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.TextColor = clWindowText
|
||||||
|
Style.ButtonStyle = bts3D
|
||||||
|
Style.IsFontAssigned = True
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.TextColor = clWindowText
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 10
|
||||||
|
Height = 21
|
||||||
|
Width = 65
|
||||||
|
end
|
||||||
|
object ImporteRE: TcxDBCurrencyEdit
|
||||||
|
Left = 461
|
||||||
|
Top = 82
|
||||||
|
AutoSize = False
|
||||||
|
DataBinding.DataField = 'IMPORTE_RE'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Enabled = False
|
||||||
|
ParentFont = False
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.ReadOnly = True
|
||||||
|
Properties.UseLeftAlignmentOnEditing = False
|
||||||
|
Properties.UseThousandSeparator = True
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Style.Font.Color = clWindowText
|
||||||
|
Style.Font.Height = -11
|
||||||
|
Style.Font.Name = 'Tahoma'
|
||||||
|
Style.Font.Style = []
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.TextColor = clWindowText
|
||||||
|
Style.IsFontAssigned = True
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.TextColor = clWindowText
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 11
|
||||||
|
Height = 21
|
||||||
|
Width = 56
|
||||||
|
end
|
||||||
|
object eImporteNeto: TcxDBCurrencyEdit
|
||||||
|
Left = 104
|
||||||
|
Top = 28
|
||||||
|
AutoSize = False
|
||||||
|
DataBinding.DataField = 'IMPORTE_NETO'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Enabled = False
|
||||||
|
ParentFont = False
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.ReadOnly = True
|
||||||
|
Properties.UseLeftAlignmentOnEditing = False
|
||||||
|
Properties.UseThousandSeparator = True
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Style.Font.Color = clWindowText
|
||||||
|
Style.Font.Height = -11
|
||||||
|
Style.Font.Name = 'Tahoma'
|
||||||
|
Style.Font.Style = [fsBold]
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.TextColor = clWindowText
|
||||||
|
Style.IsFontAssigned = True
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.TextColor = clWindowText
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 0
|
||||||
|
Height = 21
|
||||||
|
Width = 147
|
||||||
|
end
|
||||||
|
object ePorte: TcxDBCurrencyEdit
|
||||||
|
Left = 104
|
||||||
|
Top = 156
|
||||||
|
AutoSize = False
|
||||||
|
DataBinding.DataField = 'IMPORTE_PORTE'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
ParentFont = False
|
||||||
|
Properties.Alignment.Horz = taRightJustify
|
||||||
|
Properties.ReadOnly = False
|
||||||
|
Properties.UseLeftAlignmentOnEditing = False
|
||||||
|
Properties.UseThousandSeparator = True
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Style.Font.Color = clWindowText
|
||||||
|
Style.Font.Height = -11
|
||||||
|
Style.Font.Name = 'Tahoma'
|
||||||
|
Style.Font.Style = []
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.TextColor = clWindowText
|
||||||
|
Style.IsFontAssigned = True
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.TextColor = clWindowText
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 6
|
||||||
|
Height = 21
|
||||||
|
Width = 147
|
||||||
|
end
|
||||||
|
object eIVA: TcxDBLookupComboBox
|
||||||
|
Left = 104
|
||||||
|
Top = 55
|
||||||
|
DataBinding.DataField = 'ID_TIPO_IVA'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Properties.GridMode = True
|
||||||
|
Properties.ImmediatePost = True
|
||||||
|
Properties.KeyFieldNames = 'ID'
|
||||||
|
Properties.ListColumns = <
|
||||||
|
item
|
||||||
|
FieldName = 'REFERENCIA'
|
||||||
|
end>
|
||||||
|
Properties.ListOptions.GridLines = glNone
|
||||||
|
Properties.ListOptions.ShowHeader = False
|
||||||
|
Properties.ListSource = dsTiposIVA
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
Style.ButtonStyle = bts3D
|
||||||
|
Style.PopupBorderStyle = epbsFrame3D
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 1
|
||||||
|
Width = 81
|
||||||
|
end
|
||||||
|
object bTiposIVA: TButton
|
||||||
|
Left = 130
|
||||||
|
Top = 55
|
||||||
|
Width = 132
|
||||||
|
Height = 21
|
||||||
|
Caption = 'Ver los tipos de IVA...'
|
||||||
|
TabOrder = 2
|
||||||
|
end
|
||||||
|
object cbRecargoEquivalencia: TcxDBCheckBox
|
||||||
|
Left = 104
|
||||||
|
Top = 82
|
||||||
|
Caption = 'Aplicar recargo de equivalencia'
|
||||||
|
DataBinding.DataField = 'RECARGO_EQUIVALENCIA'
|
||||||
|
DataBinding.DataSource = DADataSource
|
||||||
|
Properties.ImmediatePost = True
|
||||||
|
Properties.NullStyle = nssUnchecked
|
||||||
|
Properties.ValueChecked = 1
|
||||||
|
Properties.ValueUnchecked = 0
|
||||||
|
Style.BorderColor = clWindowFrame
|
||||||
|
Style.BorderStyle = ebs3D
|
||||||
|
Style.HotTrack = False
|
||||||
|
Style.LookAndFeel.Kind = lfStandard
|
||||||
|
Style.LookAndFeel.NativeStyle = True
|
||||||
|
StyleDisabled.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleDisabled.LookAndFeel.NativeStyle = True
|
||||||
|
StyleFocused.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleFocused.LookAndFeel.NativeStyle = True
|
||||||
|
StyleHot.LookAndFeel.Kind = lfStandard
|
||||||
|
StyleHot.LookAndFeel.NativeStyle = True
|
||||||
|
TabOrder = 3
|
||||||
|
Width = 219
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Group_Root: TdxLayoutGroup
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutControl1Group1: TdxLayoutGroup
|
||||||
|
Caption = 'Importes totales'
|
||||||
|
LayoutDirection = ldHorizontal
|
||||||
|
object dxLayoutControl1Group2: TdxLayoutGroup
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutControl1Item8: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Importe neto:'
|
||||||
|
Control = eImporteNeto
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Group6: TdxLayoutGroup
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
LayoutDirection = ldHorizontal
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutControl1Item11: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Tipo de IVA:'
|
||||||
|
Control = eIVA
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Item15: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahRight
|
||||||
|
ShowCaption = False
|
||||||
|
Control = bTiposIVA
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Item16: TdxLayoutItem
|
||||||
|
Caption = ' '
|
||||||
|
Control = cbRecargoEquivalencia
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Item10: TdxLayoutItem
|
||||||
|
Caption = ' '
|
||||||
|
Control = Bevel1
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Group7: TdxLayoutGroup
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
LayoutDirection = ldHorizontal
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutControl1Item4: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
Caption = 'Descuento (%):'
|
||||||
|
Control = edtDescuento
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Item1: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Importe de dto:'
|
||||||
|
ShowCaption = False
|
||||||
|
Control = ImporteDto
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Item9: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Porte:'
|
||||||
|
Control = ePorte
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Group5: TdxLayoutGroup
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
LayoutDirection = ldHorizontal
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutControl1Item13: TdxLayoutItem
|
||||||
|
AutoAligns = [aaHorizontal]
|
||||||
|
AlignVert = avClient
|
||||||
|
Caption = ' '
|
||||||
|
Offsets.Left = 10
|
||||||
|
Offsets.Right = 10
|
||||||
|
ShowCaption = False
|
||||||
|
Control = Bevel3
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Group3: TdxLayoutGroup
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutControl1Item12: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Base imponible:'
|
||||||
|
Control = ImporteBase
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Group9: TdxLayoutGroup
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
LayoutDirection = ldHorizontal
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutControl1Item5: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
Caption = 'IVA (%):'
|
||||||
|
CaptionOptions.AlignHorz = taRightJustify
|
||||||
|
Control = edtIVA
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Item2: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Importe de IVA:'
|
||||||
|
ShowCaption = False
|
||||||
|
Control = ImporteIVA
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Group8: TdxLayoutGroup
|
||||||
|
ShowCaption = False
|
||||||
|
Hidden = True
|
||||||
|
LayoutDirection = ldHorizontal
|
||||||
|
ShowBorder = False
|
||||||
|
object dxLayoutControl1Item6: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
Caption = 'RE. (%):'
|
||||||
|
CaptionOptions.AlignHorz = taRightJustify
|
||||||
|
Control = edtRE
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Item7: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Importe de RE:'
|
||||||
|
ShowCaption = False
|
||||||
|
Visible = False
|
||||||
|
Control = ImporteRE
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Item14: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = ' '
|
||||||
|
Control = Bevel4
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Item3: TdxLayoutItem
|
||||||
|
AutoAligns = [aaVertical]
|
||||||
|
AlignHorz = ahClient
|
||||||
|
Caption = 'Importe total:'
|
||||||
|
LookAndFeel = LookAndFeelIMPORTE_TOTAL
|
||||||
|
Control = ImporteTotal
|
||||||
|
ControlOptions.ShowBorder = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dxLayoutControl1Group4: TdxLayoutGroup
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object DADataSource: TDADataSource
|
||||||
|
Left = 8
|
||||||
|
Top = 8
|
||||||
|
end
|
||||||
|
object dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList
|
||||||
|
Left = 40
|
||||||
|
Top = 8
|
||||||
|
object LookAndFeelIMPORTE_TOTAL: TdxLayoutStandardLookAndFeel
|
||||||
|
ItemOptions.CaptionOptions.Font.Charset = DEFAULT_CHARSET
|
||||||
|
ItemOptions.CaptionOptions.Font.Color = clWindowText
|
||||||
|
ItemOptions.CaptionOptions.Font.Height = -12
|
||||||
|
ItemOptions.CaptionOptions.Font.Name = 'Tahoma'
|
||||||
|
ItemOptions.CaptionOptions.Font.Style = [fsBold]
|
||||||
|
ItemOptions.CaptionOptions.UseDefaultFont = False
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dsTiposIVA: TDADataSource
|
||||||
|
Left = 8
|
||||||
|
Top = 40
|
||||||
|
end
|
||||||
|
end
|
||||||
71
Source/GUIBase/uViewTotales.pas
Normal file
71
Source/GUIBase/uViewTotales.pas
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
unit uViewTotales;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||||||
|
Dialogs, uViewBase, ExtCtrls, StdCtrls, DB, uDADataTable, cxGraphics,
|
||||||
|
cxTextEdit, cxMaskEdit, cxDropDownEdit, cxDBEdit, cxControls,
|
||||||
|
cxContainer, cxEdit, cxLabel, cxDBLabel, cxCurrencyEdit, cxSpinEdit,
|
||||||
|
ComCtrls, dxLayoutControl, dxLayoutLookAndFeels, cxLookupEdit, cxDBLookupEdit,
|
||||||
|
cxDBLookupComboBox, cxCheckBox;
|
||||||
|
|
||||||
|
type
|
||||||
|
TfrViewTotales = class(TfrViewBase)
|
||||||
|
DADataSource: TDADataSource;
|
||||||
|
ImporteBase: TcxDBCurrencyEdit;
|
||||||
|
ImporteDto: TcxDBCurrencyEdit;
|
||||||
|
ImporteIVA: TcxDBCurrencyEdit;
|
||||||
|
ImporteTotal: TcxDBCurrencyEdit;
|
||||||
|
edtDescuento: TcxDBSpinEdit;
|
||||||
|
edtIVA: TcxDBSpinEdit;
|
||||||
|
dxLayoutControl1Group_Root: TdxLayoutGroup;
|
||||||
|
dxLayoutControl1: TdxLayoutControl;
|
||||||
|
dxLayoutControl1Item1: TdxLayoutItem;
|
||||||
|
dxLayoutControl1Item2: TdxLayoutItem;
|
||||||
|
dxLayoutControl1Item3: TdxLayoutItem;
|
||||||
|
dxLayoutControl1Item4: TdxLayoutItem;
|
||||||
|
dxLayoutControl1Item5: TdxLayoutItem;
|
||||||
|
dxLayoutControl1Item12: TdxLayoutItem;
|
||||||
|
dxLayoutControl1Group1: TdxLayoutGroup;
|
||||||
|
dxLayoutControl1Group4: TdxLayoutGroup;
|
||||||
|
dxLayoutControl1Group5: TdxLayoutGroup;
|
||||||
|
dxLayoutControl1Item6: TdxLayoutItem;
|
||||||
|
edtRE: TcxDBSpinEdit;
|
||||||
|
dxLayoutControl1Item7: TdxLayoutItem;
|
||||||
|
ImporteRE: TcxDBCurrencyEdit;
|
||||||
|
dxLayoutControl1Item8: TdxLayoutItem;
|
||||||
|
eImporteNeto: TcxDBCurrencyEdit;
|
||||||
|
dxLayoutControl1Item9: TdxLayoutItem;
|
||||||
|
ePorte: TcxDBCurrencyEdit;
|
||||||
|
dxLayoutControl1Group2: TdxLayoutGroup;
|
||||||
|
Bevel1: TBevel;
|
||||||
|
dxLayoutControl1Item10: TdxLayoutItem;
|
||||||
|
dxLayoutControl1Group7: TdxLayoutGroup;
|
||||||
|
Bevel3: TBevel;
|
||||||
|
dxLayoutControl1Item13: TdxLayoutItem;
|
||||||
|
dxLayoutControl1Group3: TdxLayoutGroup;
|
||||||
|
dxLayoutControl1Item14: TdxLayoutItem;
|
||||||
|
Bevel4: TBevel;
|
||||||
|
dxLayoutControl1Group9: TdxLayoutGroup;
|
||||||
|
dxLayoutControl1Group8: TdxLayoutGroup;
|
||||||
|
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
|
||||||
|
LookAndFeelIMPORTE_TOTAL: TdxLayoutStandardLookAndFeel;
|
||||||
|
dxLayoutControl1Item11: TdxLayoutItem;
|
||||||
|
eIVA: TcxDBLookupComboBox;
|
||||||
|
dxLayoutControl1Item15: TdxLayoutItem;
|
||||||
|
bTiposIVA: TButton;
|
||||||
|
dxLayoutControl1Group6: TdxLayoutGroup;
|
||||||
|
dsTiposIVA: TDADataSource;
|
||||||
|
dxLayoutControl1Item16: TdxLayoutItem;
|
||||||
|
cbRecargoEquivalencia: TcxDBCheckBox;
|
||||||
|
public
|
||||||
|
{ Public declarations }
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
end.
|
||||||
Loading…
Reference in New Issue
Block a user