source410: literal 4.10 source reconstruction + BC++ 4.52 fleet toolchain archived
- BORLAND/: Borland C++ 4.52 (chosen over 4.5 by byte-match: CODE/RP/CW32.LIB
is identical to 4.52's install lib). BCC32/TLINK32/TLIB/MAKE run natively on
Win11; CODE/BT/OPT.MAK is the shipped BTL4OPT.EXE's exact flag recipe
(extender = Borland PowerPack DPMI32, not Phar Lap TNT).
- restoration/source410/: the literal 1995-form reconstruction of the missing
BT game source (never mixed into CODE/). Round 1-3 state:
* 6 of 10 surviving original TUs COMPILE CLEAN under the period toolchain
(BTMSSN, BTCNSL, BTSCNRL, BTTEAM, BTL4MODE, BTL4ARND) - first builds
since 1996.
* BT_L4/BTL4APP.CPP pilot reconstruction: 12/12 functions, Fail() lands on
its binary-recorded line 400 exactly.
* BT/BTCNSL.HPP: console wire IDs recovered from the binary's ctors
(Killed=9, Damaged=10, ScoreUpdate=13, DeathWithoutHonor=15 [T1];
TeamScore=12 flagged [T4]).
* MUNGA/: 8 engine-header backfills back-dated from the BT412 WinTesla tree
(VDATA numbering decomp-verified; AUDREND's OpenAL-era virtual removed -
the period compiler is the drift detector).
* Tooling: backdate.py (WinTesla->1995 header transform), compile410.sh
(per-TU verification sweep under authentic OPT.MAK flags).
* README: corrected roadmap - MECH.HPP is the capstone grown with the mech
TU reconstructions; BTREG.CPP green = the header-family milestone.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@@ -0,0 +1,62 @@
|
||||
<<[CPP]
|
||||
##QUERY_SNP_AUTO_KIND [[Kind]]
|
||||
##QUERY_SNP_AUTO_NAME [[InternalName]]
|
||||
##QUERY_SNP_AUTO_GETNAME [[GetName]]
|
||||
##QUERY_SNP_AUTO_SETNAME [[SetName]]
|
||||
##QUERY_SNP_AUTO_CPPTYPE [[CPPType]]
|
||||
##QUERY_SNP_AUTO_OLETYPE [[OLEType]]
|
||||
##QUERY_SNP_AUTO_DESCR [[Description]]
|
||||
##QUERY_SNP_AUTO_GETPROPERTY [[GetProperty]]
|
||||
##QUERY_SNP_AUTO_SETPROPERTY [[SetProperty]]
|
||||
##QUERY_SNP_AUTO_CPPARGS [[CPPArguments]]
|
||||
##QUERY_SNP_AUTO_OLEARGS [[OLEArguments]]
|
||||
##QUERY_SNP_AUTO_VALIDATOR [[Validator]]
|
||||
##FALSE [[GetDuplicateFunc]]
|
||||
##FALSE [[SetDuplicateFunc]]
|
||||
##FALSE [[MethodDuplicateFunc]]
|
||||
##SetGlobal(FALSE)
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##Kind == VALUE_DATA
|
||||
## :{CAddData.SNP}
|
||||
##*
|
||||
##Kind == VALUE_PROPERTY
|
||||
## :{CAddProp.SNP}
|
||||
## :(GetDuplicateFunc == TRUE) || (SetDuplicateFunc == TRUE)
|
||||
## :SetGlobal(TRUE)
|
||||
##*
|
||||
##Kind == VALUE_METHOD
|
||||
## :{CAddMeth.SNP}
|
||||
## :MethodDuplicateFunc == TRUE
|
||||
## :SetGlobal(TRUE)
|
||||
##*
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##*
|
||||
>>[CPP]
|
||||
|
||||
|
||||
<<[H]
|
||||
##QUERY_SNP_AUTO_KIND [[Kind]]
|
||||
##QUERY_SNP_AUTO_NAME [[InternalName]]
|
||||
##QUERY_SNP_AUTO_GETNAME [[GetName]]
|
||||
##QUERY_SNP_AUTO_SETNAME [[SetName]]
|
||||
##QUERY_SNP_AUTO_CPPTYPE [[CPPType]]
|
||||
##QUERY_SNP_AUTO_OLETYPE [[OLEType]]
|
||||
##QUERY_SNP_AUTO_DESCR [[Description]]
|
||||
##QUERY_SNP_AUTO_GETPROPERTY [[GetProperty]]
|
||||
##QUERY_SNP_AUTO_SETPROPERTY [[SetProperty]]
|
||||
##QUERY_SNP_AUTO_CPPARGS [[CPPArguments]]
|
||||
##QUERY_SNP_AUTO_OLEARGS [[OLEArguments]]
|
||||
##QUERY_SNP_AUTO_VALIDATOR [[Validator]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## Kind == VALUE_DATA
|
||||
## :{HAddData.SNP}
|
||||
##*
|
||||
## Kind == VALUE_PROPERTY
|
||||
## :{HAddProp.SNP}
|
||||
##*
|
||||
## Kind == VALUE_METHOD
|
||||
## :{HAddMeth.SNP}
|
||||
##*
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##*
|
||||
>>[H]
|
||||
@@ -0,0 +1,79 @@
|
||||
<<[H]
|
||||
##QUERY_BASE_NAME != "TDialog"
|
||||
##: QUERY_CLASS_NAME [[ClassName]]
|
||||
##: %\\"[[ClassName]] is not derived from TDialog. Instance data not added. "
|
||||
##*
|
||||
##"" [[ClassDefLine]]
|
||||
##"" [[ConstructorLine]]
|
||||
##"" [[StructDefLine]]
|
||||
##"" [[IncludeFile]]
|
||||
##--BEGIN-- QUERY_BASE_NAME == "TDialog"
|
||||
##{XfrState.SNP}
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##TRUE [[Search2]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? IncludeFile [[Search1]]
|
||||
##Search1 == FALSE
|
||||
##: ^BOF
|
||||
##: ? "#include" Search2
|
||||
##Search2 == FALSE
|
||||
##: %\\"[[ClassName]] missing #include for instance data. "
|
||||
##*
|
||||
##(Search1 == FALSE) && (Search2 == TRUE)
|
||||
##: ^3
|
||||
##: ^BOL
|
||||
[[IncludeFile]]
|
||||
##--END-- ? IncludeFile [[Search1]]
|
||||
##\\"//{{[[ClassName]]XFER_DATA_END}}" [[XFerMarker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? XFerMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: {HAddSXfr.SNP}
|
||||
##: ^BOF
|
||||
##: ? XFerMarker [[Search]]
|
||||
##*
|
||||
##--END-- ? XFerMarker [[Search]]
|
||||
##^BOL
|
||||
##StructDefLine != ""
|
||||
[[StructDefLine]]
|
||||
##\\"//{{[[ClassName]]XFER_DEF_END}}" [[XFerMarker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? XFerMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: {HAddCXfr.SNP}
|
||||
##: ^BOF
|
||||
##: ? XFerMarker [[Search]]
|
||||
##*
|
||||
##--END-- ? XFerMarker [[Search]]
|
||||
##^-1
|
||||
##^BOL
|
||||
[[ClassDefLine]]
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##--END-- QUERY_BASE_NAME == "TDialog"
|
||||
>>[H]
|
||||
|
||||
|
||||
<<[CPP]
|
||||
##"" [[ClassDefLine]]
|
||||
##"" [[ConstructorLine]]
|
||||
##"" [[StructDefLine]]
|
||||
##"" [[IncludeFile]]
|
||||
##--BEGIN-- QUERY_BASE_NAME == "TDialog"
|
||||
##{XfrState.SNP}
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"//{{[[ClassName]]XFER_USE_END}}" [[XFerMarker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? XFerMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: {CAddCXfr.SNP}
|
||||
##: ^BOF
|
||||
##: ? XFerMarker [[Search]]
|
||||
##*
|
||||
##--END-- ? XFerMarker [[Search]]
|
||||
##^-2
|
||||
##^BOL
|
||||
[[ConstructorLine]]
|
||||
##^^
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##--END-- QUERY_BASE_NAME == "TDialog"
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,23 @@
|
||||
##--BEGIN-- @OPT_APPL_DOCVIEW
|
||||
//{{DOC_VIEW}}
|
||||
##OPT_DV_RESET
|
||||
##--FOR-- IncrV = 1 TO @QUERY_DV_COUNT
|
||||
## OPT_DV_NEXT
|
||||
## QUERY_DV_TDOCUMENT [[TDocument]]
|
||||
## QUERY_DV_TVIEW [[TView]]
|
||||
DEFINE_DOC_TEMPLATE_CLASS([[TDocument]], [[TView]], DocType[[IncrV]]);
|
||||
##--NEXT-- IncrV
|
||||
//{{DOC_VIEW_END}}
|
||||
|
||||
//{{DOC_MANAGER}}
|
||||
##OPT_DV_RESET
|
||||
##--FOR-- IncrV = 1 TO @QUERY_DV_COUNT
|
||||
## OPT_DV_NEXT
|
||||
## QUERY_DV_DESCR [[Descr]]
|
||||
## QUERY_DV_FILTER [[Filter]]
|
||||
## QUERY_DV_EXT [[Ext]]
|
||||
## QUERY_DV_STYLE [[Style]]
|
||||
DocType[[IncrV]] __dvt[[IncrV]]("[[Descr]]", "[[Filter]]", 0, "[[Ext]]", [[Style]]);
|
||||
##--NEXT-- IncrV
|
||||
//{{DOC_MANAGER_END}}
|
||||
##--END-- @OPT_APPL_DOCVIEW
|
||||
@@ -0,0 +1,77 @@
|
||||
##--BEGIN-- @OPT_APPL_DOCVIEW
|
||||
//{{DOC_VIEW}}
|
||||
##OPT_DV_RESET
|
||||
##--FOR-- IncrV = 1 TO @QUERY_DV_COUNT
|
||||
## OPT_DV_NEXT
|
||||
## QUERY_DV_TDOCUMENT [[TDocument]]
|
||||
## QUERY_DV_TVIEW [[TView]]
|
||||
DEFINE_DOC_TEMPLATE_CLASS([[TDocument]], [[TView]], DocType[[IncrV]]);
|
||||
##--NEXT-- IncrV
|
||||
//{{DOC_VIEW_END}}
|
||||
|
||||
//{{DOC_MANAGER}}
|
||||
##OPT_DV_RESET
|
||||
##"" [[Descr]]
|
||||
##"" [[Filter]]
|
||||
##"" [[Ext]]
|
||||
##"" [[Style]]
|
||||
##"" [[View]]
|
||||
##"" [[ViewBase]]
|
||||
##--FOR-- IncrV = 1 TO @QUERY_DV_COUNT
|
||||
## OPT_DV_NEXT
|
||||
## QUERY_DV_DESCR Descr
|
||||
## QUERY_DV_FILTER Filter
|
||||
## QUERY_DV_EXT Ext
|
||||
## QUERY_DV_STYLE Style
|
||||
## QUERY_DV_TVIEW View
|
||||
BEGIN_REGISTRATION(__dvReg[[IncrV]])
|
||||
## --BEGIN-- @QUERY_PRJ_NAME [[Title]]
|
||||
## --BEGIN-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## :"" ViewBase
|
||||
## :<<*View QUERY_BASE_NAME ViewBase
|
||||
## --BEGIN-- ViewBase == "TOleView"
|
||||
REGDATA(progid, "[[Title]].Document.[[IncrV]]")
|
||||
## :((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
REGDATA(description, "[[Title]] Document Version [[IncrV]]")
|
||||
## :((@QUERY_APPL_OLE != VALUE_SERVER) && (@QUERY_APPL_OLE != VALUE_OLEBOTH))
|
||||
REGDATA(description, "[[Descr]]")
|
||||
## --END-- ViewBase == "TOleView"
|
||||
## :ViewBase != "TOleView"
|
||||
REGDATA(description, "[[Descr]]")
|
||||
## --END-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## --END-- @QUERY_PRJ_NAME [[Title]]
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
REGDATA(description, "[[Descr]]")
|
||||
REGDATA(extension, "[[Ext]]")
|
||||
REGDATA(docfilter, "[[Filter]]")
|
||||
##--BEGIN-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
##<<*View QUERY_BASE_NAME ViewBase
|
||||
##ViewBase == "TOleView"
|
||||
REGDOCFLAGS([[Style]] | dtAutoOpen | dtRegisterExt)
|
||||
##ViewBase != "TOleView"
|
||||
REGDOCFLAGS([[Style]])
|
||||
##--END-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
REGDOCFLAGS([[Style]])
|
||||
// REGDATA(debugger, "TDW")
|
||||
##<<*View QUERY_BASE_NAME ViewBase
|
||||
##--BEGIN-- ViewBase == "TOleView"
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
REGDATA(menuname, "[[View]]")
|
||||
REGDATA(insertable, "")
|
||||
REGDATA(verb0, "&Edit")
|
||||
REGDATA(verb1, "&Open")
|
||||
##--END-- ((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE == VALUE_CONTAINER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH) || (@QUERY_APPL_OLE == VALUE_SERVER))
|
||||
REGFORMAT(0, ocrEmbedSource, ocrContent, ocrIStorage, ocrGet)
|
||||
REGFORMAT(1, ocrMetafilePict, ocrContent, ocrMfPict | ocrStaticMed, ocrGet)
|
||||
REGFORMAT(2, ocrBitmap, ocrContent, ocrGDI | ocrStaticMed, ocrGet)
|
||||
REGFORMAT(3, ocrDib, ocrContent, ocrHGlobal | ocrStaticMed, ocrGet)
|
||||
REGFORMAT(4, ocrLinkSource, ocrContent, ocrIStream, ocrGet)
|
||||
##--END-- ((@QUERY_APPL_OLE == VALUE_CONTAINER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH) || (@QUERY_APPL_OLE == VALUE_SERVER))
|
||||
##--END-- ViewBase == "TOleView"
|
||||
END_REGISTRATION
|
||||
DocType[[IncrV]] __dvt[[IncrV]](__dvReg[[IncrV]]);
|
||||
##--NEXT-- IncrV
|
||||
//{{DOC_MANAGER_END}}
|
||||
##--END-- @OPT_APPL_DOCVIEW
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
@@ -0,0 +1,334 @@
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
/* Project [[Project]]
|
||||
##@QUERY_PRJ_COMPANY [[CompanyName]] 2
|
||||
##@QUERY_PRJ_COPYRIGHT [[Copyright]] 2
|
||||
##\\Copyright Copyright 2
|
||||
[[CompanyName]]
|
||||
[[Copyright]]
|
||||
|
||||
##@QUERY_TARGET_NAME [[Target]]
|
||||
SUBSYSTEM: [[Target]] Application
|
||||
FILE: APXPrev.CPP
|
||||
##@QUERY_PRJ_USER [[Author]]
|
||||
AUTHOR: [[Author]]
|
||||
|
||||
|
||||
OVERVIEW
|
||||
========
|
||||
Source file for implementation of Print Preview.
|
||||
*/
|
||||
|
||||
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
#include "apxprev.h"
|
||||
|
||||
##<<TApplication QUERY_FILENAME_CPP [[FileName]]
|
||||
#include "[[FileName]].rh"
|
||||
|
||||
|
||||
//{{PreviewWindow Implementation}}
|
||||
|
||||
DEFINE_RESPONSE_TABLE1(PreviewWindow, TDecoratedFrame)
|
||||
EV_COMMAND_ENABLE(APX_PPR_PREVIOUS, PPR_PreviousEnable),
|
||||
EV_COMMAND_ENABLE(APX_PPR_NEXT, PPR_NextEnable),
|
||||
EV_COMMAND(APX_PPR_PREVIOUS, PPR_Previous),
|
||||
EV_COMMAND(APX_PPR_NEXT, PPR_Next),
|
||||
EV_COMMAND(APX_PPR_ONEUP, PPR_OneUp),
|
||||
EV_COMMAND_ENABLE(APX_PPR_TWOUP, PPR_TwoUpEnable),
|
||||
EV_COMMAND(APX_PPR_TWOUP, PPR_TwoUp),
|
||||
EV_COMMAND(APX_PPR_DONE, PPR_Done),
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI 2
|
||||
EV_COMMAND(CM_FILEPRINT, CmPrint),
|
||||
EV_COMMAND_ENABLE(CM_FILEPRINT, CmPrintEnable),
|
||||
//{{PreviewWindowRSP_TBL_BEGIN}}
|
||||
//{{PreviewWindowRSP_TBL_END}}
|
||||
END_RESPONSE_TABLE;
|
||||
|
||||
|
||||
PreviewWindow::PreviewWindow (TWindow *parentWindow, TPrinter *printer, TWindow* currWindow, const char far* title, TLayoutWindow* client) :
|
||||
TDecoratedFrame(parentWindow, title, client)
|
||||
{
|
||||
CurrWindow = currWindow;
|
||||
Printer = printer;
|
||||
Client = client;
|
||||
Page1 = 0;
|
||||
Page2 = 0;
|
||||
|
||||
TPrintDialog::TData& data = Printer->GetSetup();
|
||||
PrnDC = new TPrintDC(data.GetDriverName(),
|
||||
data.GetDeviceName(),
|
||||
data.GetOutputName(),
|
||||
data.GetDevMode());
|
||||
|
||||
PrintExtent = new TSize(PrnDC->GetDeviceCaps(HORZRES), PrnDC->GetDeviceCaps(VERTRES));
|
||||
Printout = new APXPrintOut(Printer, "Print Preview", currWindow, true);
|
||||
|
||||
SetBkgndColor(::GetSysColor(COLOR_APPWORKSPACE));
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Create default toolbar New and associate toolbar buttons with commands.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
PreviewSpeedBar = new TControlBar(this);
|
||||
PreviewSpeedBar->Insert(*new TButtonGadget(APX_PPR_PREVIOUS, APX_PPR_PREVIOUS, TButtonGadget::Command, true));
|
||||
PreviewSpeedBar->Insert(*new TButtonGadget(APX_PPR_NEXT, APX_PPR_NEXT, TButtonGadget::Command, true));
|
||||
PreviewSpeedBar->Insert(*new TSeparatorGadget(6));
|
||||
PreviewSpeedBar->Insert(*new TButtonGadget(APX_PPR_ONEUP, APX_PPR_ONEUP, TButtonGadget::Exclusive, true, TButtonGadget::Down));
|
||||
PreviewSpeedBar->Insert(*new TButtonGadget(APX_PPR_TWOUP, APX_PPR_TWOUP, TButtonGadget::Exclusive, true));
|
||||
PreviewSpeedBar->Insert(*new TSeparatorGadget(12));
|
||||
PreviewSpeedBar->Insert(*new TTextGadget(APX_PPR_CURRPAGE, TGadget::Recessed, TTextGadget::Left, 10, "Page 1"));
|
||||
PreviewSpeedBar->Insert(*new TSeparatorGadget(20));
|
||||
PreviewSpeedBar->Insert(*new TButtonGadget(CM_FILEPRINT, CM_FILEPRINT, TButtonGadget::Command, true));
|
||||
PreviewSpeedBar->Insert(*new TSeparatorGadget(20));
|
||||
PreviewSpeedBar->Insert(*new TButtonGadget(APX_PPR_DONE, APX_PPR_DONE, TButtonGadget::Command, true));
|
||||
Insert(*PreviewSpeedBar, TDecoratedFrame::Top);
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// We want a window that cannot be sized, maximized, or minimized.
|
||||
Attr.Style = (WS_VISIBLE | WS_POPUP);
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Don't show the border of the preview window.
|
||||
Attr.X = 0;
|
||||
Attr.Y = -1;
|
||||
Attr.W = Parent->GetClientRect().Width();
|
||||
Attr.H = Parent->GetClientRect().Height() + 1;
|
||||
parentWindow->MapWindowPoints(HWindow, (TPoint *)&(Attr.X), 1);
|
||||
}
|
||||
|
||||
|
||||
PreviewWindow::~PreviewWindow ()
|
||||
{
|
||||
delete Page1;
|
||||
Page1 = 0;
|
||||
delete Page2;
|
||||
Page2 = 0;
|
||||
|
||||
delete PrnDC;
|
||||
PrnDC = 0;
|
||||
delete PrintExtent;
|
||||
PrintExtent = 0;
|
||||
delete Printout;
|
||||
Printout = 0;
|
||||
}
|
||||
|
||||
|
||||
void PreviewWindow::SetupWindow ()
|
||||
{
|
||||
TDecoratedFrame::SetupWindow();
|
||||
|
||||
TPrintDialog::TData& data = Printer->GetSetup();
|
||||
Page1 = new TPreviewPage(Client, *Printout, *PrnDC, *PrintExtent, 1);
|
||||
Page1->SetPageNumber(1);
|
||||
data.FromPage = 1;
|
||||
data.ToPage = 1;
|
||||
data.MinPage = 1;
|
||||
data.MaxPage = 1;
|
||||
|
||||
Page2 = 0;
|
||||
|
||||
TLayoutMetrics metrics1;
|
||||
|
||||
metrics1.X.Set(lmLeft, lmRightOf, lmParent, lmLeft, 15);
|
||||
metrics1.Y.Set(lmTop, lmBelow, lmParent, lmTop, 15);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Determine major axis of preview page, have that follow parent size.
|
||||
// Make minor axis a percentage (aspect ratio) of the page's major axis
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
TRect r = Client->GetClientRect();
|
||||
long ratio;
|
||||
|
||||
if (PrintExtent->cx > PrintExtent->cy)
|
||||
ratio = ((long)PrintExtent->cy * 100) / PrintExtent->cx;
|
||||
else
|
||||
ratio = ((long)PrintExtent->cx * 100) / PrintExtent->cy;
|
||||
|
||||
bool xMajor = (((r.Width() * ratio) / 100) > r.Height());
|
||||
if (xMajor){
|
||||
metrics1.Height.Set(lmBottom, lmAbove, lmParent, lmBottom, 15);
|
||||
metrics1.Width.PercentOf(Page1, (int)((long)PrintExtent->cx * 95 / PrintExtent->cy), lmHeight);
|
||||
} else {
|
||||
metrics1.Height.PercentOf(Page1, (int)((long)PrintExtent->cy * 95 / PrintExtent->cx), lmWidth);
|
||||
metrics1.Width.Set(lmRight, lmLeftOf, lmParent, lmRight, 15);
|
||||
}
|
||||
|
||||
Page1->Create();
|
||||
|
||||
Client->SetChildLayoutMetrics(*Page1, metrics1);
|
||||
Client->Layout();
|
||||
}
|
||||
|
||||
|
||||
void PreviewWindow::SpeedBarState ()
|
||||
{
|
||||
TPrintDialog::TData &printerData = Printer->GetSetup();
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Update the page count.
|
||||
TTextGadget *theTGadget = TYPESAFE_DOWNCAST(PreviewSpeedBar->GadgetWithId(APX_PPR_CURRPAGE), TTextGadget);
|
||||
if (theTGadget) {
|
||||
char buffer[32];
|
||||
if (Page2 && (printerData.FromPage != printerData.ToPage))
|
||||
wsprintf(buffer, "Page %d - %d", printerData.FromPage, printerData.ToPage);
|
||||
else
|
||||
wsprintf(buffer, "Page %d", printerData.FromPage);
|
||||
theTGadget->SetText(buffer);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void PreviewWindow::PPR_PreviousEnable (TCommandEnabler &tce)
|
||||
{
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Only have previous on if we're not at the first page.
|
||||
TPrintDialog::TData &printerData = Printer->GetSetup();
|
||||
tce.Enable(printerData.FromPage != 1);
|
||||
}
|
||||
|
||||
|
||||
void PreviewWindow::PPR_NextEnable (TCommandEnabler &tce)
|
||||
{
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Only have next on if we're not at the last page.
|
||||
TPrintDialog::TData &printerData = Printer->GetSetup();
|
||||
tce.Enable(printerData.ToPage != printerData.MaxPage);
|
||||
}
|
||||
|
||||
|
||||
void PreviewWindow::PPR_Previous ()
|
||||
{
|
||||
TPrintDialog::TData &printerData = Printer->GetSetup();
|
||||
|
||||
if (printerData.FromPage > printerData.MinPage) {
|
||||
printerData.FromPage--;
|
||||
printerData.ToPage--;
|
||||
|
||||
Page1->SetPageNumber(printerData.FromPage);
|
||||
if (Page2)
|
||||
Page2->SetPageNumber(printerData.ToPage);
|
||||
}
|
||||
|
||||
SpeedBarState();
|
||||
}
|
||||
|
||||
|
||||
void PreviewWindow::PPR_Next ()
|
||||
{
|
||||
TPrintDialog::TData &printerData = Printer->GetSetup();
|
||||
|
||||
if (printerData.ToPage < printerData.MaxPage) {
|
||||
printerData.FromPage++;
|
||||
printerData.ToPage++;
|
||||
|
||||
Page1->SetPageNumber(printerData.FromPage);
|
||||
if (Page2)
|
||||
Page2->SetPageNumber(printerData.ToPage);
|
||||
}
|
||||
|
||||
SpeedBarState();
|
||||
}
|
||||
|
||||
|
||||
void PreviewWindow::PPR_OneUp ()
|
||||
{
|
||||
if (Page2) {
|
||||
Client->RemoveChildLayoutMetrics(*Page2);
|
||||
|
||||
delete Page2;
|
||||
Page2 = 0;
|
||||
|
||||
Client->Layout();
|
||||
|
||||
TPrintDialog::TData &printerData = Printer->GetSetup();
|
||||
printerData.ToPage = printerData.FromPage;
|
||||
|
||||
SpeedBarState();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void PreviewWindow::PPR_TwoUpEnable (TCommandEnabler &tce)
|
||||
{
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Two up is only available for portrait mode.
|
||||
tce.Enable(PrintExtent->cx <= PrintExtent->cy);
|
||||
}
|
||||
|
||||
|
||||
void PreviewWindow::PPR_TwoUp ()
|
||||
{
|
||||
if (Page2 == 0) {
|
||||
Page2 = new TPreviewPage(Client, *Printout, *PrnDC, *PrintExtent, PageNumber + 1);
|
||||
Page2->Create();
|
||||
|
||||
TLayoutMetrics metrics2;
|
||||
|
||||
metrics2.X.Set(lmLeft, lmRightOf, Page1, lmRight, 30);
|
||||
metrics2.Y.SameAs(Page1, lmTop);
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE 2
|
||||
// Assume portrait
|
||||
//
|
||||
metrics2.Width.SameAs(Page1, lmWidth);
|
||||
metrics2.Height.SameAs(Page1, lmBottom);
|
||||
|
||||
Client->SetChildLayoutMetrics(*Page2, metrics2);
|
||||
Client->Layout();
|
||||
|
||||
TPrintDialog::TData &printerData = Printer->GetSetup();
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Page 2 is the next page. If the next page is outside of our
|
||||
// range then set the first page back one and the 2nd page is
|
||||
// the current page. If the document is only 1 page long then
|
||||
// the 2nd page is empty.
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
if (printerData.FromPage == printerData.MaxPage) {
|
||||
if (printerData.FromPage > 1) {
|
||||
printerData.FromPage--;
|
||||
printerData.ToPage = printerData.FromPage + 1;
|
||||
Page1->SetPageNumber(printerData.FromPage);
|
||||
Page2->SetPageNumber(printerData.ToPage);
|
||||
} else
|
||||
Page2->SetPageNumber(0);
|
||||
} else {
|
||||
printerData.ToPage = printerData.FromPage + 1;
|
||||
Page2->SetPageNumber(printerData.ToPage);
|
||||
}
|
||||
|
||||
SpeedBarState();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void PreviewWindow::PPR_Done ()
|
||||
{
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Don't call the base class EvClose we do not want PreviewWindow to be destructed.
|
||||
##@QUERY_APPL_MODEL == VALUE_SDI
|
||||
GetApplication()->GetMainWindow()->SetRedraw(false);
|
||||
GetApplication()->EndModal(IDCANCEL);
|
||||
}
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
|
||||
|
||||
void PreviewWindow::CmPrint ()
|
||||
{
|
||||
TWindow *client = GetApplication()->GetMainWindow()->GetClientWindow();
|
||||
|
||||
if (client)
|
||||
client->SendMessage(WM_COMMAND, CM_FILEPRINT, 0);
|
||||
}
|
||||
|
||||
|
||||
void PreviewWindow::CmPrintEnable (TCommandEnabler &tce)
|
||||
{
|
||||
tce.Enable(true);
|
||||
}
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
@@ -0,0 +1,80 @@
|
||||
#if !defined(__apxprev_h) // Sentry, use file only if it's not already included.
|
||||
#define __apxprev_h
|
||||
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
/* Project [[Project]]
|
||||
##@QUERY_PRJ_COMPANY [[CompanyName]] 2
|
||||
##@QUERY_PRJ_COPYRIGHT [[Copyright]] 2
|
||||
##\\Copyright Copyright 2
|
||||
[[CompanyName]]
|
||||
[[Copyright]]
|
||||
|
||||
##@QUERY_TARGET_NAME [[Target]]
|
||||
SUBSYSTEM: [[Target]] Application
|
||||
FILE: APXPrev.H
|
||||
##@QUERY_PRJ_USER [[Author]]
|
||||
AUTHOR: [[Author]]
|
||||
|
||||
|
||||
OVERVIEW
|
||||
========
|
||||
Class definition for PreviewWindow (Print Preview).
|
||||
*/
|
||||
|
||||
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
#include "apxprint.h"
|
||||
##<<TApplication QUERY_FILENAME_CPP [[FileName]]
|
||||
#include "[[FileName]].rh"
|
||||
|
||||
|
||||
//{{TDecoratedFrame = PreviewWindow}}
|
||||
class PreviewWindow : public TDecoratedFrame {
|
||||
public:
|
||||
PreviewWindow (TWindow *parentWindow, TPrinter *printer, TWindow* currWindow, const char far* title, TLayoutWindow* client);
|
||||
~PreviewWindow ();
|
||||
|
||||
int PageNumber;
|
||||
|
||||
TWindow *CurrWindow;
|
||||
TControlBar *PreviewSpeedBar;
|
||||
TPreviewPage *Page1;
|
||||
TPreviewPage *Page2;
|
||||
TPrinter *Printer;
|
||||
|
||||
TPrintDC *PrnDC;
|
||||
TSize *PrintExtent;
|
||||
APXPrintOut *Printout;
|
||||
|
||||
private:
|
||||
TLayoutWindow *Client;
|
||||
|
||||
void SpeedBarState ();
|
||||
void PPR_PreviousEnable (TCommandEnabler &tce);
|
||||
void PPR_NextEnable (TCommandEnabler &tce);
|
||||
void PPR_Previous ();
|
||||
void PPR_Next ();
|
||||
void PPR_OneUp ();
|
||||
void PPR_TwoUpEnable (TCommandEnabler &tce);
|
||||
void PPR_TwoUp ();
|
||||
void PPR_Done ();
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI 2
|
||||
void CmPrintEnable (TCommandEnabler &tce);
|
||||
void CmPrint ();
|
||||
|
||||
//{{PreviewWindowVIRTUAL_BEGIN}}
|
||||
protected:
|
||||
##DBVirtual("PreviewWindow", "SetupWindow")
|
||||
virtual void SetupWindow ();
|
||||
//{{PreviewWindowVIRTUAL_END}}
|
||||
|
||||
//{{PreviewWindowRSP_TBL_BEGIN}}
|
||||
protected:
|
||||
//{{PreviewWindowRSP_TBL_END}}
|
||||
DECLARE_RESPONSE_TABLE(PreviewWindow);
|
||||
}; //{{PreviewWindow}}
|
||||
|
||||
|
||||
#endif // __apxprev_h sentry.
|
||||
@@ -0,0 +1,187 @@
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
/* Project [[Project]]
|
||||
##@QUERY_PRJ_COMPANY [[CompanyName]] 2
|
||||
##@QUERY_PRJ_COPYRIGHT [[Copyright]] 2
|
||||
##\\Copyright Copyright 2
|
||||
[[CompanyName]]
|
||||
[[Copyright]]
|
||||
|
||||
##@QUERY_TARGET_NAME [[Target]]
|
||||
SUBSYSTEM: [[Target]] Application
|
||||
FILE: APXPrint.CPP
|
||||
##@QUERY_PRJ_USER [[Author]]
|
||||
AUTHOR: [[Author]]
|
||||
|
||||
|
||||
OVERVIEW
|
||||
========
|
||||
Source file for implementation of Printing.
|
||||
*/
|
||||
|
||||
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
#include "apxprint.h"
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Do not enable page range in the print dialog since only one page is
|
||||
// available to be printed
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void APXPrintOut::GetDialogInfo (int& minPage, int& maxPage, int& selFromPage, int& selToPage)
|
||||
{
|
||||
minPage = maxPage = 0;
|
||||
selFromPage = selToPage = 0;
|
||||
}
|
||||
|
||||
|
||||
void APXPrintOut::BeginPrinting ()
|
||||
{
|
||||
TRect clientR;
|
||||
|
||||
BeginPage(clientR);
|
||||
|
||||
HFONT hFont = (HFONT)Window->GetWindowFont();
|
||||
TFont font("Arial", -12);
|
||||
if (hFont == 0)
|
||||
DC->SelectObject(font);
|
||||
else
|
||||
DC->SelectObject(TFont(hFont));
|
||||
|
||||
TEXTMETRIC tm;
|
||||
int fHeight = (DC->GetTextMetrics(tm) == true) ? tm.tmHeight + tm.tmExternalLeading : 10;
|
||||
|
||||
DC->RestoreFont();
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// How many lines of this font can we fit on a page.
|
||||
int linesPerPage = MulDiv(clientR.Height(), 1, fHeight);
|
||||
|
||||
TPrintDialog::TData &printerData = Printer->GetSetup();
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// GetMinMaxInfo event is overrided to return the number of lines when printing.
|
||||
MINMAXINFO minmaxinfo;
|
||||
Window->SendMessage(WM_GETMINMAXINFO, 0, (long)&minmaxinfo);
|
||||
int maxPg = ((minmaxinfo.ptMaxSize.y / linesPerPage) + 1.0);
|
||||
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Compute the number of pages to print.
|
||||
printerData.MinPage = 1;
|
||||
printerData.MaxPage = maxPg;
|
||||
|
||||
EndPage();
|
||||
|
||||
TPrintout::BeginPrinting();
|
||||
}
|
||||
|
||||
|
||||
void APXPrintOut::BeginPage (TRect &clientR)
|
||||
{
|
||||
TScreenDC screenDC;
|
||||
TSize screenRes(screenDC.GetDeviceCaps(LOGPIXELSX),
|
||||
screenDC.GetDeviceCaps(LOGPIXELSY));
|
||||
TSize printRes(DC->GetDeviceCaps(LOGPIXELSX),
|
||||
DC->GetDeviceCaps(LOGPIXELSY));
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Temporarily change the window size (so any WM_PAINT queries on the total window size (GetClientRect) is
|
||||
// the window size for the WM_PAINT of the window and the printer page size when Paint is called from
|
||||
// PrintPage. Notice, we don't use AdjustWindowRect because its harder and not accurate. Instead we
|
||||
// compute the difference (in pixels) between the client window and the frame window. This difference
|
||||
// is then added to the clientRect to compute the new frame window size for SetWindowPos.
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
clientR = Window->GetClientRect();
|
||||
Window->MapWindowPoints(HWND_DESKTOP, (TPoint*)&clientR, 2);
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Compute extra X and Y pixels to bring a client window dimensions to equal the frame window.
|
||||
OrgR = Window->GetWindowRect();
|
||||
int adjX = OrgR.Width() - clientR.Width();
|
||||
int adjY = OrgR.Height() - clientR.Height();
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Conditionally scale the DC to the window so the printout will resemble the window.
|
||||
if (Scale) {
|
||||
clientR = Window->GetClientRect();
|
||||
PrevMode = DC->SetMapMode(MapMode);
|
||||
DC->SetViewportExt(PageSize, &OldVExt);
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Scale window to logical page size (assumes left & top are 0)
|
||||
clientR.right = MulDiv(PageSize.cx, screenRes.cx, printRes.cx);
|
||||
clientR.bottom = MulDiv(PageSize.cy, screenRes.cy, printRes.cy);
|
||||
|
||||
DC->SetWindowExt(clientR.Size(), &OldWExt);
|
||||
}
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Compute the new size of the window based on the printer DC dimensions.
|
||||
// Resize the window, notice position, order, and redraw are not done the window size changes but the user
|
||||
// doesn't see any visible change to the window.
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
Window->SetRedraw(false);
|
||||
Window->SetWindowPos(0, 0, 0, clientR.Width() + adjX, clientR.Height() + adjY,
|
||||
SWP_NOMOVE | SWP_NOREDRAW | SWP_NOZORDER| SWP_NOACTIVATE);
|
||||
}
|
||||
|
||||
|
||||
void APXPrintOut::PrintPage (int page, TRect& bandRect, unsigned)
|
||||
{
|
||||
TRect clientR;
|
||||
|
||||
BeginPage(clientR);
|
||||
|
||||
if (Scale)
|
||||
DC->DPtoLP(bandRect, 2);
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Change the printer range to this current page.
|
||||
TPrintDialog::TData& printerData = Printer->GetSetup();
|
||||
int fromPg = printerData.FromPage;
|
||||
int toPg = printerData.ToPage;
|
||||
|
||||
printerData.FromPage = page;
|
||||
printerData.ToPage = page;
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Call the window to paint itself to the printer DC.
|
||||
Window->Paint(*DC, false, bandRect);
|
||||
|
||||
printerData.FromPage = fromPg;
|
||||
printerData.ToPage = toPg;
|
||||
|
||||
if (Scale)
|
||||
DC->LPtoDP(bandRect, 2);
|
||||
|
||||
EndPage();
|
||||
}
|
||||
|
||||
|
||||
void APXPrintOut::EndPage ()
|
||||
{
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Resize to original window size, no one's the wiser.
|
||||
Window->SetWindowPos(0, 0, 0, OrgR.Width(), OrgR.Height(),
|
||||
SWP_NOMOVE | SWP_NOREDRAW | SWP_NOZORDER| SWP_NOACTIVATE);
|
||||
Window->SetRedraw(true);
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Restore changes made to the DC
|
||||
if (Scale) {
|
||||
DC->SetWindowExt(OldWExt);
|
||||
DC->SetViewportExt(OldVExt);
|
||||
DC->SetMapMode(PrevMode);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
bool APXPrintOut::HasPage (int pageNumber)
|
||||
{
|
||||
TPrintDialog::TData &printerData = Printer->GetSetup();
|
||||
|
||||
return (pageNumber >= printerData.MinPage) && (pageNumber <= printerData.MaxPage);
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
#if !defined(__apxprint_h) // Sentry use file only if it's not already included.
|
||||
#define __apxprint_h
|
||||
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
/* Project [[Project]]
|
||||
##@QUERY_PRJ_COMPANY [[CompanyName]] 2
|
||||
##@QUERY_PRJ_COPYRIGHT [[Copyright]] 2
|
||||
##\\Copyright Copyright 2
|
||||
[[CompanyName]]
|
||||
[[Copyright]]
|
||||
|
||||
##@QUERY_TARGET_NAME [[Target]]
|
||||
SUBSYSTEM: [[Target]] Application
|
||||
FILE: APXPrint.H
|
||||
##@QUERY_PRJ_USER [[Author]]
|
||||
AUTHOR: [[Author]]
|
||||
|
||||
|
||||
OVERVIEW
|
||||
========
|
||||
Class definition for APXPrintOut (TPrintOut).
|
||||
*/
|
||||
|
||||
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
|
||||
class APXPrintOut : public TPrintout {
|
||||
public:
|
||||
APXPrintOut (TPrinter *printer, const char far *title, TWindow* window, bool scale = true) : TPrintout(title)
|
||||
{ Printer = printer; Window = window; Scale = scale; MapMode = MM_ANISOTROPIC; }
|
||||
|
||||
void GetDialogInfo (int& minPage, int& maxPage, int& selFromPage, int& selToPage);
|
||||
void BeginPrinting ();
|
||||
void BeginPage (TRect &clientR);
|
||||
void PrintPage (int page, TRect& rect, unsigned flags);
|
||||
void EndPage ();
|
||||
void SetBanding (bool b) { Banding = b; }
|
||||
bool HasPage (int pageNumber);
|
||||
|
||||
protected:
|
||||
TWindow *Window;
|
||||
bool Scale;
|
||||
TPrinter *Printer;
|
||||
int MapMode;
|
||||
|
||||
int PrevMode;
|
||||
TSize OldVExt, OldWExt;
|
||||
TRect OrgR;
|
||||
};
|
||||
|
||||
|
||||
#endif // __apxprint_h sentry.
|
||||
@@ -0,0 +1,29 @@
|
||||
<<[CPP]
|
||||
##^BOF
|
||||
##? "REGDATA(cmdline, \"/Automation\")"
|
||||
## :^DOS
|
||||
## :InsertText("REGDATA(cmdline, \"\")")
|
||||
##*
|
||||
##--BEGIN-- ? "new TOcApp"
|
||||
## :^EOS
|
||||
## :QUERY_CLASS_NAME [[ClassName]]
|
||||
## :\\", TAutoObject<[[ClassName]]>(this)" [[Object]]
|
||||
## :? Object
|
||||
## :^DOS
|
||||
##*
|
||||
##--END-- ? "new TOcApp"
|
||||
##--BEGIN-- QUERY_BASE_NAME == "TApplication"
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##^BOF
|
||||
##? \\"//{{[[ClassName]]FACTORY_TBL_BEGIN}}", \\"//{{[[ClassName]]FACTORY_TBL_END}}"
|
||||
##: InsertText("")
|
||||
##*
|
||||
##--BEGIN-- @QUERY_APPL_OLE == VALUE_NOOLE
|
||||
##^BOF
|
||||
##? \\"//{{[[ClassName]]_REGFACT_BEGIN}}", \\"//{{[[ClassName]]_REGFACT_END}}"
|
||||
##: InsertText("")
|
||||
##*
|
||||
##--END-- @QUERY_APPL_OLE == VALUE_NOOLE
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##--END-- QUERY_BASE_NAME == "TApplication"
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,56 @@
|
||||
<<[H]
|
||||
##TRUE [[Search1]]
|
||||
##TRUE [[Search2]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## ^BOF
|
||||
## "#include <ocf\\automacr.h>" [[IncludeFile]]
|
||||
## --BEGIN-- ? IncludeFile [[Search1]]
|
||||
## Search1 == FALSE
|
||||
## :? "#include " Search2
|
||||
##*
|
||||
## Search2 == FALSE
|
||||
## :%\\"[[ClassName]] missing #include <ocf\autosrv.h> for class automation. "
|
||||
##*
|
||||
## (Search1 == FALSE) && (Search2 == TRUE) 2
|
||||
## :^BOL
|
||||
## :^2
|
||||
|
||||
[[IncludeFile]]
|
||||
## --END-- ? IncludeFile [[Search1]]
|
||||
## "//{{[[ClassName]]AUTO_TBL_END}}" [[ClassTMarker]]
|
||||
## \\ClassTMarker [[ClassMarker]]
|
||||
## ^BOF
|
||||
## --BEGIN-- ? ClassMarker [[Search]]
|
||||
## Search == FALSE
|
||||
## :{HAddAuto.SNP}
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
##*
|
||||
## --END-- ? ClassMarker [[Search]]
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[H]
|
||||
|
||||
|
||||
<<[CPP]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## <<TApplication QUERY_FILE_H [[FileName]]
|
||||
## \\"#include \"[[FileName]]\"" [[IncludeFile]]
|
||||
## --BEGIN-- ? IncludeFile == FALSE
|
||||
## :^BOF
|
||||
## :? "#include "
|
||||
## :^BOL
|
||||
## :^3
|
||||
[[IncludeFile]]
|
||||
## --END-- ? IncludeFile == FALSE
|
||||
## "//{{[[ClassName]]SYM_TBL_END}}" [[ClassTMarker]]
|
||||
## \\ClassTMarker [[ClassMarker]]
|
||||
## ^BOF
|
||||
## --BEGIN-- ? ClassMarker [[Search]]
|
||||
## Search == FALSE
|
||||
## :{CAddSym.SNP}
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
##*
|
||||
## --END-- ? ClassMarker [[Search]]
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,134 @@
|
||||
<<[CPP]
|
||||
##^BOF
|
||||
##FALSE [[RegAndFact]]
|
||||
##FALSE [[Template]]
|
||||
##--BEGIN-- ? "BEGIN_REGISTRATION(ApplicationReg)" [[RegThere]]
|
||||
## --BEGIN-- RegThere == FALSE
|
||||
## --BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## :"//{{[[ClassName]] Implementation}}" [[ClassMarker]]
|
||||
## :\\ClassMarker [[LookUp]]
|
||||
## :QUERY_FILE_CPP [[FileName]]
|
||||
## :^BOF
|
||||
## :? LookUp [[Search]]
|
||||
## :Search == FALSE
|
||||
## :%\\"Unable to add application registration to [[FileName]]. "
|
||||
##*
|
||||
## :^BOL
|
||||
## --END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
DEFINE_APP_DICTIONARY(AppDictionary);
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
static TPointer<TRegistrar> Registrar;
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
static TPointer<TOcRegistrar> Registrar;
|
||||
|
||||
REGISTRATION_FORMAT_BUFFER(100)
|
||||
|
||||
BEGIN_REGISTRATION(ApplicationReg)
|
||||
## --BEGIN-- @QUERY_OLE_GUID [[GUID]]
|
||||
## :GUID != ""
|
||||
REGDATA(clsid, "{[[GUID]]}")
|
||||
## :GUID == ""
|
||||
REGDATA(clsid, "{544C5355-4547-4C4C-5248-4C4C75636173}")
|
||||
## --END-- @QUERY_OLE_GUID [[GUID]]
|
||||
## --BEGIN-- @QUERY_PRJ_NAME [[AppTitle]]
|
||||
REGDATA(progid, "[[AppTitle]].Application.1")
|
||||
REGDATA(appname, "[[AppTitle]] Server")
|
||||
REGDATA(description, "[[AppTitle]] Server Application")
|
||||
REGDATA(cmdline, "/Automation")
|
||||
// REGDATA(debugger, "TDW")
|
||||
## --END-- @QUERY_PRJ_NAME [[AppTitle]]
|
||||
END_REGISTRATION
|
||||
|
||||
## --END-- RegThere == FALSE
|
||||
## --BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## :^BOF
|
||||
## :? "TApplication("
|
||||
## :^EOS
|
||||
## :YPos() [[CurrYLine]]
|
||||
## :XPos() [[CurrXCol]]
|
||||
## :? ","
|
||||
## :YPos() != CurrYLine
|
||||
## :^@CurrYLine, CurrXCol
|
||||
## :? ")"
|
||||
## :YPos() == CurrYLine
|
||||
## :^BOS
|
||||
## :XPos() [[X1Pos]]
|
||||
## :^@CurrYLine, CurrXCol
|
||||
## :^DROP
|
||||
## :^@CurrYLine, (X1Pos - 1)
|
||||
## :^RAISE
|
||||
## :InsertText("::ApplicationReg[\"appname\"], ::Module, &::AppDictionary")
|
||||
##*
|
||||
## :^BOF
|
||||
## :? " TOcRegistrar(" RegAndFact
|
||||
## RegAndFact == FALSE
|
||||
## :^BOF
|
||||
## :? " TRegistrar(" RegAndFact
|
||||
## FALSE [[AppFound]]
|
||||
## FALSE [[appFound]]
|
||||
## --BEGIN-- RegAndFact == FALSE
|
||||
## :^BOF
|
||||
## :? " OwlMain"
|
||||
## :? \\"[[ClassName]] "
|
||||
## :^BOL
|
||||
## :^DELL
|
||||
## --BEGIN-- @QUERY_APPL_OLE == VALUE_NOOLE
|
||||
::Registrar = new TRegistrar(::ApplicationReg, TAutoFactory<[[ClassName]]>(), TApplication::GetCmdLine(), _hInstance);
|
||||
if (::Registrar->IsOptionSet(amAnyRegOption))
|
||||
return 0;
|
||||
|
||||
## --END-- @QUERY_APPL_OLE == VALUE_NOOLE
|
||||
## --BEGIN-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
::Registrar = new TOcRegistrar(::ApplicationReg, TOleDocViewAutoFactory<[[ClassName]]>(), TApplication::GetCmdLine(), ::DocTemplateStaticHead);
|
||||
if (::Registrar->IsOptionSet(amAnyRegOption))
|
||||
return 0;
|
||||
|
||||
## --END-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## :? \\"App.Run(" AppFound
|
||||
## :AppFound == FALSE
|
||||
## :? \\"app.Run(" appFound
|
||||
##*
|
||||
## :((AppFound == TRUE) || (appFound == TRUE))
|
||||
## :^BOS
|
||||
## :YPos() [[CurrYPos]]
|
||||
## :XPos() [[CurrXPos]]
|
||||
## :^@CurrYPos, CurrXPos
|
||||
## :^DROP
|
||||
## :^@CurrYPos, (CurrXPos + 3)
|
||||
## :^RAISE
|
||||
## :InsertText("::Registrar->")
|
||||
##*
|
||||
## --END-- RegAndFact == FALSE
|
||||
## --BEGIN-- RegAndFact == TRUE
|
||||
## :YPos() [[CurrYLine]]
|
||||
## :? ","
|
||||
## :YPos() == CurrYLine
|
||||
## :^EOS
|
||||
## :XPos() [[X1Pos]]
|
||||
## :? ","
|
||||
## :YPos() == CurrYLine
|
||||
## :^BOS
|
||||
## :XPos() [[X2Pos]]
|
||||
## :^@CurrYLine, X1Pos
|
||||
## :^DROP
|
||||
## :^@CurrYLine, (X2Pos - 1)
|
||||
## :^RAISE
|
||||
## --BEGIN-- TRUE
|
||||
## :@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
## :InsertText(\\" TAutoFactory<[[ClassName]]>()")
|
||||
##*
|
||||
## :@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## :InsertText(\\" TOleDocViewAutoFactory<[[ClassName]]>()")
|
||||
##*
|
||||
## --END-- TRUE
|
||||
##*
|
||||
## :^BOF
|
||||
## :? "REGDATA(cmdline, \""
|
||||
## :^EOS
|
||||
## :? "/Automation" == FALSE
|
||||
## :InsertText("/Automation")
|
||||
##*
|
||||
## --END-- RegAndFact == TRUE
|
||||
## --END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##--END-- ? "BEGIN_REGISTRATION(ApplicationReg)" [[RegThere]]
|
||||
>>[CPP]
|
||||
|
After Width: | Height: | Size: 2.4 KiB |
@@ -0,0 +1,24 @@
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"[[ClassName]]::[[ClassName]]" [[ClassMarker]]
|
||||
##--BEGIN-- QUERY_FILE_H [[FileName]]
|
||||
##^BOF
|
||||
##? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: %\\"Unable to add instance data, marker for [[ClassName]] constructor to [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
static [[ClassName]]Xfer [[ClassName]]Data;
|
||||
|
||||
##? "{" [[Search]]
|
||||
##Search == FALSE
|
||||
##: %\\"Unable to add instance data, marker for [[ClassName]] constructor body to [[FileName]]. "
|
||||
##*
|
||||
##--END-- QUERY_FILE_H [[FileName]]
|
||||
##^BOL
|
||||
##^1
|
||||
//{{[[ClassName]]XFER_USE}}
|
||||
|
||||
SetTransferBuffer(&[[ClassName]]Data);
|
||||
//{{[[ClassName]]XFER_USE_END}}
|
||||
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,16 @@
|
||||
##"//{{[[ClassName]]SYM_TBL_END}}" [[ClassTMarker]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: {CAddSym.SNP}
|
||||
##: ^BOF
|
||||
##: ? ClassMarker [[Search]]
|
||||
##*
|
||||
##--END-- ? ClassMarker [[Search]]
|
||||
##^BOL
|
||||
##(OLEType == CPPType) && (OLEType != "TAutoCurrency") && (OLEType != "TAutoDate")
|
||||
## :StripPtrRef(OLEType, [[StripType]]) [[AnyStripping]]
|
||||
## :StripType OLEType
|
||||
##*
|
||||
EXPOSE_PROPRW([[InternalName]], [[OLEType]], "[[InternalName]]", "[[Description]]", 0)
|
||||
@@ -0,0 +1,58 @@
|
||||
##"//{{[[ClassName]]SYM_TBL_END}}" [[ClassTMarker]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
## :{CAddSym.SNP}
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
##*
|
||||
##--END-- ? ClassMarker [[Search]]
|
||||
##^BOL
|
||||
##(OLEType == CPPType) && (OLEType != "TAutoCurrency") && (OLEType != "TAutoDate")
|
||||
## :StripPtrRef(OLEType, [[StripType]]) [[AnyStripping]]
|
||||
## :StripType OLEType
|
||||
##*
|
||||
EXPOSE_METHOD([[InternalName]], [[OLEType]], "[[InternalName]]", "[[Description]]", 0)
|
||||
##"" [[OLEArg]]
|
||||
##"" [[ParamName]]
|
||||
##"" [[CPPArg]]
|
||||
##"" [[StripArg]]
|
||||
##--BEGIN-- AutoParse(CPPArguments, OLEArguments)
|
||||
## --BEGIN-- AutoCount() [[Count]]
|
||||
## --FOR-- Index = 1 TO Count
|
||||
## :AutoOLE(Index - 1) OLEArg
|
||||
## :AutoName(Index - 1) ParamName
|
||||
## :AutoCPP(Index - 1) CPPArg
|
||||
## :(OLEArg == CPPArg) && (OLEArg != "TAutoCurrency") && (OLEArg != "TAutoDate")
|
||||
## :StripPtrRef(OLEArg, [[StripArg]]) [[AnyStripping]]
|
||||
## :StripArg OLEArg
|
||||
##*
|
||||
REQUIRED_ARG([[OLEArg]], "[[ParamName]]")
|
||||
## --Next-- Index
|
||||
## --END-- AutoCount() [[Count]]
|
||||
##--END-- AutoParse([[CPPArguments]], [[OLEArguments]])
|
||||
##AutoReset()
|
||||
##0 [[DuplicateFunction]]
|
||||
##--BEGIN-- TRUE
|
||||
## {FindAuto.SNP}
|
||||
## DuplicateFunction MethodDuplicateFunc
|
||||
## 0 [[ScrollPosition]]
|
||||
## --BEGIN-- DuplicateFunction == 0
|
||||
## :^EOF
|
||||
## :(YPos() + 2) ScrollPosition
|
||||
## --BEGIN-- TRUE
|
||||
|
||||
|
||||
[[CPPType]] [[ClassName]]::[[InternalName]] [[CPPArguments]]
|
||||
{
|
||||
// INSERT>> Your code here.
|
||||
|
||||
}
|
||||
## --END-- TRUE
|
||||
## :^@ScrollPosition
|
||||
## :^BOL
|
||||
## :^SCROLL
|
||||
## :^^
|
||||
## --END-- DuplicateFunction == 0
|
||||
##--END-- TRUE
|
||||
@@ -0,0 +1,71 @@
|
||||
##"//{{[[ClassName]]SYM_TBL_END}}" [[ClassTMarker]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? ClassMarker [[Search]]
|
||||
## Search == FALSE
|
||||
## :{CAddSym.SNP}
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
##*
|
||||
##--END-- ? ClassMarker [[Search]]
|
||||
##^BOL
|
||||
##(OLEType == CPPType) && (OLEType != "TAutoCurrency") && (OLEType != "TAutoDate")
|
||||
## :StripPtrRef(OLEType, [[StripType]]) [[AnyStripping]]
|
||||
## :StripType OLEType
|
||||
##*
|
||||
##(GetProperty == TRUE) && (SetProperty == TRUE)
|
||||
EXPOSE_PROPRW([[InternalName]], [[OLEType]], "[[InternalName]]", "[[Description]]", 0)
|
||||
##(GetProperty == TRUE) && (SetProperty == FALSE)
|
||||
EXPOSE_PROPRO([[InternalName]], [[OLEType]], "[[InternalName]]", "[[Description]]", 0)
|
||||
##(GetProperty == FALSE) && (SetProperty == TRUE)
|
||||
EXPOSE_PROPWO([[InternalName]], [[OLEType]], "[[InternalName]]", "[[Description]]", 0)
|
||||
##^EOF
|
||||
##0 [[ScrollPosition]]
|
||||
##FALSE [[DuplicateFunction]]
|
||||
##FALSE [[SetFoundIt]]
|
||||
##--BEGIN-- FALSE [[GetFoundIt]]
|
||||
## --BEGIN-- GetProperty == TRUE
|
||||
## :{FindAuto.SNP}
|
||||
## :DuplicateFunction GetFoundIt
|
||||
## :DuplicateFunction GetDuplicateFunc
|
||||
## :GetFoundIt == FALSE
|
||||
## :^EOF
|
||||
##*
|
||||
## --END-- GetProperty == TRUE
|
||||
## --BEGIN-- SetProperty == TRUE
|
||||
## :FALSE DuplicateFunction
|
||||
## :{FindAuto.SNP}
|
||||
## :DuplicateFunction SetFoundIt
|
||||
## :DuplicateFunction SetDuplicateFunc
|
||||
## :SetFoundIt == FALSE
|
||||
## :^EOF
|
||||
##*
|
||||
## --END-- SetProperty == TRUE
|
||||
## --BEGIN-- TRUE
|
||||
## --BEGIN-- ((GetProperty == TRUE) && (GetFoundIt == FALSE))
|
||||
## :(YPos() + 2) ScrollPosition
|
||||
|
||||
[[CPPType]] [[ClassName]]::[[GetName]] ()
|
||||
{
|
||||
// INSERT>> Your get property code here.
|
||||
}
|
||||
## --END-- ((GetProperty == TRUE) && (GetFoundIt == FALSE))
|
||||
## --BEGIN-- ((SetProperty == TRUE) && (SetFoundIt == FALSE))
|
||||
## :ScrollPosition == 0
|
||||
## :(YPos() + 2) ScrollPosition
|
||||
##*
|
||||
|
||||
void [[ClassName]]::[[SetName]] ([[CPPType]] property)
|
||||
{
|
||||
// INSERT>> Your set property code here.
|
||||
|
||||
}
|
||||
## --END-- ((SetProperty == TRUE) && (SetFoundIt == FALSE))
|
||||
##((GetFoundIt == FALSE) && (SetFoundIt == FALSE))
|
||||
## :^@ScrollPosition
|
||||
## :^BOL
|
||||
## :^SCROLL
|
||||
## :^^
|
||||
##*
|
||||
## --END-- TRUE
|
||||
##--END-- FALSE [[GetFoundIt]]
|
||||
@@ -0,0 +1,29 @@
|
||||
##QUERY_BASE_NAME [[BaseName]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##"//{{[[ClassName]] Implementation}}" [[ClassMarker]]
|
||||
##\\ClassMarker [[LookUp]]
|
||||
##QUERY_FILE_CPP [[FileName]]
|
||||
##^BOF
|
||||
##? LookUp [[Search]]
|
||||
##Search == FALSE
|
||||
##: %\\"Unable to add response table marker to [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Build a response table for all messages/commands handled
|
||||
// by the application.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##VBXMIXIN == FALSE
|
||||
DEFINE_RESPONSE_TABLE1([[ClassName]], [[BaseName]])
|
||||
##VBXMIXIN == TRUE
|
||||
DEFINE_RESPONSE_TABLE2([[ClassName]], [[BaseName]], TVbxEventHandler)
|
||||
//{{[[ClassName]]RSP_TBL_BEGIN}}
|
||||
//{{[[ClassName]]RSP_TBL_END}}
|
||||
END_RESPONSE_TABLE;
|
||||
|
||||
|
||||
##^-3
|
||||
##^BOL
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,55 @@
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"//{{[[ClassName]] Implementation}}" [[ClassMarker]]
|
||||
##QUERY_FILE_H [[FileName]]
|
||||
##^BOF
|
||||
##? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: %\\"Unable to add [[ClassName]]::SetUpXfer() for instance data to [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
##^1
|
||||
|
||||
|
||||
static [[ClassName]]Xfer FAR *[[ClassName]]Data = NULL;
|
||||
|
||||
[[ClassName]]Xfer FAR * [[ClassName]]::CreateXfer ()
|
||||
{
|
||||
if (![[ClassName]]Data) {
|
||||
[[ClassName]]Data = new [[ClassName]]Xfer;
|
||||
|
||||
// Initialize all data values to zero.
|
||||
_fmemset([[ClassName]]Data, 0, sizeof([[ClassName]]Xfer));
|
||||
|
||||
//{{[[ClassName]]XFER_CREATE}}
|
||||
//{{[[ClassName]]XFER_CREATE_END}}
|
||||
|
||||
}
|
||||
|
||||
return [[ClassName]]Data;
|
||||
}
|
||||
|
||||
|
||||
void [[ClassName]]::ReleaseXfer ()
|
||||
{
|
||||
if ([[ClassName]]Data) {
|
||||
//{{[[ClassName]]XFER_RELEASE}}
|
||||
//{{[[ClassName]]XFER_RELEASE_END}}
|
||||
|
||||
delete [[ClassName]]Data;
|
||||
[[ClassName]]Data = NULL;
|
||||
}
|
||||
}
|
||||
##TRUE [[Search2]]
|
||||
##^BOF
|
||||
##"#include <mem.h>" IncludeFile
|
||||
##--BEGIN-- ? IncludeFile [[Search1]]
|
||||
##Search1 == FALSE
|
||||
##: ? "#include" Search2
|
||||
##Search2 == FALSE
|
||||
##: %\\"[[ClassName]] missing #include <mem.h> for instance data. "
|
||||
##*
|
||||
##(Search1 == FALSE) && (Search2 == TRUE)
|
||||
##: ^BOL
|
||||
[[IncludeFile]]
|
||||
##--END-- ? IncludeFile [[Search1]]
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,46 @@
|
||||
##QUERY_BASE_NAME [[BaseName]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## "//{{[[ClassName]] Implementation}}" [[ClassMarker]]
|
||||
## \\ClassMarker [[LookUp]]
|
||||
## QUERY_FILE_CPP [[FileName]]
|
||||
## ^BOF
|
||||
## ? LookUp [[Search]]
|
||||
## Search == FALSE
|
||||
## :%\\"Unable to add automation symbol table marker to [[FileName]]. "
|
||||
##*
|
||||
## ^BOL
|
||||
## --BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// OLE's ITypeInfo browses this symbol table for a list of all data,
|
||||
// properties, and methods exposed by this automated class.
|
||||
//
|
||||
## --END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
## \\"DEFINE_AUTOCLASS([[ClassName]])" [[DefineMacro]]
|
||||
## "END_AUTOCLASS" [[EndMacro]]
|
||||
## "tfNormal" [[Flags]]
|
||||
## --BEGIN-- TRUE
|
||||
## --BEGIN-- QUERY_BASE_NAME [[BaseName]]
|
||||
## :BaseName == "TApplication"
|
||||
## :"tfAppObject | tfCanCreate" Flags
|
||||
##*
|
||||
## --BEGIN-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## :BaseName == "TApplication"
|
||||
## :\\"DEFINE_AUTOAGGREGATE([[ClassName]], OcApp->Aggregate)" DefineMacro
|
||||
## :"END_AUTOAGGREGATE" EndMacro
|
||||
##*
|
||||
## --END-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## --END-- QUERY_BASE_NAME [[BaseName]]
|
||||
[[DefineMacro]]
|
||||
## <<TApplication QUERY_CLASS_NAME [[TApplicationName]] 2
|
||||
EXPOSE_APPLICATION([[TApplicationName]], "Application", "Application object", 0)
|
||||
## TApplicationName == ClassName
|
||||
EXPOSE_QUIT("Quit", "Quit application", 0)
|
||||
//{{[[ClassName]]SYM_TBL_BEGIN}}
|
||||
//{{[[ClassName]]SYM_TBL_END}}
|
||||
[[EndMacro]]([[ClassName]], [[Flags]], "[[ClassName]]", 0, 0);
|
||||
|
||||
|
||||
## --END-- TRUE
|
||||
##^-3
|
||||
##^BOL
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,24 @@
|
||||
##--BEGIN-- @OPT_APPL_DRAGDROP
|
||||
// Drag / Drop support:
|
||||
TFileDrop::TFileDrop (char* fileName, TPoint& p, bool inClient, TModule*)
|
||||
{
|
||||
char exePath[MAXPATH];
|
||||
|
||||
exePath[0] = 0;
|
||||
FileName = strcpy(new char[strlen(fileName) + 1], fileName);
|
||||
Point = p;
|
||||
InClientArea = inClient;
|
||||
}
|
||||
|
||||
TFileDrop::~TFileDrop ()
|
||||
{
|
||||
delete FileName;
|
||||
}
|
||||
|
||||
const char *TFileDrop::WhoAmI ()
|
||||
{
|
||||
return FileName;
|
||||
}
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_DRAGDROP
|
||||
@@ -0,0 +1,26 @@
|
||||
##--BEGIN-- TRUE
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
/* Project [[Project]]
|
||||
##@QUERY_PRJ_COMPANY [[CompanyName]] 2
|
||||
##@QUERY_PRJ_COPYRIGHT [[Copyright]] 2
|
||||
##\\Copyright Copyright 2
|
||||
[[CompanyName]]
|
||||
[[Copyright]]
|
||||
|
||||
##@QUERY_TARGET_NAME [[Target]]
|
||||
SUBSYSTEM: [[Target]] Application
|
||||
##QUERY_FILE_CPP [[Filename]]
|
||||
FILE: [[Filename]]
|
||||
##@QUERY_PRJ_USER [[Author]]
|
||||
AUTHOR: [[Author]]
|
||||
|
||||
|
||||
OVERVIEW
|
||||
========
|
||||
##QUERY_CLASS_NAME [[ClassName]]
|
||||
##QUERY_BASE_NAME [[BaseName]]
|
||||
Source file for implementation of [[ClassName]] ([[BaseName]]).
|
||||
*/
|
||||
|
||||
|
||||
##--END-- TRUE
|
||||
@@ -0,0 +1,36 @@
|
||||
<<[H]
|
||||
##QUERY_SNP_AUTO_KIND [[Kind]]
|
||||
##QUERY_SNP_AUTO_NAME [[InternalName]]
|
||||
##QUERY_SNP_AUTO_CPPTYPE [[CPPType]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## --BEGIN-- Kind == VALUE_DATA
|
||||
## :^BOF
|
||||
## :? \\" [[InternalName]];"
|
||||
## :QUERY_FILE_CPP [[FileName]]
|
||||
## :%\\"Data member already exists for property in [[FileName]]" -2
|
||||
##*
|
||||
## --END-- Kind == VALUE_DATA
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[H]
|
||||
|
||||
|
||||
<<[CPP]
|
||||
##QUERY_SNP_AUTO_KIND [[Kind]]
|
||||
##QUERY_SNP_AUTO_NAME [[InternalName]]
|
||||
##QUERY_SNP_AUTO_GETNAME [[GetName]]
|
||||
##QUERY_SNP_AUTO_SETNAME [[SetName]]
|
||||
##QUERY_SNP_AUTO_CPPTYPE [[CPPType]]
|
||||
##QUERY_SNP_AUTO_OLETYPE [[OLEType]]
|
||||
##QUERY_SNP_AUTO_GETPROPERTY [[GetProperty]]
|
||||
##QUERY_SNP_AUTO_SETPROPERTY [[SetProperty]]
|
||||
##QUERY_SNP_AUTO_CPPARGS [[CPPArguments]]
|
||||
##QUERY_SNP_AUTO_OLEARGS [[OLEArguments]]
|
||||
##0 [[DuplicateFunction]]
|
||||
##--BEGIN-- TRUE
|
||||
## {FindAuto.SNP}
|
||||
## DuplicateFunction == 1
|
||||
## :QUERY_FILE_CPP [[FileName]]
|
||||
## :%\\"Function already exists in [[FileName]]" -2
|
||||
##*
|
||||
##--END-- TRUE
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,155 @@
|
||||
<<[H]
|
||||
##QUERY_BASE_NAME [[BaseName]]
|
||||
##QUERY_WIND_CLIENT [[Client]]
|
||||
##"" [[ClientBase]]
|
||||
##--BEGIN-- (BaseName == "TMDIFrame") || (BaseName == "TDecoratedMDIFrame")
|
||||
##: <<*Client QUERY_BASE_NAME ClientBase
|
||||
##(Client != "TMDIClient") && (ClientBase != "TMDIClient")
|
||||
##: QUERY_CLASS_NAME [[ClassName]]
|
||||
##: %\\"The class [[ClassName]]'s client can only be a TMDIClient type class. "
|
||||
##*
|
||||
##--END-- (BaseName == "TMDIFrame") || (BaseName == "TDecoratedMDIFrame")
|
||||
##--BEGIN-- "" [[ConstructorParam]]
|
||||
##"" [[ClientClass]]
|
||||
##"" [[ClientParam]]
|
||||
##--BEGIN-- QUERY_DLOG [[Constant]]
|
||||
##QUERY_WIND_CLIENT ClientClass
|
||||
##ClientClass != ""
|
||||
##: \\QUERY_WIND_CLIENT_PARAM ClientParam
|
||||
##*
|
||||
##\\QUERY_CONSTR_DEF ConstructorParam
|
||||
##*
|
||||
##--END-- QUERY_DLOG [[Constant]]
|
||||
##"#if !defined(__" [[AnyClass]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? AnyClass [[AnotherClass]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##ConstructorParam == ""
|
||||
##: "()" ConstructorParam
|
||||
##*
|
||||
##--BEGIN-- AnotherClass == TRUE
|
||||
##: ^EOF
|
||||
##: ^-2
|
||||
##: ^BOL
|
||||
|
||||
|
||||
##--END-- AnotherClass == TRUE
|
||||
##AnotherClass == FALSE
|
||||
##: {hheader.snp}
|
||||
##: ^EOF
|
||||
##*
|
||||
##--BEGIN-- QUERY_BASE_NAME [[BaseName]]
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
##QUERY_WIND_CLIENT [[Client]]
|
||||
##Client != ""
|
||||
##: GetIncludeFile(\\"[[Client]]") [[ClientIncludeFile]]
|
||||
#include [[ClientIncludeFile]]
|
||||
##<<TApplication QUERY_FILENAME_CPP [[FileName]] 2
|
||||
|
||||
#include "[[FileName]].rh" // Definition of all resources.
|
||||
|
||||
|
||||
//{{[[BaseName]] = [[ClassName]]}}
|
||||
class [[ClassName]] : public [[BaseName]] {
|
||||
##--END-- QUERY_BASE_NAME [[BaseName]]
|
||||
public:
|
||||
[[ClassName]] [[ConstructorParam]];
|
||||
virtual ~[[ClassName]] ();
|
||||
##--BEGIN-- QUERY_BASE_NAME == "TView"
|
||||
|
||||
static const char far* StaticName() { return "[[ClassName]] View"; }
|
||||
|
||||
//{{[[ClassName]]VIRTUAL_BEGIN}}
|
||||
protected:
|
||||
##:DBVirtual(\\"[[ClassName]]", "GetViewName")
|
||||
virtual const char far* GetViewName ();
|
||||
//{{[[ClassName]]VIRTUAL_END}}
|
||||
##--END-- QUERY_BASE_NAME == "TView"
|
||||
}; //{{[[ClassName]]}}
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##AnotherClass == FALSE
|
||||
##: {hfooter.snp}
|
||||
##*
|
||||
##--END-- ? AnyClass [[AnotherClass]]
|
||||
##--END-- "" [[ConstructorParam]]
|
||||
>>[H]
|
||||
|
||||
|
||||
<<[CPP]
|
||||
##^EOF
|
||||
##(YPos() != 1) 3
|
||||
|
||||
|
||||
|
||||
##YPos() == 1
|
||||
##: {cheader.snp}
|
||||
##*
|
||||
##^EOF
|
||||
##QUERY_CONSTR_DEFF [[ConstructorFParam]]
|
||||
##QUERY_DLOG [[Constant]]
|
||||
##QUERY_WIND_TITLE [[Title]]
|
||||
##QUERY_BASE_NAME [[BaseName]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
##QUERY_FILENAME_H [[FileName]]
|
||||
#include "[[FileName]].h"
|
||||
|
||||
|
||||
//{{[[ClassName]] Implementation}}
|
||||
|
||||
|
||||
##ConstructorFParam != ""
|
||||
[[ClassName]]::[[ClassName]] [[ConstructorFParam]]:
|
||||
##ConstructorFParam == ""
|
||||
[[ClassName]]::[[ClassName]] ()
|
||||
##--BEGIN-- QUERY_WIND_CLIENT [[ClientClass]]
|
||||
##ClientClass != ""
|
||||
##: \\QUERY_WIND_CLIENT_PARAM [[ClientParam]]
|
||||
##: \\QUERY_CONSTR_BASE [[ConstructorList]]
|
||||
##: ConstructorList != ""
|
||||
[[ConstructorList]]
|
||||
##--END-- QUERY_WIND_CLIENT [[ClientClass]]
|
||||
##QUERY_WIND_CLIENT == ""
|
||||
##: \\QUERY_CONSTR_BASE [[ConstructorList]]
|
||||
##: ConstructorList != ""
|
||||
[[ConstructorList]]
|
||||
{
|
||||
##--BEGIN-- QUERY_WINDOW_BASE
|
||||
##QUERY_WIND_STYLE [[StyleAttributes]]
|
||||
##StyleAttributes != "" 3
|
||||
// Override the default window style for [[BaseName]].
|
||||
[[StyleAttributes]]
|
||||
|
||||
##QUERY_WIND_BACKGRND [[BackgroundColor]]
|
||||
##BackgroundColor != "" 3
|
||||
// Change the window's background color
|
||||
SetBkgndColor([[BackgroundColor]]);
|
||||
|
||||
##--END-- QUERY_WINDOW_BASE
|
||||
// INSERT>> Your constructor code here.
|
||||
|
||||
}
|
||||
|
||||
|
||||
[[ClassName]]::~[[ClassName]] ()
|
||||
{
|
||||
##QUERY_WINDOW_BASE 2
|
||||
Destroy();
|
||||
|
||||
// INSERT>> Your destructor code here.
|
||||
|
||||
}
|
||||
##--BEGIN-- BaseName == "TView"
|
||||
|
||||
|
||||
const char far* [[ClassName]]::GetViewName ()
|
||||
{
|
||||
return StaticName();
|
||||
}
|
||||
##--END-- BaseName == "TView"
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,93 @@
|
||||
<<[H]
|
||||
##QUERY_PASSED_PARAM [[OldClient]]
|
||||
##QUERY_WIND_CLIENT [[Client]]
|
||||
##--BEGIN-- Client != ""
|
||||
##: GetIncludeFile(\\"[[Client]]") [[ClientIncludeFile]]
|
||||
##^BOF
|
||||
##? \\"#include [[ClientIncludeFile]]" [[FoundInclude]]
|
||||
##--BEGIN-- FoundInclude == FALSE
|
||||
##^BOF
|
||||
## ? "#pragma hdrstop" [[PragmaFound]]
|
||||
##--BEGIN-- PragmaFound == TRUE
|
||||
##^BOL
|
||||
##^2
|
||||
#include [[ClientIncludeFile]]
|
||||
##--END-- PragmaFound == TRUE
|
||||
##--BEGIN-- PragmaFound == FALSE
|
||||
## ? "#include"
|
||||
##: ^BOL
|
||||
##: ^1
|
||||
#include [[ClientIncludeFile]]
|
||||
##--END-- PragmaFound == FALSE
|
||||
##--END-- FoundInclude == FALSE
|
||||
##QUERY_BASE_NAME [[BaseName]]
|
||||
##QUERY_WIND_CLIENT [[Client]]
|
||||
##"" [[ClientBase]]
|
||||
##--BEGIN-- (BaseName == "TMDIFrame") || (BaseName == "TDecoratedMDIFrame")
|
||||
##: <<*Client QUERY_BASE_NAME ClientBase
|
||||
##(Client != "TMDIClient") && (ClientBase != "TMDIClient")
|
||||
##: QUERY_CLASS_NAME [[ClassName]]
|
||||
##: %\\"The class [[ClassName]]'s client can only be a TMDIClient type class. "
|
||||
##*
|
||||
##QUERY_CLASS_NAME [[ClassName]]
|
||||
##FALSE [[ClientReplace]]
|
||||
##--BEGIN-- ? \\"[[ClassName]] ("
|
||||
##: YPos() [[ConstructorLine]]
|
||||
##: \\"*new [[OldClient]]" [[MDIFrameClient]]
|
||||
##: ? MDIFrameClient [[FoundIt]]
|
||||
##: --BEGIN-- FoundIt
|
||||
##: (YPos() == ConstructorLine) ClientReplace
|
||||
##ClientReplace == FALSE
|
||||
##: %\\"Unable to find client instantiation in constructor. "
|
||||
##*
|
||||
##: ^BOL
|
||||
##: ? MDIFrameClient,"),",0 ClientReplace
|
||||
##ClientReplace == FALSE
|
||||
##: %\\"Unable to find client instantiation in constructor. "
|
||||
##*
|
||||
##: QUERY_WIND_CLIENT [[Client]]
|
||||
##: \\QUERY_WIND_CLIENT_PARAM [[ClientParam]]
|
||||
##: InsertText(\\"*new [[Client]][[ClientParam]]")
|
||||
##*
|
||||
##: --END-- FoundIt
|
||||
##--END-- ? \\"[[ClassName]] ("
|
||||
##--END-- (BaseName == "TMDIFrame") || (BaseName == "TDecoratedMDIFrame")
|
||||
##--END-- Client != ""
|
||||
>>[H]
|
||||
|
||||
|
||||
<<[CPP]
|
||||
##QUERY_BASE_NAME [[BaseName]]
|
||||
##(BaseName == "TMDIFrame") || (BaseName == "TDecoratedMDIFrame")
|
||||
##: Exit()
|
||||
##*
|
||||
##QUERY_PASSED_PARAM [[OldClient]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"[[ClassName]]::[[ClassName]] (" [[FindClass]]
|
||||
##^BOF
|
||||
##? FindClass [[Search]]
|
||||
##Search == FALSE
|
||||
##: QUERY_FILE_CPP [[FileName]]
|
||||
##: %\\"Unable to locate class constructor in [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
##^1
|
||||
##YPos() [[BaseConstructorLine]]
|
||||
##--BEGIN-- ? OldClient,") :",0 [[ClientReplace]]
|
||||
##ClientReplace == FALSE
|
||||
##: %\\"Unable to find client instantiation in base constructor. "
|
||||
##*
|
||||
##--BEGIN-- ClientReplace
|
||||
##YPos() != BaseConstructorLine
|
||||
##: %\\"Unable to find client instantiation in base constructor. "
|
||||
##*
|
||||
##QUERY_WIND_CLIENT [[Client]]
|
||||
##\\QUERY_WIND_CLIENT_PARAM [[ClientParam]]
|
||||
##: InsertText(\\"[[Client]][[ClientParam]]")
|
||||
##*
|
||||
##^BOL
|
||||
##^^
|
||||
##--END-- ClientReplace
|
||||
##--END-- ? OldClient,") :",0 [[ClientReplace]]
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,402 @@
|
||||
##{cheader.snp}
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
##@OPT_APPL_DRAGDROP 2
|
||||
#include <dir.h>
|
||||
|
||||
##QUERY_FILE_H [[FileName]]
|
||||
#include "[[FileName]]"
|
||||
##<<TMDIClient QUERY_FILE_H [[FileName]]
|
||||
#include "[[FileName]]"
|
||||
##<<TDialog QUERY_FILE_H [[Filename]]
|
||||
#include "[[Filename]]" // Definition of about dialog.
|
||||
|
||||
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Generated help file.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_APPL_HELP [[HelpFile]]
|
||||
const char HelpFileName[] = "[[HelpFile]].hlp";
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_HELP
|
||||
##{cdragdrp.owl}
|
||||
//{{[[TApplication]] Implementation}}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_OLE_AUTO
|
||||
//
|
||||
// OLE's ITypeInfo browses this symbol table for a list of all data,
|
||||
// properties, and methods exposed by this automated class.
|
||||
//
|
||||
DEFINE_AUTOCLASS([[TApplication]])
|
||||
EXPOSE_APPLICATION([[TApplication]], "Application", "Application object", 0)
|
||||
EXPOSE_QUIT("Quit", "Quit application", 0)
|
||||
//{{[[TApplication]]SYM_TBL_BEGIN}}
|
||||
//{{[[TApplication]]SYM_TBL_END}}
|
||||
END_AUTOCLASS([[TApplication]], tfAppObject | tfCanCreate, "[[TApplication]]", 0, 0);
|
||||
|
||||
|
||||
DEFINE_APP_DICTIONARY(AppDictionary);
|
||||
static TPointer<TRegistrar> Registrar;
|
||||
|
||||
REGISTRATION_FORMAT_BUFFER(100)
|
||||
|
||||
BEGIN_REGISTRATION(ApplicationReg)
|
||||
##@QUERY_OLE_GUID [[GUID]]
|
||||
REGDATA(clsid, "{[[GUID]]}")
|
||||
##--BEGIN-- @QUERY_PRJ_NAME [[AppTitle]]
|
||||
REGDATA(progid, "[[AppTitle]].Application.1")
|
||||
REGDATA(appname, "[[AppTitle]] Server")
|
||||
REGDATA(description, "[[AppTitle]] Server Application")
|
||||
REGDATA(cmdline, "/Automation")
|
||||
// REGDATA(debugger, "TDW")
|
||||
##--END-- @QUERY_PRJ_NAME [[AppTitle]]
|
||||
END_REGISTRATION
|
||||
|
||||
|
||||
##--END-- @QUERY_APPL_OLE_AUTO
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Build a response table for all messages/commands handled
|
||||
// by the application.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
DEFINE_RESPONSE_TABLE1([[TApplication]], TApplication)
|
||||
//{{[[TApplication]]RSP_TBL_BEGIN}}
|
||||
##@OPT_APPL_HELP 2
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPCONTENTS", "CmHelpContents", "", "COMMAND")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPUSING", "CmHelpUsing", "", "COMMAND")
|
||||
EV_COMMAND(CM_HELPCONTENTS, CmHelpContents),
|
||||
EV_COMMAND(CM_HELPUSING, CmHelpUsing),
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPABOUT", "CmHelpAbout", "", "COMMAND")
|
||||
EV_COMMAND(CM_HELPABOUT, CmHelpAbout),
|
||||
##@OPT_APPL_DRAGDROP
|
||||
##:DBResponse(\\"[[TApplication]]", "", "", "WM_DROPFILES", "")
|
||||
EV_WM_DROPFILES,
|
||||
##@OPT_APPL_PRINTING
|
||||
##:DBResponse(\\"[[TApplication]]", "", "", "WM_WININICHANGE", "")
|
||||
EV_WM_WININICHANGE,
|
||||
//{{[[TApplication]]RSP_TBL_END}}
|
||||
END_RESPONSE_TABLE;
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_APPL_OLE_AUTO
|
||||
[[TApplication]]::[[TApplication]] () : TApplication(::ApplicationReg["appname"], ::Module, &::AppDictionary)
|
||||
##!@QUERY_APPL_OLE_AUTO
|
||||
##QUERY_WIND_TITLE [[Title]]
|
||||
[[TApplication]]::[[TApplication]] () : TApplication("[[Title]]")
|
||||
{
|
||||
##@OPT_APPL_HELP 3
|
||||
HelpState = false;
|
||||
ContextHelp = false;
|
||||
HelpCursor = 0;
|
||||
|
||||
##@OPT_APPL_PRINTING 3
|
||||
Printer = 0;
|
||||
Printing = 0;
|
||||
|
||||
// INSERT>> Your constructor code here.
|
||||
}
|
||||
|
||||
|
||||
[[TApplication]]::~[[TApplication]] ()
|
||||
{
|
||||
##@OPT_APPL_PRINTING 3
|
||||
if (Printer)
|
||||
delete Printer;
|
||||
|
||||
// INSERT>> Your destructor code here.
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
bool [[TApplication]]::CanClose ()
|
||||
{
|
||||
bool result = TApplication::CanClose();
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Close the help engine if we used it.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
if (result && HelpState)
|
||||
GetMainWindow()->WinHelp(HelpFileName, HELP_QUIT, 0L);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_HELP
|
||||
##--BEGIN-- @OPT_APPL_TOOLBAR
|
||||
void [[TApplication]]::SetupSpeedBar (TDecoratedMDIFrame *frame)
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Create default toolbar New and associate toolbar buttons with commands.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
TControlBar* cb = new TControlBar(frame);
|
||||
cb->Insert(*new TButtonGadget(CM_MDIFILENEW, CM_MDIFILENEW));
|
||||
cb->Insert(*new TButtonGadget(CM_MDIFILEOPEN, CM_MDIFILEOPEN));
|
||||
cb->Insert(*new TButtonGadget(CM_FILESAVE, CM_FILESAVE));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITCUT, CM_EDITCUT));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITCOPY, CM_EDITCOPY));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITPASTE, CM_EDITPASTE));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITUNDO, CM_EDITUNDO));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITFIND, CM_EDITFIND));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITFINDNEXT, CM_EDITFINDNEXT));
|
||||
##@OPT_APPL_PRINTING 3
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_FILEPRINT, CM_FILEPRINT));
|
||||
cb->Insert(*new TButtonGadget(CM_FILEPRINTPREVIEW, CM_FILEPRINTPREVIEW));
|
||||
##@OPT_APPL_HELP 2
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_HELPCONTENTS, CM_HELPCONTENTS));
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Add fly-over help hints.
|
||||
cb->SetHintMode(TGadgetWindow::EnterHints);
|
||||
|
||||
frame->Insert(*cb, TDecoratedFrame::Top);
|
||||
}
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_TOOLBAR
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Application intialization.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::InitMainWindow ()
|
||||
{
|
||||
if (nCmdShow != SW_HIDE)
|
||||
##@QUERY_APPL_STARTUP == VALUE_NORMAL
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWNORMAL : nCmdShow;
|
||||
##@QUERY_APPL_STARTUP == VALUE_MIN
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWMINIMIZED : nCmdShow;
|
||||
##@QUERY_APPL_STARTUP == VALUE_MAX
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWMAXIMIZED : nCmdShow;
|
||||
|
||||
##<<TMDIClient QUERY_CLASS_NAME [[TMDIClient]]
|
||||
mdiClient = new [[TMDIClient]];
|
||||
##@OPT_APPL_STATUSBAR
|
||||
TDecoratedMDIFrame* frame = new TDecoratedMDIFrame(Name, MDI_MENU, *mdiClient, true);
|
||||
##!@OPT_APPL_STATUSBAR
|
||||
TDecoratedMDIFrame* frame = new TDecoratedMDIFrame(Name, MDI_MENU, *mdiClient, false);
|
||||
|
||||
##QUERY_WIND_STYLE [[StyleAttributes]]
|
||||
##StyleAttributes != "" 3
|
||||
// Override the default window style for the main window.
|
||||
[[StyleAttributes]]
|
||||
|
||||
##--BEGIN-- QUERY_WIND_BACKGRND [[BackgroundColor]]
|
||||
##BackgroundColor != "" 3
|
||||
// Change the window's background color
|
||||
frame->SetBkgndColor([[BackgroundColor]]);
|
||||
|
||||
##BackgroundColor == "" 3
|
||||
// Set the client area to the application workspace color.
|
||||
frame->SetBkgndColor(::GetSysColor(COLOR_APPWORKSPACE));
|
||||
|
||||
##--END-- QUERY_WIND_BACKGRND [[BackgroundColor]]
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Assign ICON w/ this application.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
frame->SetIcon(this, IDI_MDIAPPLICATION);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Menu associated with window and accelerator table associated with table.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
frame->AssignMenu(MDI_MENU);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Associate with the accelerator table.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI
|
||||
frame->Attr.AccelTable = MDI_MENU;
|
||||
##@QUERY_APPL_MODEL == VALUE_SDI
|
||||
frame->Attr.AccelTable = SDI_MENU;
|
||||
|
||||
##@OPT_APPL_TOOLBAR
|
||||
SetupSpeedBar(frame);
|
||||
##@OPT_APPL_STATUSBAR 7
|
||||
|
||||
TStatusBar *sb = new TStatusBar(frame, TGadget::Recessed,
|
||||
TStatusBar::CapsLock |
|
||||
TStatusBar::NumLock |
|
||||
TStatusBar::ScrollLock |
|
||||
TStatusBar::Overtype);
|
||||
frame->Insert(*sb, TDecoratedFrame::Bottom);
|
||||
|
||||
SetMainWindow(frame);
|
||||
|
||||
frame->SetMenuDescr(TMenuDescr(MDI_MENU));
|
||||
##--BEGIN-- @QUERY_APPL_CONTROL==VALUE_3D
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Windows 3-D controls.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
EnableCtl3d(true);
|
||||
##--END-- @QUERY_APPL_CONTROL==VALUE_3D
|
||||
##--BEGIN-- @QUERY_APPL_CONTROL==VALUE_BWCC
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Borland Windows custom controls.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
EnableBWCC();
|
||||
##--END-- @QUERY_APPL_CONTROL==VALUE_BWCC
|
||||
}
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Menu Help Contents command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmHelpContents ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Show the help table of contents.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
HelpState = GetMainWindow()->WinHelp(HelpFileName, HELP_CONTENTS, 0L);
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Menu Help Using Help command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmHelpUsing ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Display the contents of the Windows help file.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
HelpState = GetMainWindow()->WinHelp(HelpFileName, HELP_HELPONHELP, 0L);
|
||||
}
|
||||
##--END-- @OPT_APPL_HELP
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ===========
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_TARGET_NAME [[Target]]
|
||||
// Menu Help About [[Target]] command
|
||||
void [[TApplication]]::CmHelpAbout ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Show the modal dialog.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##<<TDialog QUERY_CLASS_NAME [[TDialog]]
|
||||
[[TDialog]](MainWindow).Execute();
|
||||
}
|
||||
##--BEGIN-- @OPT_APPL_DRAGDROP
|
||||
|
||||
|
||||
void [[TApplication]]::InitInstance ()
|
||||
{
|
||||
TApplication::InitInstance();
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Accept files via drag/drop in the frame window.
|
||||
GetMainWindow()->DragAcceptFiles(true);
|
||||
}
|
||||
|
||||
|
||||
void [[TApplication]]::EvDropFiles (TDropInfo drop)
|
||||
{
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Number of files dropped.
|
||||
int totalNumberOfFiles = drop.DragQueryFileCount();
|
||||
|
||||
TFileList* files = new TFileList;
|
||||
|
||||
for (int i = 0; i < totalNumberOfFiles; i++) {
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Tell DragQueryFile the file interested in (i) and the length of your buffer.
|
||||
int fileLength = drop.DragQueryFileNameLen(i) + 1;
|
||||
char *fileName = new char[fileLength];
|
||||
|
||||
drop.DragQueryFile(i, fileName, fileLength);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Getting the file dropped. The location is relative to your client coordinates,
|
||||
// and will have negative values if dropped in the non client parts of the window.
|
||||
//
|
||||
// DragQueryPoint copies that point where the file was dropped and returns whether
|
||||
// or not the point is in the client area. Regardless of whether or not the file
|
||||
// is dropped in the client or non-client area of the window, you will still receive
|
||||
// the file name.
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
TPoint point;
|
||||
bool inClientArea = drop.DragQueryPoint(point);
|
||||
files->Add(new TFileDrop(fileName, point, inClientArea, this));
|
||||
}
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Open the files that were dropped.
|
||||
AddFiles(files);
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Release the memory allocated for this handle with DragFinish.
|
||||
drop.DragFinish();
|
||||
}
|
||||
|
||||
|
||||
void [[TApplication]]::AddFiles (TFileList* files)
|
||||
{
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Open all files dragged in.
|
||||
TFileListIter fileIter(*files);
|
||||
|
||||
TFrameWindow *tfw = TYPESAFE_DOWNCAST(GetMainWindow(), TFrameWindow);
|
||||
if (tfw) {
|
||||
##<<TMDIClient QUERY_CLASS_NAME [[TMDIClient]]
|
||||
[[TMDIClient]] *theClient = TYPESAFE_DOWNCAST(tfw->GetClientWindow(), [[TMDIClient]]);
|
||||
|
||||
if (theClient)
|
||||
while (fileIter) {
|
||||
theClient->OpenFile(fileIter.Current()->WhoAmI());
|
||||
fileIter++;
|
||||
}
|
||||
}
|
||||
}
|
||||
##--END-- @OPT_APPL_DRAGDROP
|
||||
##{main.owl}
|
||||
@@ -0,0 +1,538 @@
|
||||
##{cheader.snp}
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
##@OPT_APPL_DRAGDROP 2
|
||||
#include <dir.h>
|
||||
|
||||
##QUERY_FILE_H [[FileName]]
|
||||
#include "[[FileName]]"
|
||||
##<<TMDIClient QUERY_FILE_H [[FileName]]
|
||||
#include "[[FileName]]"
|
||||
##<<TMDIChild QUERY_FILE_H [[FileName]]
|
||||
#include "[[FileName]]"
|
||||
##OPT_DV_RESET
|
||||
##OPT_DV_NEXT
|
||||
##QUERY_DV_TVIEW [[WindowClient]]
|
||||
##<<*WindowClient QUERY_FILE_H [[FileName]]
|
||||
#include "[[FileName]]"
|
||||
##<<TDialog QUERY_FILE_H [[Filename]]
|
||||
#include "[[Filename]]" // Definition of about dialog.
|
||||
|
||||
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Generated help file.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_APPL_HELP [[HelpFile]]
|
||||
const char HelpFileName[] = "[[HelpFile]].hlp";
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_HELP
|
||||
##{cdragdrp.owl}
|
||||
//{{[[TApplication]] Implementation}}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_OLE_AUTO
|
||||
//
|
||||
// OLE's ITypeInfo browses this symbol table for a list of all data,
|
||||
// properties, and methods exposed by this automated class.
|
||||
//
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
DEFINE_AUTOAGGREGATE([[TApplication]], OcApp->Aggregate)
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
DEFINE_AUTOCLASS([[TApplication]])
|
||||
EXPOSE_APPLICATION([[TApplication]], "Application", "Application object", 0)
|
||||
EXPOSE_QUIT("Quit", "Quit application", 0)
|
||||
//{{[[TApplication]]SYM_TBL_BEGIN}}
|
||||
//{{[[TApplication]]SYM_TBL_END}}
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
END_AUTOAGGREGATE([[TApplication]], tfAppObject | tfCanCreate, "[[TApplication]]", 0, 0);
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
END_AUTOCLASS([[TApplication]], tfAppObject | tfCanCreate, "[[TApplication]]", 0, 0);
|
||||
|
||||
|
||||
##--END-- @QUERY_APPL_OLE_AUTO
|
||||
##((@QUERY_APPL_OLE != VALUE_NOOLE) || @QUERY_APPL_OLE_AUTO) 2
|
||||
DEFINE_APP_DICTIONARY(AppDictionary);
|
||||
|
||||
##((@QUERY_APPL_OLE == VALUE_NOOLE) && @QUERY_APPL_OLE_AUTO)
|
||||
static TPointer<TRegistrar> Registrar;
|
||||
##((@QUERY_APPL_OLE != VALUE_NOOLE)
|
||||
static TPointer<TOcRegistrar> Registrar;
|
||||
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE != VALUE_NOOLE) || @QUERY_APPL_OLE_AUTO)
|
||||
REGISTRATION_FORMAT_BUFFER(100)
|
||||
|
||||
BEGIN_REGISTRATION(ApplicationReg)
|
||||
##@QUERY_OLE_GUID [[GUID]]
|
||||
REGDATA(clsid, "{[[GUID]]}")
|
||||
##--BEGIN-- @QUERY_PRJ_NAME [[AppTitle]]
|
||||
##((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH) || @QUERY_APPL_OLE_AUTO) 2
|
||||
REGDATA(appname, "[[AppTitle]] Server")
|
||||
REGDATA(description, "[[AppTitle]] Server Application")
|
||||
##((@QUERY_APPL_OLE == VALUE_CONTAINER) && !@QUERY_APPL_OLE_AUTO) 2
|
||||
REGDATA(appname, "[[AppTitle]] Container")
|
||||
REGDATA(description, "[[AppTitle]] Container Application")
|
||||
##@QUERY_APPL_OLE_AUTO
|
||||
REGDATA(progid, "[[AppTitle]].Application.1")
|
||||
##--END-- @QUERY_PRJ_NAME [[AppTitle]]
|
||||
##@QUERY_APPL_OLE_AUTO
|
||||
REGDATA(cmdline, "/Automation")
|
||||
##!@QUERY_APPL_OLE_AUTO
|
||||
REGDATA(cmdline, "")
|
||||
##((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
REGDATA(usage, ocrMultipleUse)
|
||||
##--BEGIN-- @QUERY_APPL_OLE_AUTO
|
||||
// REGDATA(debugger, "TDW")
|
||||
##--END-- @QUERY_APPL_OLE_AUTO
|
||||
END_REGISTRATION
|
||||
|
||||
##--END-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
##: {AddOleDV.SNP}
|
||||
##*
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
##: {AddDocV.SNP}
|
||||
##*
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Build a response table for all messages/commands handled
|
||||
// by the application.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
DEFINE_RESPONSE_TABLE1([[TApplication]], TApplication)
|
||||
//{{[[TApplication]]RSP_TBL_BEGIN}}
|
||||
EV_OWLVIEW(dnCreate, EvNewView),
|
||||
EV_OWLVIEW(dnClose, EvCloseView),
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPABOUT", "CmHelpAbout", "", "COMMAND")
|
||||
EV_COMMAND(CM_HELPABOUT, CmHelpAbout),
|
||||
##@OPT_APPL_HELP 2
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPCONTENTS", "CmHelpContents", "", "COMMAND")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPUSING", "CmHelpUsing", "", "COMMAND")
|
||||
EV_COMMAND(CM_HELPCONTENTS, CmHelpContents),
|
||||
EV_COMMAND(CM_HELPUSING, CmHelpUsing),
|
||||
##@OPT_APPL_DRAGDROP
|
||||
##:DBResponse(\\"[[TApplication]]", "", "", "WM_DROPFILES", "")
|
||||
EV_WM_DROPFILES,
|
||||
##@OPT_APPL_PRINTING
|
||||
##:DBResponse(\\"[[TApplication]]", "", "", "WM_WININICHANGE", "")
|
||||
EV_WM_WININICHANGE,
|
||||
//{{[[TApplication]]RSP_TBL_END}}
|
||||
END_RESPONSE_TABLE;
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##((@QUERY_APPL_OLE == VALUE_NOOLE) && (@QUERY_APPL_OLE_AUTO))
|
||||
[[TApplication]]::[[TApplication]] () : TApplication(::ApplicationReg["appname"], ::Module, &::AppDictionary)
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
[[TApplication]]::[[TApplication]] () : TApplication(::ApplicationReg["appname"], ::Module, &::AppDictionary)
|
||||
##((@QUERY_APPL_OLE == VALUE_NOOLE) && (!@QUERY_APPL_OLE_AUTO))
|
||||
##QUERY_WIND_TITLE [[Title]]
|
||||
[[TApplication]]::[[TApplication]] () : TApplication("[[Title]]")
|
||||
{
|
||||
##@OPT_APPL_HELP 4
|
||||
HelpState = false;
|
||||
ContextHelp = false;
|
||||
HelpCursor = 0;
|
||||
|
||||
##@OPT_APPL_PRINTING 3
|
||||
Printer = 0;
|
||||
Printing = 0;
|
||||
|
||||
SetDocManager(new TDocManager(dmMDI, this));
|
||||
|
||||
// INSERT>> Your constructor code here.
|
||||
}
|
||||
|
||||
|
||||
[[TApplication]]::~[[TApplication]] ()
|
||||
{
|
||||
##@OPT_APPL_PRINTING 3
|
||||
if (Printer)
|
||||
delete Printer;
|
||||
|
||||
// INSERT>> Your destructor code here.
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
bool [[TApplication]]::CanClose ()
|
||||
{
|
||||
bool result = TApplication::CanClose();
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Close the help engine if we used it.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
if (result && HelpState)
|
||||
GetMainWindow()->WinHelp(HelpFileName, HELP_QUIT, 0L);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_HELP
|
||||
##--BEGIN-- @OPT_APPL_TOOLBAR
|
||||
void [[TApplication]]::CreateGadgets (TControlBar *cb, bool server)
|
||||
{
|
||||
if (!server) {
|
||||
cb->Insert(*new TButtonGadget(CM_MDIFILENEW, CM_MDIFILENEW));
|
||||
cb->Insert(*new TButtonGadget(CM_MDIFILEOPEN, CM_MDIFILEOPEN));
|
||||
cb->Insert(*new TButtonGadget(CM_FILESAVE, CM_FILESAVE));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
}
|
||||
|
||||
cb->Insert(*new TButtonGadget(CM_EDITCUT, CM_EDITCUT));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITCOPY, CM_EDITCOPY));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITPASTE, CM_EDITPASTE));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITUNDO, CM_EDITUNDO));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITFIND, CM_EDITFIND));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITFINDNEXT, CM_EDITFINDNEXT));
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
|
||||
if (!server) {
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_FILEPRINT, CM_FILEPRINT));
|
||||
cb->Insert(*new TButtonGadget(CM_FILEPRINTPREVIEW, CM_FILEPRINTPREVIEW));
|
||||
}
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
##@OPT_APPL_HELP 3
|
||||
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_HELPCONTENTS, CM_HELPCONTENTS));
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Add fly-over help hints.
|
||||
cb->SetHintMode(TGadgetWindow::EnterHints);
|
||||
}
|
||||
|
||||
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
void [[TApplication]]::SetupSpeedBar (TDecoratedMDIFrame *frame)
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
void [[TApplication]]::SetupSpeedBar (TOleMDIFrame *frame)
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Create default toolbar New and associate toolbar buttons with commands.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
TControlBar* cb = new TControlBar(frame);
|
||||
CreateGadgets(cb);
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Setup the toolbar ID used by OLE 2 for toolbar negotiation.
|
||||
cb->Attr.Id = IDW_TOOLBAR;
|
||||
|
||||
frame->Insert(*cb, TDecoratedFrame::Top);
|
||||
}
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_TOOLBAR
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Application intialization.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::InitMainWindow ()
|
||||
{
|
||||
if (nCmdShow != SW_HIDE)
|
||||
##@QUERY_APPL_STARTUP == VALUE_NORMAL
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWNORMAL : nCmdShow;
|
||||
##@QUERY_APPL_STARTUP == VALUE_MIN
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWMINIMIZED : nCmdShow;
|
||||
##@QUERY_APPL_STARTUP == VALUE_MAX
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWMAXIMIZED : nCmdShow;
|
||||
|
||||
##<<TMDIClient QUERY_CLASS_NAME [[TMDIClient]]
|
||||
mdiClient = new [[TMDIClient]](this);
|
||||
##@OPT_APPL_STATUSBAR 2
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
TOleMDIFrame* frame = new TOleMDIFrame(Name, MDI_MENU, *mdiClient, true, this);
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
TDecoratedMDIFrame* frame = new TDecoratedMDIFrame(Name, MDI_MENU, *mdiClient, true, this);
|
||||
##!@OPT_APPL_STATUSBAR 2
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
TOleMDIFrame* frame = new TOleMDIFrame(Name, MDI_MENU, *mdiClient, false, this);
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
TDecoratedMDIFrame* frame = new TDecoratedMDIFrame(Name, MDI_MENU, *mdiClient, false, this);
|
||||
|
||||
##QUERY_WIND_STYLE [[StyleAttributes]]
|
||||
##StyleAttributes != "" 3
|
||||
// Override the default window style for the main window.
|
||||
[[StyleAttributes]]
|
||||
|
||||
##QUERY_WIND_BACKGRND [[BackgroundColor]]
|
||||
##BackgroundColor != "" 3
|
||||
// Change the window's background color
|
||||
frame->SetBkgndColor([[BackgroundColor]]);
|
||||
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE != VALUE_SERVER) && (@QUERY_APPL_OLE != VALUE_OLEBOTH))
|
||||
##@QUERY_APPL_STARTUP == VALUE_NORMAL
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWNORMAL : nCmdShow;
|
||||
##@QUERY_APPL_STARTUP == VALUE_MIN
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWMINIMIZED : nCmdShow;
|
||||
##@QUERY_APPL_STARTUP == VALUE_MAX
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWMAXIMIZED : nCmdShow;
|
||||
|
||||
##--END-- ((@QUERY_APPL_OLE != VALUE_SERVER) && (@QUERY_APPL_OLE != VALUE_OLEBOTH))
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Assign ICON w/ this application.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
frame->SetIcon(this, IDI_MDIAPPLICATION);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Menu associated with window and accelerator table associated with table.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
frame->AssignMenu(MDI_MENU);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Associate with the accelerator table.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
frame->Attr.AccelTable = MDI_MENU;
|
||||
|
||||
##@OPT_APPL_TOOLBAR
|
||||
SetupSpeedBar(frame);
|
||||
##@OPT_APPL_STATUSBAR 7
|
||||
|
||||
TStatusBar *sb = new TStatusBar(frame, TGadget::Recessed,
|
||||
TStatusBar::CapsLock |
|
||||
TStatusBar::NumLock |
|
||||
TStatusBar::ScrollLock |
|
||||
TStatusBar::Overtype);
|
||||
frame->Insert(*sb, TDecoratedFrame::Bottom);
|
||||
|
||||
SetMainWindow(frame);
|
||||
|
||||
frame->SetMenuDescr(TMenuDescr(MDI_MENU));
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_CONTROL==VALUE_3D
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Windows 3-D controls.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
EnableCtl3d(true);
|
||||
##--END-- @QUERY_APPL_CONTROL==VALUE_3D
|
||||
##--BEGIN-- @QUERY_APPL_CONTROL==VALUE_BWCC
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Borland Windows custom controls.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
EnableBWCC();
|
||||
##--END-- @QUERY_APPL_CONTROL==VALUE_BWCC
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Response Table handlers:
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::EvNewView (TView& view)
|
||||
{
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
TOleView* ov = TYPESAFE_DOWNCAST(&view, TOleView);
|
||||
// If we're embedded and we're opening out of place then don't create the child window.
|
||||
if (view.GetDocument().IsEmbedded() && ov && !ov->IsOpenEditing()) {
|
||||
TWindow* vw = view.GetWindow();
|
||||
vw->SetParent(TYPESAFE_DOWNCAST(GetMainWindow(), TOleFrame)->GetRemViewBucket());
|
||||
vw->Create();
|
||||
} else {
|
||||
TMDIClient *mdiClient = TYPESAFE_DOWNCAST(GetMainWindow()->GetClientWindow(), TMDIClient);
|
||||
if (mdiClient) {
|
||||
##<<TMDIChild QUERY_CLASS_NAME [[TMDIChild]]
|
||||
[[TMDIChild]]* child = new [[TMDIChild]](*mdiClient, 0, 0);
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Associate ICON w/ this child window.
|
||||
child->SetIcon(this, IDI_DOC);
|
||||
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE 3
|
||||
if (view.GetViewMenu())
|
||||
child->SetMenuDescr(*view.GetViewMenu());
|
||||
|
||||
child->Create();
|
||||
child->SetClientWindow(view.GetWindow());
|
||||
}
|
||||
}
|
||||
|
||||
if (!ov || !ov->GetOcRemView())
|
||||
OcApp->SetOption(amEmbedding, false);
|
||||
##--END-- ((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE != VALUE_SERVER) && (@QUERY_APPL_OLE != VALUE_OLEBOTH))
|
||||
TMDIClient *mdiClient = TYPESAFE_DOWNCAST(GetMainWindow()->GetClientWindow(), TMDIClient);
|
||||
if (mdiClient) {
|
||||
##<<TMDIChild QUERY_CLASS_NAME [[TMDIChild]]
|
||||
[[TMDIChild]]* child = new [[TMDIChild]](*mdiClient, 0, view.GetWindow());
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Associate ICON w/ this child window.
|
||||
child->SetIcon(this, IDI_DOC);
|
||||
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE 3
|
||||
if (view.GetViewMenu())
|
||||
child->SetMenuDescr(*view.GetViewMenu());
|
||||
|
||||
child->Create();
|
||||
}
|
||||
##--END-- ((@QUERY_APPL_OLE != VALUE_SERVER) && (@QUERY_APPL_OLE != VALUE_OLEBOTH))
|
||||
}
|
||||
|
||||
|
||||
void [[TApplication]]::EvCloseView (TView&)
|
||||
{
|
||||
}
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Menu Help Contents command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmHelpContents ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Show the help table of contents.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
HelpState = GetMainWindow()->WinHelp(HelpFileName, HELP_CONTENTS, 0L);
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Menu Help Using Help command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmHelpUsing ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Display the contents of the Windows help file.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
HelpState = GetMainWindow()->WinHelp(HelpFileName, HELP_HELPONHELP, 0L);
|
||||
}
|
||||
##--END-- @OPT_APPL_HELP
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ===========
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_TARGET_NAME [[Target]]
|
||||
// Menu Help About [[Target]] command
|
||||
void [[TApplication]]::CmHelpAbout ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Show the modal dialog.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##--BEGIN-- <<TDialog QUERY_CLASS_NAME [[TDialog]]
|
||||
##((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
[[TDialog]](&TWindow(::GetFocus(), this)).Execute();
|
||||
##((@QUERY_APPL_OLE != VALUE_SERVER) && (@QUERY_APPL_OLE != VALUE_OLEBOTH))
|
||||
[[TDialog]](GetMainWindow()).Execute();
|
||||
##--END-- <<TDialog QUERY_CLASS_NAME [[TDialog]]
|
||||
}
|
||||
##--BEGIN-- @OPT_APPL_DRAGDROP
|
||||
|
||||
|
||||
void [[TApplication]]::InitInstance ()
|
||||
{
|
||||
TApplication::InitInstance();
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Accept files via drag/drop in the frame window.
|
||||
GetMainWindow()->DragAcceptFiles(true);
|
||||
}
|
||||
|
||||
|
||||
void [[TApplication]]::EvDropFiles (TDropInfo drop)
|
||||
{
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Number of files dropped.
|
||||
int totalNumberOfFiles = drop.DragQueryFileCount();
|
||||
|
||||
TFileList* files = new TFileList;
|
||||
|
||||
for (int i = 0; i < totalNumberOfFiles; i++) {
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Tell DragQueryFile the file interested in (i) and the length of your buffer.
|
||||
int fileLength = drop.DragQueryFileNameLen(i) + 1;
|
||||
char *fileName = new char[fileLength];
|
||||
|
||||
drop.DragQueryFile(i, fileName, fileLength);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Getting the file dropped. The location is relative to your client coordinates,
|
||||
// and will have negative values if dropped in the non client parts of the window.
|
||||
//
|
||||
// DragQueryPoint copies that point where the file was dropped and returns whether
|
||||
// or not the point is in the client area. Regardless of whether or not the file
|
||||
// is dropped in the client or non-client area of the window, you will still receive
|
||||
// the file name.
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
TPoint point;
|
||||
bool inClientArea = drop.DragQueryPoint(point);
|
||||
files->Add(new TFileDrop(fileName, point, inClientArea, this));
|
||||
}
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Open the files that were dropped.
|
||||
AddFiles(files);
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Release the memory allocated for this handle with DragFinish.
|
||||
drop.DragFinish();
|
||||
}
|
||||
|
||||
|
||||
void [[TApplication]]::AddFiles (TFileList* files)
|
||||
{
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Open all files dragged in.
|
||||
TFileListIter fileIter(*files);
|
||||
|
||||
while (fileIter) {
|
||||
TDocTemplate* tpl = GetDocManager()->MatchTemplate(fileIter.Current()->WhoAmI());
|
||||
if (tpl)
|
||||
tpl->CreateDoc(fileIter.Current()->WhoAmI());
|
||||
fileIter++;
|
||||
}
|
||||
}
|
||||
##--END-- @OPT_APPL_DRAGDROP
|
||||
|
||||
|
||||
##{main.owl}
|
||||
|
After Width: | Height: | Size: 358 B |
@@ -0,0 +1,28 @@
|
||||
##0 [[StartLine]]
|
||||
##0 [[EndLine]]
|
||||
##--BEGIN-- TRUE
|
||||
## :^1
|
||||
## :YPos() StartLine
|
||||
## --BEGIN-- ? \\"//{{[[ClassName]]SYM_TBL_END}}"
|
||||
## :^-1
|
||||
## :YPos() EndLine
|
||||
## :^@StartLine
|
||||
## :^BOL
|
||||
## --FOR-- AutoEntry = 1 TO ((EndLine - StartLine) + 1)
|
||||
## :ScanCPPAuto([[InternalName]], [[OLEType]], [[OLEArgs]])
|
||||
## --BEGIN-- TRUE
|
||||
## :InternalName == ""
|
||||
## :((EndLine - StartLine) + 1) AutoEntry
|
||||
##*
|
||||
## :InternalName != ""
|
||||
## :UpdateAutomation(ClassName, InternalName, OLEType, OLEArgs)
|
||||
##*
|
||||
## :YPos() == EndLine
|
||||
## :((EndLine - StartLine) + 1) AutoEntry
|
||||
##*
|
||||
## --END-- TRUE
|
||||
##*
|
||||
## :^1
|
||||
## --NEXT-- AutoEntry
|
||||
## --END-- ? \\"//{{[[ClassName]]SYM_TBL_END}}"
|
||||
##--END-- TRUE
|
||||
@@ -0,0 +1,697 @@
|
||||
##{cheader.snp}
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
##@OPT_APPL_DRAGDROP 2
|
||||
#include <dir.h>
|
||||
|
||||
##--BEGIN-- !@OPT_APPL_DRAGDROP
|
||||
##: QUERY_WIND_CLIENT [[Client]]
|
||||
##: <<*Client QUERY_BASE_NAME [[BaseClient]]
|
||||
##: BaseClient == "TListBox"
|
||||
#include <dir.h>
|
||||
|
||||
##--END-- !@OPT_APPL_DRAGDROP
|
||||
##QUERY_FILE_H [[FileName]]
|
||||
#include "[[FileName]]"
|
||||
##QUERY_WIND_CLIENT [[Client]]
|
||||
##<<*Client QUERY_FILE_H [[Filename]]
|
||||
#include "[[Filename]]" // Definition of client class.
|
||||
##--BEGIN-- ((@QUERY_APPL_MODEL != VALUE_DIALOG) || ((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU))
|
||||
## :<<TDialog QUERY_FILE_H [[Filename]]
|
||||
#include "[[Filename]]" // Definition of about dialog.
|
||||
##--END-- ((@QUERY_APPL_MODEL != VALUE_DIALOG) || ((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU))
|
||||
|
||||
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Generated help file.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_APPL_HELP [[HelpFile]]
|
||||
const char HelpFileName[] = "[[HelpFile]].hlp";
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_HELP
|
||||
##{cdragdrp.owl}
|
||||
//{{[[TApplication]] Implementation}}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_OLE_AUTO
|
||||
//
|
||||
// OLE's ITypeInfo browses this symbol table for a list of all data,
|
||||
// properties, and methods exposed by this automated class.
|
||||
//
|
||||
DEFINE_AUTOCLASS([[TApplication]])
|
||||
EXPOSE_APPLICATION([[TApplication]], "Application", "Application object", 0)
|
||||
EXPOSE_QUIT("Quit", "Quit application", 0)
|
||||
//{{[[TApplication]]SYM_TBL_BEGIN}}
|
||||
//{{[[TApplication]]SYM_TBL_END}}
|
||||
END_AUTOCLASS([[TApplication]], tfAppObject | tfCanCreate, "[[TApplication]]", 0, 0);
|
||||
|
||||
|
||||
DEFINE_APP_DICTIONARY(AppDictionary);
|
||||
static TPointer<TRegistrar> Registrar;
|
||||
|
||||
REGISTRATION_FORMAT_BUFFER(100)
|
||||
|
||||
BEGIN_REGISTRATION(ApplicationReg)
|
||||
##@QUERY_OLE_GUID [[GUID]]
|
||||
REGDATA(clsid, "{[[GUID]]}")
|
||||
##--BEGIN-- @QUERY_PRJ_NAME [[AppTitle]]
|
||||
REGDATA(progid, "[[AppTitle]].Application.1")
|
||||
REGDATA(appname, "[[AppTitle]] Server")
|
||||
REGDATA(description, "[[AppTitle]] Server Application")
|
||||
REGDATA(cmdline, "/Automation")
|
||||
// REGDATA(debugger, "TDW")
|
||||
##--END-- @QUERY_PRJ_NAME [[AppTitle]]
|
||||
END_REGISTRATION
|
||||
|
||||
|
||||
##--END-- @QUERY_APPL_OLE_AUTO
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Build a response table for all messages/commands handled
|
||||
// by the application.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
DEFINE_RESPONSE_TABLE1([[TApplication]], TApplication)
|
||||
//{{[[TApplication]]RSP_TBL_BEGIN}}
|
||||
##--BEGIN-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILENEW", "CmFileNew", "", "COMMAND")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEOPEN", "CmFileOpen", "", "COMMAND")
|
||||
EV_COMMAND(CM_FILENEW, CmFileNew),
|
||||
EV_COMMAND(CM_FILEOPEN, CmFileOpen),
|
||||
##@OPT_APPL_PRINTING 6
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINT", "CmFilePrint", "", "COMMAND")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINTERSETUP", "CmFilePrintSetup", "", "COMMAND")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINTPREVIEW", "CmFilePrintPreview", "", "COMMAND")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINT", "CmPrintEnable", "", "ENABLER")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINTERSETUP", "CmPrintEnable", "", "ENABLER")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINTPREVIEW", "CmPrintEnable", "", "ENABLER")
|
||||
EV_COMMAND(CM_FILEPRINT, CmFilePrint),
|
||||
EV_COMMAND(CM_FILEPRINTERSETUP, CmFilePrintSetup),
|
||||
EV_COMMAND(CM_FILEPRINTPREVIEW, CmFilePrintPreview),
|
||||
EV_COMMAND_ENABLE(CM_FILEPRINT, CmPrintEnable),
|
||||
EV_COMMAND_ENABLE(CM_FILEPRINTERSETUP, CmPrintEnable),
|
||||
EV_COMMAND_ENABLE(CM_FILEPRINTPREVIEW, CmPrintEnable),
|
||||
##--END-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
##@OPT_APPL_HELP 2
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPCONTENTS", "CmHelpContents", "", "COMMAND")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPUSING", "CmHelpUsing", "", "COMMAND")
|
||||
EV_COMMAND(CM_HELPCONTENTS, CmHelpContents),
|
||||
EV_COMMAND(CM_HELPUSING, CmHelpUsing),
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPABOUT", "CmHelpAbout", "", "COMMAND")
|
||||
EV_COMMAND(CM_HELPABOUT, CmHelpAbout),
|
||||
##@OPT_APPL_DRAGDROP
|
||||
##:DBResponse(\\"[[TApplication]]", "", "", "WM_DROPFILES", "")
|
||||
EV_WM_DROPFILES,
|
||||
##@OPT_APPL_PRINTING
|
||||
##:DBResponse(\\"[[TApplication]]", "", "", "WM_WININICHANGE", "")
|
||||
EV_WM_WININICHANGE,
|
||||
//{{[[TApplication]]RSP_TBL_END}}
|
||||
END_RESPONSE_TABLE;
|
||||
|
||||
|
||||
##--END-- (@QUERY_APPL_MODEL == VALUE_SDI) && !@OPT_APPL_DOCVIEW
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_APPL_OLE_AUTO
|
||||
[[TApplication]]::[[TApplication]] () : TApplication(::ApplicationReg["appname"], ::Module, &::AppDictionary)
|
||||
##!@QUERY_APPL_OLE_AUTO
|
||||
##QUERY_WIND_TITLE [[Title]]
|
||||
[[TApplication]]::[[TApplication]] () : TApplication("[[Title]]")
|
||||
{
|
||||
##@OPT_APPL_HELP 3
|
||||
HelpState = false;
|
||||
ContextHelp = false;
|
||||
HelpCursor = 0;
|
||||
|
||||
##@OPT_APPL_PRINTING 3
|
||||
Printer = 0;
|
||||
Printing = 0;
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE 2
|
||||
// Common file file flags and filters for Open/Save As dialogs. Filename and directory are
|
||||
// computed in the member functions CmFileOpen, and CmFileSaveAs.
|
||||
FileData.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT;
|
||||
##OPT_DV_RESET
|
||||
##OPT_DV_NEXT
|
||||
##QUERY_DV_DESCR [[Descr]]
|
||||
##--BEGIN-- QUERY_DV_FILTER [[Filter]]
|
||||
##(Filter != "*.*") && (Descr != "All Files (*.*)"
|
||||
FileData.SetFilter("[[Descr]]|[[Filter]]|All Files (*.*)|*.*|");
|
||||
##(Filter == "*.*") && (Descr == "All Files (*.*)"
|
||||
FileData.SetFilter("All Files (*.*)|*.*|");
|
||||
|
||||
##--END-- QUERY_DV_FILTER [[Filter]]
|
||||
##--END-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
// INSERT>> Your constructor code here.
|
||||
}
|
||||
|
||||
|
||||
[[TApplication]]::~[[TApplication]] ()
|
||||
{
|
||||
##@OPT_APPL_PRINTING 3
|
||||
if (Printer)
|
||||
delete Printer;
|
||||
|
||||
// INSERT>> Your destructor code here.
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
bool [[TApplication]]::CanClose ()
|
||||
{
|
||||
bool result = TApplication::CanClose();
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Close the help engine if we used it.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
if (result && HelpState)
|
||||
GetMainWindow()->WinHelp(HelpFileName, HELP_QUIT, 0L);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_HELP
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##--BEGIN-- @OPT_APPL_TOOLBAR
|
||||
void [[TApplication]]::SetupSpeedBar (TDecoratedFrame *frame)
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Create default toolbar New and associate toolbar buttons with commands.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
TControlBar* cb = new TControlBar(frame);
|
||||
##@QUERY_APPL_MODEL == VALUE_SDI 2
|
||||
cb->Insert(*new TButtonGadget(CM_FILENEW, CM_FILENEW));
|
||||
cb->Insert(*new TButtonGadget(CM_FILEOPEN, CM_FILEOPEN));
|
||||
cb->Insert(*new TButtonGadget(CM_FILESAVE, CM_FILESAVE));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITCUT, CM_EDITCUT));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITCOPY, CM_EDITCOPY));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITPASTE, CM_EDITPASTE));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITUNDO, CM_EDITUNDO));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITFIND, CM_EDITFIND));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITFINDNEXT, CM_EDITFINDNEXT));
|
||||
##@OPT_APPL_PRINTING 3
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_FILEPRINT, CM_FILEPRINT));
|
||||
cb->Insert(*new TButtonGadget(CM_FILEPRINTPREVIEW, CM_FILEPRINTPREVIEW));
|
||||
##@OPT_APPL_HELP 2
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_HELPCONTENTS, CM_HELPCONTENTS));
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Add fly-over help hints.
|
||||
cb->SetHintMode(TGadgetWindow::EnterHints);
|
||||
|
||||
frame->Insert(*cb, TDecoratedFrame::Top);
|
||||
}
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_TOOLBAR
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Application intialization.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::InitMainWindow ()
|
||||
{
|
||||
if (nCmdShow != SW_HIDE)
|
||||
##@QUERY_APPL_STARTUP == VALUE_NORMAL
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWNORMAL : nCmdShow;
|
||||
##@QUERY_APPL_STARTUP == VALUE_MIN
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWMINIMIZED : nCmdShow;
|
||||
##@QUERY_APPL_STARTUP == VALUE_MAX
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWMAXIMIZED : nCmdShow;
|
||||
|
||||
##@OPT_APPL_STATUSBAR
|
||||
SDIDecFrame *frame = new SDIDecFrame(0, GetName(), 0, true);
|
||||
##!@OPT_APPL_STATUSBAR
|
||||
SDIDecFrame *frame = new SDIDecFrame(0, GetName(), 0, false);
|
||||
##@QUERY_APPL_MODEL == VALUE_DIALOG
|
||||
frame->SetFlag(wfShrinkToClient);
|
||||
|
||||
##QUERY_WIND_STYLE [[StyleAttributes]]
|
||||
##StyleAttributes != "" 3
|
||||
// Override the default window style for the main window.
|
||||
[[StyleAttributes]]
|
||||
|
||||
##QUERY_WIND_BACKGRND [[BackgroundColor]]
|
||||
##BackgroundColor != "" 3
|
||||
// Change the window's background color
|
||||
frame->SetBkgndColor([[BackgroundColor]]);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Assign ICON w/ this application.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
frame->SetIcon(this, IDI_SDIAPPLICATION);
|
||||
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Menu associated with window and accelerator table associated with table.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG)) 2
|
||||
frame->AssignMenu(SDI_MENU);
|
||||
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Associate with the accelerator table.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG)) 2
|
||||
frame->Attr.AccelTable = SDI_MENU;
|
||||
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##@OPT_APPL_TOOLBAR
|
||||
SetupSpeedBar(frame);
|
||||
##@OPT_APPL_STATUSBAR 7
|
||||
|
||||
TStatusBar *sb = new TStatusBar(frame, TGadget::Recessed,
|
||||
TStatusBar::CapsLock |
|
||||
TStatusBar::NumLock |
|
||||
TStatusBar::ScrollLock |
|
||||
TStatusBar::Overtype);
|
||||
frame->Insert(*sb, TDecoratedFrame::Bottom);
|
||||
|
||||
SetMainWindow(frame);
|
||||
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
frame->SetMenuDescr(TMenuDescr(SDI_MENU));
|
||||
##--BEGIN-- @QUERY_APPL_CONTROL==VALUE_3D
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Windows 3-D controls.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
EnableCtl3d(true);
|
||||
##--END-- @QUERY_APPL_CONTROL==VALUE_3D
|
||||
##--BEGIN-- @QUERY_APPL_CONTROL==VALUE_BWCC
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Borland Windows custom controls.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
EnableBWCC();
|
||||
##--END-- @QUERY_APPL_CONTROL==VALUE_BWCC
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ===========
|
||||
// Menu File New command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmFileNew ()
|
||||
{
|
||||
##QUERY_WIND_CLIENT [[ClientClass]]
|
||||
##--BEGIN-- <<*ClientClass QUERY_BASE_NAME [[BaseClient]]
|
||||
##BaseClient == "TEditFile" 2
|
||||
[[ClientClass]] *client = TYPESAFE_DOWNCAST(GetMainWindow()->GetClientWindow(), [[ClientClass]]); // Client window for the frame.
|
||||
client->NewFile();
|
||||
##BaseClient == "TListBox" 3
|
||||
[[ClientClass]] *client = TYPESAFE_DOWNCAST(GetMainWindow()->GetClientWindow(), [[ClientClass]]); // Client window for the frame.
|
||||
if (client->CanClose())
|
||||
client->ClearList();
|
||||
##--END-- <<*ClientClass QUERY_BASE_NAME [[BaseClient]]
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ===========
|
||||
// Menu File Open command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmFileOpen ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Display standard Open dialog box to select a file name.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
*FileData.FileName = 0;
|
||||
|
||||
##QUERY_WIND_CLIENT [[ClientClass]]
|
||||
[[ClientClass]] *client = TYPESAFE_DOWNCAST(GetMainWindow()->GetClientWindow(), [[ClientClass]]); // Client window for the frame.
|
||||
if (client->CanClose())
|
||||
if (TFileOpenDialog(GetMainWindow(), FileData).Execute() == IDOK)
|
||||
OpenFile();
|
||||
}
|
||||
|
||||
|
||||
void [[TApplication]]::OpenFile (const char *fileName)
|
||||
{
|
||||
if (fileName)
|
||||
strcpy(FileData.FileName, fileName);
|
||||
|
||||
##QUERY_WIND_CLIENT [[ClientName]]
|
||||
##--BEGIN-- <<*ClientName QUERY_BASE_NAME [[BaseClient]]
|
||||
##BaseClient == "TEditFile" 2
|
||||
[[ClientName]] *client = TYPESAFE_DOWNCAST(GetMainWindow()->GetClientWindow(), [[ClientName]]); // Client window for the frame.
|
||||
client->ReplaceWith(FileData.FileName);
|
||||
##BaseClient == "TListBox" 3
|
||||
[[ClientName]] *client = TYPESAFE_DOWNCAST(GetMainWindow()->GetClientWindow(), [[ClientName]]); // Client window for the frame.
|
||||
client->ClearList();
|
||||
LoadTextFile();
|
||||
##--END-- <<*ClientName QUERY_BASE_NAME [[BaseClient]]
|
||||
}
|
||||
|
||||
|
||||
##QUERY_WIND_CLIENT [[ClientName]]
|
||||
##--BEGIN-- <<*ClientName QUERY_BASE_NAME [[BaseClient]]
|
||||
##--BEGIN-- BaseClient == "TListBox"
|
||||
##: @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Used by ListBox client to read a text file into the list box.
|
||||
void [[TApplication]]::LoadTextFile ()
|
||||
{
|
||||
char buf[255+1];
|
||||
ifstream *inStream;
|
||||
|
||||
TListBox *client = TYPESAFE_DOWNCAST(GetMainWindow()->GetClientWindow(), TListBox);
|
||||
|
||||
##: @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Only work if the client class is a TListBox.
|
||||
if (client) {
|
||||
client->ClearList();
|
||||
inStream = new ifstream(FileData.FileName);
|
||||
while (inStream->good()) {
|
||||
inStream->getline(buf, sizeof(buf) - 1);
|
||||
if (inStream->good())
|
||||
client->AddString(buf);
|
||||
}
|
||||
|
||||
##: @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Return an error message if we had a stream error and it wasn't the eof.
|
||||
if (inStream->bad() && !inStream->eof()) {
|
||||
string msgTemplate(*this, IDS_UNABLEREAD);
|
||||
char* msg = new char[MAXPATH + msgTemplate.length()];
|
||||
wsprintf(msg, msgTemplate.c_str(), *FileData.FileName);
|
||||
GetMainWindow()->MessageBox(msg, GetName(), MB_ICONEXCLAMATION | MB_OK);
|
||||
delete msg;
|
||||
}
|
||||
|
||||
delete inStream;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
##--END-- BaseClient == "TListBox"
|
||||
##--END-- <<*ClientName QUERY_BASE_NAME [[BaseClient]]
|
||||
##--END-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
//{{SDIDecFrame Implementation}}
|
||||
|
||||
|
||||
SDIDecFrame::SDIDecFrame (TWindow *parent, const char far *title, TWindow *clientWnd, bool trackMenuSelection, TModule *module)
|
||||
##QUERY_WIND_CLIENT [[ClientClass]]
|
||||
##--BEGIN-- <<*ClientClass QUERY_BASE_NAME [[BaseClient]]
|
||||
##BaseClient == "TEditFile"
|
||||
: TDecoratedFrame(parent, title, clientWnd == 0 ? new [[ClientClass]](0, 0, 0) : clientWnd, trackMenuSelection, module)
|
||||
##BaseClient == "TListBox"
|
||||
: TDecoratedFrame(parent, title, clientWnd == 0 ? new [[ClientClass]](0, 0, 0, 0, 100, 100) : clientWnd, trackMenuSelection, module)
|
||||
##BaseClient == "TWindow"
|
||||
: TDecoratedFrame(parent, title, clientWnd == 0 ? new [[ClientClass]](0, "") : clientWnd, trackMenuSelection, module)
|
||||
##BaseClient == "TDialog"
|
||||
: TDecoratedFrame(parent, title, clientWnd == 0 ? new [[ClientClass]](0) : clientWnd, trackMenuSelection, module)
|
||||
##--END-- <<*ClientClass QUERY_BASE_NAME [[BaseClient]]
|
||||
{
|
||||
// INSERT>> Your constructor code here.
|
||||
|
||||
}
|
||||
|
||||
|
||||
SDIDecFrame::~SDIDecFrame ()
|
||||
{
|
||||
// INSERT>> Your destructor code here.
|
||||
|
||||
}
|
||||
##--BEGIN-- ((@QUERY_APPL_MODEL == VALUE_DIALOG) && (@OPT_APPL_TOOLBAR || @OPT_APPL_STATUSBAR))
|
||||
|
||||
|
||||
void SDIDecFrame::SetupWindow ()
|
||||
{
|
||||
TDecoratedFrame::SetupWindow();
|
||||
|
||||
TRect r;
|
||||
GetWindowRect(r);
|
||||
|
||||
##@OPT_APPL_TOOLBAR && @OPT_APPL_STATUSBAR && @QUERY_APPL_DLGCLIENT_MENU
|
||||
r.bottom += 60;
|
||||
##((!@QUERY_APPL_DLGCLIENT_MENU && @OPT_APPL_STATUSBAR) || (@QUERY_APPL_DLGCLIENT_MENU && @OPT_APPL_TOOLBAR && !OPT_APPL_STATUSBAR))
|
||||
r.bottom += 30;
|
||||
SetWindowPos(0, r, SWP_NOZORDER | SWP_NOMOVE);
|
||||
|
||||
// INSERT>> Your code here.
|
||||
|
||||
}
|
||||
##--END-- ((@QUERY_APPL_MODEL == VALUE_DIALOG) && (@OPT_APPL_TOOLBAR || @OPT_APPL_STATUSBAR))
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ==========
|
||||
// Menu File Print command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmFilePrint ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Create Printer object if not already created.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
if (!Printer)
|
||||
Printer = new TPrinter(this);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Create Printout window and set characteristics.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
APXPrintOut printout(Printer, "Title", GetMainWindow()->GetClientWindow());
|
||||
printout.SetBanding(true);
|
||||
|
||||
Printing++;
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Bring up the Print dialog and print the document.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
Printer->Print(GetWindowPtr(GetActiveWindow()), printout, true);
|
||||
|
||||
Printing--;
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ==========
|
||||
// Menu File Print Setup command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmFilePrintSetup ()
|
||||
{
|
||||
if (!Printer)
|
||||
Printer = new TPrinter(this);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Bring up the Print Setup dialog.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
Printer->Setup(GetMainWindow());
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ==========
|
||||
// Menu File Print Preview command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmFilePrintPreview ()
|
||||
{
|
||||
SDIDecFrame *sdiFrame = TYPESAFE_DOWNCAST(GetMainWindow(), SDIDecFrame);
|
||||
if (sdiFrame) {
|
||||
if (!Printer)
|
||||
Printer = new TPrinter(this);
|
||||
|
||||
Printing++;
|
||||
|
||||
PreviewWindow *prevW = new PreviewWindow(sdiFrame, Printer, sdiFrame->GetClientWindow(), "Print Preview", new TLayoutWindow(0));
|
||||
prevW->Create();
|
||||
|
||||
BeginModal(GetMainWindow());
|
||||
|
||||
Printing--;
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Now that printing is off we can invalidate because the edit window to repaint.
|
||||
GetMainWindow()->SetRedraw(true);
|
||||
GetMainWindow()->Invalidate();
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE 2
|
||||
// We must destroy the preview window explicitly. Otherwise, the window will not be destroyed until
|
||||
// it's parent the MainWindow is destroyed.
|
||||
prevW->Destroy();
|
||||
delete prevW;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ==========
|
||||
// Menu enabler used by Print, Print Setup and Print Preview.
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmPrintEnable (TCommandEnabler &tce)
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// If we have a Printer already created just test if all is okay.
|
||||
// Otherwise create a Printer object and make sure the printer
|
||||
// really exists and then delete the Printer object.
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
if (!Printer) {
|
||||
Printer = new TPrinter(this);
|
||||
|
||||
tce.Enable(Printer->GetSetup().Error == 0);
|
||||
} else
|
||||
tce.Enable(Printer->GetSetup().Error == 0);
|
||||
}
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Menu Help Contents command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmHelpContents ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Show the help table of contents.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
HelpState = GetMainWindow()->WinHelp(HelpFileName, HELP_CONTENTS, 0L);
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Menu Help Using Help command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmHelpUsing ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Display the contents of the Windows help file.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
HelpState = GetMainWindow()->WinHelp(HelpFileName, HELP_HELPONHELP, 0L);
|
||||
}
|
||||
##--END-- @OPT_APPL_HELP
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ===========
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_TARGET_NAME [[Target]]
|
||||
// Menu Help About [[Target]] command
|
||||
void [[TApplication]]::CmHelpAbout ()
|
||||
{
|
||||
##"" [[TDialog]]
|
||||
##--BEGIN-- ((@QUERY_APPL_MODEL != VALUE_DIALOG) || ((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU))
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Show the modal dialog.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
## :<<TDialog QUERY_CLASS_NAME TDialog
|
||||
[[TDialog]](MainWindow).Execute();
|
||||
##--END-- ((@QUERY_APPL_MODEL != VALUE_DIALOG) || ((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU))
|
||||
}
|
||||
##--BEGIN-- @OPT_APPL_DRAGDROP
|
||||
|
||||
|
||||
void [[TApplication]]::InitInstance ()
|
||||
{
|
||||
TApplication::InitInstance();
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Accept files via drag/drop in the frame window.
|
||||
GetMainWindow()->DragAcceptFiles(true);
|
||||
}
|
||||
|
||||
|
||||
void [[TApplication]]::EvDropFiles (TDropInfo drop)
|
||||
{
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Tell DragQueryFile the file interested in (0) and the length of your buffer.
|
||||
int fileLength = drop.DragQueryFileNameLen(0) + 1;
|
||||
char *fileName = new char[fileLength];
|
||||
|
||||
drop.DragQueryFile(0, fileName, fileLength);
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Open the file that was dropped.
|
||||
AddFile(fileName);
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Release the memory allocated for this handle with DragFinish.
|
||||
drop.DragFinish();
|
||||
}
|
||||
|
||||
|
||||
void [[TApplication]]::AddFile (const char *FileName)
|
||||
{
|
||||
strcpy(FileData.FileName, FileName);
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Open the file dragged in.
|
||||
##QUERY_WIND_CLIENT [[ClientClass]]
|
||||
##--BEGIN-- <<*ClientClass QUERY_BASE_NAME [[BaseClient]]
|
||||
##BaseClient == "TEditFile" 2
|
||||
[[ClientClass]] *client = TYPESAFE_DOWNCAST(GetMainWindow()->GetClientWindow(), [[ClientClass]]);
|
||||
client->ReplaceWith(FileData.FileName);
|
||||
##BaseClient == "TListBox" 3
|
||||
[[ClientClass]] *client = TYPESAFE_DOWNCAST(GetMainWindow()->GetClientWindow(), [[ClientClass]]);
|
||||
client->ClearList();
|
||||
LoadTextFile();
|
||||
##--END-- <<*ClientClass QUERY_BASE_NAME [[BaseClient]]
|
||||
}
|
||||
##--END-- @OPT_APPL_DRAGDROP
|
||||
##{main.owl}
|
||||
@@ -0,0 +1,653 @@
|
||||
##{cheader.snp}
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
##@OPT_APPL_DRAGDROP 2
|
||||
#include <dir.h>
|
||||
|
||||
##QUERY_FILE_H [[FileName]]
|
||||
#include "[[FileName]]"
|
||||
##--BEGIN-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
##OPT_DV_RESET
|
||||
##OPT_DV_NEXT
|
||||
##QUERY_DV_TVIEW [[WindowClient]]
|
||||
##<<*WindowClient QUERY_FILE_H [[FileName]]
|
||||
#include "[[FileName]]" // Definition of client class.
|
||||
##--END-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_DIALOG
|
||||
##QUERY_WIND_CLIENT [[Client]]
|
||||
##<<*Client QUERY_FILE_H [[Filename]]
|
||||
#include "[[Filename]]" // Definition of client class.
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_DIALOG
|
||||
##--BEGIN-- ((@QUERY_APPL_MODEL != VALUE_DIALOG) || ((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU))
|
||||
## :<<TDialog QUERY_FILE_H [[Filename]]
|
||||
#include "[[Filename]]" // Definition of about dialog.
|
||||
##--END-- ((@QUERY_APPL_MODEL != VALUE_DIALOG) || ((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU))
|
||||
|
||||
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Generated help file.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_APPL_HELP [[HelpFile]]
|
||||
const char HelpFileName[] = "[[HelpFile]].hlp";
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_HELP
|
||||
##{cdragdrp.owl}
|
||||
//{{[[TApplication]] Implementation}}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_OLE_AUTO
|
||||
//
|
||||
// OLE's ITypeInfo browses this symbol table for a list of all data,
|
||||
// properties, and methods exposed by this automated class.
|
||||
//
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
DEFINE_AUTOAGGREGATE([[TApplication]], OcApp->Aggregate)
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
DEFINE_AUTOCLASS([[TApplication]])
|
||||
EXPOSE_APPLICATION([[TApplication]], "Application", "Application object", 0)
|
||||
EXPOSE_QUIT("Quit", "Quit application", 0)
|
||||
//{{[[TApplication]]SYM_TBL_BEGIN}}
|
||||
//{{[[TApplication]]SYM_TBL_END}}
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
END_AUTOAGGREGATE([[TApplication]], tfAppObject | tfCanCreate, "[[TApplication]]", 0, 0);
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
END_AUTOCLASS([[TApplication]], tfAppObject | tfCanCreate, "[[TApplication]]", 0, 0);
|
||||
|
||||
|
||||
##--END-- @QUERY_APPL_OLE_AUTO
|
||||
##((@QUERY_APPL_OLE != VALUE_NOOLE) || @QUERY_APPL_OLE_AUTO) 2
|
||||
DEFINE_APP_DICTIONARY(AppDictionary);
|
||||
|
||||
##((@QUERY_APPL_OLE == VALUE_NOOLE) && @QUERY_APPL_OLE_AUTO)
|
||||
static TPointer<TRegistrar> Registrar;
|
||||
##((@QUERY_APPL_OLE != VALUE_NOOLE)
|
||||
static TPointer<TOcRegistrar> Registrar;
|
||||
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE != VALUE_NOOLE) || @QUERY_APPL_OLE_AUTO)
|
||||
REGISTRATION_FORMAT_BUFFER(100)
|
||||
|
||||
BEGIN_REGISTRATION(ApplicationReg)
|
||||
##@QUERY_OLE_GUID [[GUID]]
|
||||
REGDATA(clsid, "{[[GUID]]}")
|
||||
##--BEGIN-- @QUERY_PRJ_NAME [[AppTitle]]
|
||||
##((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH) || @QUERY_APPL_OLE_AUTO) 2
|
||||
REGDATA(appname, "[[AppTitle]] Server")
|
||||
REGDATA(description, "[[AppTitle]] Server Application")
|
||||
##((@QUERY_APPL_OLE == VALUE_CONTAINER) && !@QUERY_APPL_OLE_AUTO) 2
|
||||
REGDATA(appname, "[[AppTitle]] Container")
|
||||
REGDATA(description, "[[AppTitle]] Container Application")
|
||||
##@QUERY_APPL_OLE_AUTO
|
||||
REGDATA(progid, "[[AppTitle]].Application.1")
|
||||
##--END-- @QUERY_PRJ_NAME [[AppTitle]]
|
||||
##@QUERY_APPL_OLE_AUTO
|
||||
REGDATA(cmdline, "/Automation")
|
||||
##!@QUERY_APPL_OLE_AUTO
|
||||
REGDATA(cmdline, "")
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
REGDATA(usage, ocrMultipleUse)
|
||||
##--BEGIN-- @QUERY_APPL_OLE_AUTO
|
||||
// REGDATA(debugger, "TDW")
|
||||
##--END-- @QUERY_APPL_OLE_AUTO
|
||||
##--END-- ((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
END_REGISTRATION
|
||||
|
||||
##--END-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_DIALOG
|
||||
##: @QUERY_APPL_DLGCLIENT [[DLogClient]]
|
||||
DEFINE_DOC_TEMPLATE_CLASS(TFileDocument, [[DLogClient]], DlgDTPL);
|
||||
DlgDTPL __dlogClnt("All Files (*.*)", "*.*", 0, "TXT", dtAutoDelete | dtUpdateDir);
|
||||
|
||||
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_DIALOG
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
##: {AddOleDV.SNP}
|
||||
##*
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
##: {AddDocV.SNP}
|
||||
##*
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Build a response table for all messages/commands handled
|
||||
// by the application.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
DEFINE_RESPONSE_TABLE1([[TApplication]], TApplication)
|
||||
//{{[[TApplication]]RSP_TBL_BEGIN}}
|
||||
EV_OWLVIEW(dnCreate, EvNewView),
|
||||
EV_OWLVIEW(dnClose, EvCloseView),
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPABOUT", "CmHelpAbout", "", "COMMAND")
|
||||
EV_COMMAND(CM_HELPABOUT, CmHelpAbout),
|
||||
##@OPT_APPL_HELP 2
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPCONTENTS", "CmHelpContents", "", "COMMAND")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_HELPUSING", "CmHelpUsing", "", "COMMAND")
|
||||
EV_COMMAND(CM_HELPCONTENTS, CmHelpContents),
|
||||
EV_COMMAND(CM_HELPUSING, CmHelpUsing),
|
||||
##@OPT_APPL_PRINTING 6
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINT", "CmFilePrint", "", "COMMAND")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINTERSETUP", "CmFilePrintSetup", "", "COMMAND")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINTPREVIEW", "CmFilePrintPreview", "", "COMMAND")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINT", "CmPrintEnable", "", "ENABLER")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINTERSETUP", "CmPrintEnable", "", "ENABLER")
|
||||
##:DBResponse(\\"[[TApplication]]", "CM_FILEPRINTPREVIEW", "CmPrintEnable", "", "ENABLER")
|
||||
EV_COMMAND(CM_FILEPRINT, CmFilePrint),
|
||||
EV_COMMAND(CM_FILEPRINTERSETUP, CmFilePrintSetup),
|
||||
EV_COMMAND(CM_FILEPRINTPREVIEW, CmFilePrintPreview),
|
||||
EV_COMMAND_ENABLE(CM_FILEPRINT, CmPrintEnable),
|
||||
EV_COMMAND_ENABLE(CM_FILEPRINTERSETUP, CmPrintEnable),
|
||||
EV_COMMAND_ENABLE(CM_FILEPRINTPREVIEW, CmPrintEnable),
|
||||
##@OPT_APPL_DRAGDROP
|
||||
##:DBResponse(\\"[[TApplication]]", "", "", "WM_DROPFILES", "")
|
||||
EV_WM_DROPFILES,
|
||||
##@OPT_APPL_PRINTING
|
||||
##:DBResponse(\\"[[TApplication]]", "", "", "WM_WININICHANGE", "")
|
||||
EV_WM_WININICHANGE,
|
||||
//{{[[TApplication]]RSP_TBL_END}}
|
||||
END_RESPONSE_TABLE;
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##((@QUERY_APPL_OLE == VALUE_NOOLE) && (@QUERY_APPL_OLE_AUTO))
|
||||
[[TApplication]]::[[TApplication]] () : TApplication(::ApplicationReg["appname"], ::Module, &::AppDictionary)
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
[[TApplication]]::[[TApplication]] () : TApplication(::ApplicationReg["appname"], ::Module, &::AppDictionary)
|
||||
##((@QUERY_APPL_OLE == VALUE_NOOLE) && (!@QUERY_APPL_OLE_AUTO))
|
||||
##QUERY_WIND_TITLE [[Title]]
|
||||
[[TApplication]]::[[TApplication]] () : TApplication("[[Title]]")
|
||||
{
|
||||
##@OPT_APPL_HELP 4
|
||||
HelpState = false;
|
||||
ContextHelp = false;
|
||||
HelpCursor = 0;
|
||||
|
||||
##@OPT_APPL_PRINTING 3
|
||||
Printer = 0;
|
||||
Printing = 0;
|
||||
|
||||
SetDocManager(new TDocManager(dmSDI, this));
|
||||
|
||||
// INSERT>> Your constructor code here.
|
||||
}
|
||||
|
||||
|
||||
[[TApplication]]::~[[TApplication]] ()
|
||||
{
|
||||
##@OPT_APPL_PRINTING 3
|
||||
if (Printer)
|
||||
delete Printer;
|
||||
|
||||
// INSERT>> Your destructor code here.
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
bool [[TApplication]]::CanClose ()
|
||||
{
|
||||
bool result = TApplication::CanClose();
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Close the help engine if we used it.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
if (result && HelpState)
|
||||
GetMainWindow()->WinHelp(HelpFileName, HELP_QUIT, 0L);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_HELP
|
||||
|
||||
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##--BEGIN-- @OPT_APPL_TOOLBAR
|
||||
void [[TApplication]]::CreateGadgets (TControlBar *cb, bool server)
|
||||
{
|
||||
if (!server) {
|
||||
cb->Insert(*new TButtonGadget(CM_FILENEW, CM_FILENEW));
|
||||
cb->Insert(*new TButtonGadget(CM_FILEOPEN, CM_FILEOPEN));
|
||||
cb->Insert(*new TButtonGadget(CM_FILESAVE, CM_FILESAVE));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
}
|
||||
|
||||
cb->Insert(*new TButtonGadget(CM_EDITCUT, CM_EDITCUT));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITCOPY, CM_EDITCOPY));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITPASTE, CM_EDITPASTE));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITUNDO, CM_EDITUNDO));
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITFIND, CM_EDITFIND));
|
||||
cb->Insert(*new TButtonGadget(CM_EDITFINDNEXT, CM_EDITFINDNEXT));
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
|
||||
if (!server) {
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_FILEPRINT, CM_FILEPRINT));
|
||||
cb->Insert(*new TButtonGadget(CM_FILEPRINTPREVIEW, CM_FILEPRINTPREVIEW));
|
||||
}
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
##@OPT_APPL_HELP 3
|
||||
|
||||
cb->Insert(*new TSeparatorGadget(6));
|
||||
cb->Insert(*new TButtonGadget(CM_HELPCONTENTS, CM_HELPCONTENTS));
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Add fly-over help hints.
|
||||
cb->SetHintMode(TGadgetWindow::EnterHints);
|
||||
}
|
||||
|
||||
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
void [[TApplication]]::SetupSpeedBar (TDecoratedFrame *frame)
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
void [[TApplication]]::SetupSpeedBar (TOleFrame *frame)
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Create default toolbar New and associate toolbar buttons with commands.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
TControlBar* cb = new TControlBar(frame);
|
||||
CreateGadgets(cb);
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Setup the toolbar ID used by OLE 2 for toolbar negotiation.
|
||||
cb->Attr.Id = IDW_TOOLBAR;
|
||||
|
||||
frame->Insert(*cb, TDecoratedFrame::Top);
|
||||
}
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_TOOLBAR
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Application intialization.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::InitMainWindow ()
|
||||
{
|
||||
if (nCmdShow != SW_HIDE)
|
||||
##@QUERY_APPL_STARTUP == VALUE_NORMAL
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWNORMAL : nCmdShow;
|
||||
##@QUERY_APPL_STARTUP == VALUE_MIN
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWMINIMIZED : nCmdShow;
|
||||
##@QUERY_APPL_STARTUP == VALUE_MAX
|
||||
nCmdShow = (nCmdShow != SW_SHOWMINNOACTIVE) ? SW_SHOWMAXIMIZED : nCmdShow;
|
||||
|
||||
##@OPT_APPL_STATUSBAR
|
||||
SDIDecFrame *frame = new SDIDecFrame(0, GetName(), 0, true, this);
|
||||
##!@OPT_APPL_STATUSBAR
|
||||
SDIDecFrame *frame = new SDIDecFrame(0, GetName(), 0, false, this);
|
||||
|
||||
##QUERY_WIND_STYLE [[StyleAttributes]]
|
||||
##StyleAttributes != "" 3
|
||||
// Override the default window style for the main window.
|
||||
[[StyleAttributes]]
|
||||
|
||||
##QUERY_WIND_BACKGRND [[BackgroundColor]]
|
||||
##BackgroundColor != "" 3
|
||||
// Change the window's background color
|
||||
frame->SetBkgndColor([[BackgroundColor]]);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Assign ICON w/ this application.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
frame->SetIcon(this, IDI_SDIAPPLICATION);
|
||||
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Menu associated with window and accelerator table associated with table.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG)) 2
|
||||
frame->AssignMenu(SDI_MENU);
|
||||
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Associate with the accelerator table.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG)) 2
|
||||
frame->Attr.AccelTable = SDI_MENU;
|
||||
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##@OPT_APPL_TOOLBAR
|
||||
SetupSpeedBar(frame);
|
||||
##@OPT_APPL_STATUSBAR 7
|
||||
|
||||
TStatusBar *sb = new TStatusBar(frame, TGadget::Recessed,
|
||||
TStatusBar::CapsLock |
|
||||
TStatusBar::NumLock |
|
||||
TStatusBar::ScrollLock |
|
||||
TStatusBar::Overtype);
|
||||
frame->Insert(*sb, TDecoratedFrame::Bottom);
|
||||
|
||||
SetMainWindow(frame);
|
||||
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG)) 2
|
||||
frame->SetMenuDescr(TMenuDescr(SDI_MENU));
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_CONTROL==VALUE_3D
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Windows 3-D controls.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
EnableCtl3d(true);
|
||||
##--END-- @QUERY_APPL_CONTROL==VALUE_3D
|
||||
##--BEGIN-- @QUERY_APPL_CONTROL==VALUE_BWCC
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Borland Windows custom controls.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
EnableBWCC();
|
||||
##--END-- @QUERY_APPL_CONTROL==VALUE_BWCC
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_DIALOG
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Application instance initialization.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::InitInstance ()
|
||||
{
|
||||
TApplication::InitInstance();
|
||||
GetDocManager()->CreateAnyDoc(0, dtNewDoc);
|
||||
}
|
||||
|
||||
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_DIALOG
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Response Table handlers:
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::EvNewView (TView& view)
|
||||
{
|
||||
GetMainWindow()->SetClientWindow(view.GetWindow());
|
||||
if (!view.IsOK())
|
||||
GetMainWindow()->SetClientWindow(0);
|
||||
else if (view.GetViewMenu())
|
||||
GetMainWindow()->MergeMenu(*view.GetViewMenu());
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
|
||||
TOleView* ov = TYPESAFE_DOWNCAST(&view, TOleView);
|
||||
if (!ov || !ov->GetOcRemView())
|
||||
OcApp->SetOption(amEmbedding, false);
|
||||
##--END-- ((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
}
|
||||
|
||||
|
||||
void [[TApplication]]::EvCloseView (TView&)
|
||||
{
|
||||
GetMainWindow()->SetClientWindow(0);
|
||||
##QUERY_WIND_TITLE [[Title]]
|
||||
GetMainWindow()->SetCaption("[[Title]]");
|
||||
}
|
||||
|
||||
|
||||
//{{SDIDecFrame Implementation}}
|
||||
|
||||
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE 2
|
||||
SDIDecFrame::SDIDecFrame (TWindow *, const char far *title, TWindow *clientWnd, bool trackMenuSelection, TModule *module)
|
||||
: TOleFrame(title, clientWnd, trackMenuSelection, module)
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE 2
|
||||
SDIDecFrame::SDIDecFrame (TWindow *parent, const char far *title, TWindow *clientWnd, bool trackMenuSelection, TModule *module)
|
||||
: TDecoratedFrame(parent, title, clientWnd, trackMenuSelection, module)
|
||||
{
|
||||
// INSERT>> Your constructor code here.
|
||||
|
||||
}
|
||||
|
||||
|
||||
SDIDecFrame::~SDIDecFrame ()
|
||||
{
|
||||
// INSERT>> Your destructor code here.
|
||||
|
||||
}
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ==========
|
||||
// Menu File Print command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmFilePrint ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Create Printer object if not already created.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
if (!Printer)
|
||||
Printer = new TPrinter(this);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Create Printout window and set characteristics.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
APXPrintOut printout(Printer, "Title", GetMainWindow()->GetClientWindow());
|
||||
printout.SetBanding(true);
|
||||
|
||||
Printing++;
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Bring up the Print dialog and print the document.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
Printer->Print(GetWindowPtr(GetActiveWindow()), printout, true);
|
||||
|
||||
Printing--;
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ==========
|
||||
// Menu File Print Setup command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmFilePrintSetup ()
|
||||
{
|
||||
if (!Printer)
|
||||
Printer = new TPrinter(this);
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Bring up the Print Setup dialog.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
Printer->Setup(GetMainWindow());
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ==========
|
||||
// Menu File Print Preview command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmFilePrintPreview ()
|
||||
{
|
||||
SDIDecFrame *sdiFrame = TYPESAFE_DOWNCAST(GetMainWindow(), SDIDecFrame);
|
||||
if (sdiFrame) {
|
||||
if (!Printer)
|
||||
Printer = new TPrinter(this);
|
||||
|
||||
Printing++;
|
||||
|
||||
PreviewWindow *prevW = new PreviewWindow(sdiFrame, Printer, sdiFrame->GetClientWindow(), "Print Preview", new TLayoutWindow(0));
|
||||
prevW->Create();
|
||||
|
||||
BeginModal(GetMainWindow());
|
||||
|
||||
Printing--;
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Now that printing is off we can invalidate because the edit window to repaint.
|
||||
GetMainWindow()->SetRedraw(true);
|
||||
GetMainWindow()->Invalidate();
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE 2
|
||||
// We must destroy the preview window explicitly. Otherwise, the window will not be destroyed until
|
||||
// it's parent the MainWindow is destroyed.
|
||||
prevW->Destroy();
|
||||
delete prevW;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ==========
|
||||
// Menu enabler used by Print, Print Setup and Print Preview.
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmPrintEnable (TCommandEnabler &tce)
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// If we have a Printer already created just test if all is okay.
|
||||
// Otherwise create a Printer object and make sure the printer
|
||||
// really exists and then delete the Printer object.
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
if (!Printer) {
|
||||
Printer = new TPrinter(this);
|
||||
|
||||
tce.Enable(Printer->GetSetup().Error == 0);
|
||||
} else
|
||||
tce.Enable(Printer->GetSetup().Error == 0);
|
||||
}
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
##--END-- (@QUERY_APPL_MODEL == VALUE_SDI)
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Menu Help Contents command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmHelpContents ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Show the help table of contents.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
HelpState = GetMainWindow()->WinHelp(HelpFileName, HELP_CONTENTS, 0L);
|
||||
}
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// =====
|
||||
// Menu Help Using Help command
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
void [[TApplication]]::CmHelpUsing ()
|
||||
{
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Display the contents of the Windows help file.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
HelpState = GetMainWindow()->WinHelp(HelpFileName, HELP_HELPONHELP, 0L);
|
||||
}
|
||||
##--END-- @OPT_APPL_HELP
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//////////////////////////////////////////////////////////
|
||||
// [[TApplication]]
|
||||
// ===========
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_TARGET_NAME [[Target]]
|
||||
// Menu Help About [[Target]] command
|
||||
void [[TApplication]]::CmHelpAbout ()
|
||||
{
|
||||
##"" [[TDialog]]
|
||||
##--BEGIN-- ((@QUERY_APPL_MODEL != VALUE_DIALOG) || ((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU))
|
||||
## --BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// Show the modal dialog.
|
||||
//
|
||||
## --END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
## :<<TDialog QUERY_CLASS_NAME TDialog
|
||||
##((@QUERY_APPL_OLE == VALUE_SERVER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
[[TDialog]](&TWindow(::GetFocus(), this)).Execute();
|
||||
##((@QUERY_APPL_OLE != VALUE_SERVER) && (@QUERY_APPL_OLE != VALUE_OLEBOTH))
|
||||
[[TDialog]](GetMainWindow()).Execute();
|
||||
##--END-- ((@QUERY_APPL_MODEL != VALUE_DIALOG) || ((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU))
|
||||
}
|
||||
##--BEGIN-- @OPT_APPL_DRAGDROP
|
||||
|
||||
|
||||
void [[TApplication]]::InitInstance ()
|
||||
{
|
||||
TApplication::InitInstance();
|
||||
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Accept files via drag/drop in the frame window.
|
||||
GetMainWindow()->DragAcceptFiles(true);
|
||||
}
|
||||
|
||||
|
||||
void [[TApplication]]::EvDropFiles (TDropInfo drop)
|
||||
{
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Tell DragQueryFile the file interested in (0) and the length of your buffer.
|
||||
int fileLength = drop.DragQueryFileNameLen(0) + 1;
|
||||
char *fileName = new char[fileLength];
|
||||
|
||||
drop.DragQueryFile(0, fileName, fileLength);
|
||||
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Open the file that was dropped.
|
||||
AddFile(fileName);
|
||||
##@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// Release the memory allocated for this handle with DragFinish.
|
||||
drop.DragFinish();
|
||||
}
|
||||
|
||||
|
||||
void [[TApplication]]::AddFile (const char *FileName)
|
||||
{
|
||||
TDocTemplate* tpl = GetDocManager()->MatchTemplate(FileName);
|
||||
if (tpl)
|
||||
tpl->CreateDoc(FileName);
|
||||
}
|
||||
##--END-- @OPT_APPL_DRAGDROP
|
||||
|
||||
|
||||
##{main.owl}
|
||||
|
After Width: | Height: | Size: 358 B |
@@ -0,0 +1,17 @@
|
||||
##"//{{[[ClassName]]RSP_TBL_END}}" [[ClassTMarker]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##^BOF
|
||||
##TRUE [[VBXMIXIN]]
|
||||
##TRUE [[Search2]]
|
||||
##--BEGIN-- ? ClassMarker [[Search]]
|
||||
##Search == TRUE
|
||||
##: {CVBX2.SNP}
|
||||
##*
|
||||
##Search == FALSE
|
||||
##: {CAddRsp.SNP}
|
||||
##: ^BOF
|
||||
##: ? ClassMarker Search2
|
||||
##Search2 == FALSE
|
||||
##: %\\"[[ClassName]] missing response table markers. "
|
||||
##*
|
||||
##--END-- ? ClassMarker [[Search]]
|
||||
@@ -0,0 +1,15 @@
|
||||
##\\ "DEFINE_RESPONSE_TABLE2([[ClassName]], TDialog, TVbxEventHandler)" [[VBXResponseTable]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? VBXResponseTable [[VBXRspSearch]]
|
||||
##VBXRspSearch == FALSE
|
||||
##: \\"DEFINE_RESPONSE_TABLE1([[ClassName]], TDialog)" [[NormalResponseTable]]
|
||||
##: ^BOF
|
||||
##: ? NormalResponseTable Search
|
||||
##(VBXRspSearch == FALSE) && (Search == FALSE)
|
||||
##: %\\"[[ClassName]] missing DEFINE_RESPONSE_TABLE1(...). "
|
||||
##*
|
||||
##(VBXRspSearch == FALSE) && (Search == TRUE)
|
||||
##: ^BOL
|
||||
##: ^DELL
|
||||
[[VBXResponseTable]]
|
||||
##--END-- ? VBXResponseTable [[VBXRspSearch]]
|
||||
@@ -0,0 +1,177 @@
|
||||
<<[H]
|
||||
##QUERY_SNP_AUTO_KIND [[Kind]]
|
||||
##QUERY_SNP_AUTO_NAME [[InternalName]]
|
||||
##QUERY_SNP_AUTO_GETNAME [[GetName]]
|
||||
##QUERY_SNP_AUTO_SETNAME [[SetName]]
|
||||
##QUERY_SNP_AUTO_CPPTYPE [[CPPType]]
|
||||
##QUERY_SNP_AUTO_OLETYPE [[OLEType]]
|
||||
##QUERY_SNP_AUTO_DESCR [[Description]]
|
||||
##QUERY_SNP_AUTO_GETPROPERTY [[GetProperty]]
|
||||
##QUERY_SNP_AUTO_SETPROPERTY [[SetProperty]]
|
||||
##QUERY_SNP_AUTO_CPPARGS [[CPPArguments]]
|
||||
##QUERY_SNP_AUTO_OLEARGS [[OLEArguments]]
|
||||
##QUERY_SNP_AUTO_VALIDATOR [[Validator]]
|
||||
##"" [[SearchStr]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##--BEGIN--Kind == VALUE_DATA
|
||||
## :OLEType == "TAutoBool"
|
||||
## :"TAutoBool" CPPType
|
||||
##*
|
||||
##(OLEType == CPPType) && (OLEType != "TAutoCurrency") && (OLEType != "TAutoDate") && (OLEType != "TAutoBool")
|
||||
## --BEGIN-- StripPtrRef(CPPType, [[StripCPPType]]) [[AnyStripping]]
|
||||
## !AnyStripping
|
||||
## :\\"AUTODATA([[InternalName]], [[InternalName]], TAutoObject<[[StripCPPType]]>, )" SearchStr
|
||||
##*
|
||||
## AnyStripping
|
||||
## :\\"AUTODATA([[InternalName]], [[InternalName]], TAutoObject<[[StripCPPType]]>, )" SearchStr
|
||||
##*
|
||||
## --END-- StripPtrRef(CPPType, [[StripCPPType]]) [[AnyStripping]]
|
||||
##*
|
||||
##(OLEType != CPPType) && (OLEType != "TAutoString")
|
||||
## :\\"AUTODATA([[InternalName]], [[InternalName]], [[CPPType]], )" SearchStr
|
||||
##*
|
||||
##(OLEType == CPPType) && ((OLEType == "TAutoCurrency") || (OLEType == "TAutoDate") || (OLEType == "TAutoBool"))
|
||||
## :\\"AUTODATA([[InternalName]], [[InternalName]], [[CPPType]], )" SearchStr
|
||||
##*
|
||||
##(OLEType == "TAutoString") && (CPPType != "string")
|
||||
## :\\"AUTODATA([[InternalName]], [[InternalName]], TAutoString, )" SearchStr
|
||||
##*
|
||||
##(OLEType == "TAutoString") && (CPPType == "string")
|
||||
## :\\"AUTODATA([[InternalName]], [[InternalName]], string, )" SearchStr
|
||||
##*
|
||||
## :^BOF
|
||||
## :? SearchStr [[Search]]
|
||||
## :Search == TRUE
|
||||
## :^BOL
|
||||
## :^DELL
|
||||
##*
|
||||
##--END--Kind == VALUE_DATA
|
||||
##--BEGIN-- Kind == VALUE_PROPERTY
|
||||
## :OLEType == "TAutoBool"
|
||||
## :"TAutoBool" CPPType
|
||||
##*
|
||||
## :"" [[XlateOLEProp]]
|
||||
## --BEGIN-- "" [[OLEAutoProp]]
|
||||
## :^BOL
|
||||
## :(OLEType == CPPType) && (OLEType != "TAutoCurrency") && (OLEType != "TAutoDate") && (OLEType != "TAutoBool")
|
||||
## --BEGIN-- StripPtrRef(CPPType, [[StripCPPType]]) [[AnyStripping]]
|
||||
## !AnyStripping
|
||||
## :\\"TAutoObject<[[StripCPPType]]>" OLEAutoProp
|
||||
##*
|
||||
## AnyStripping
|
||||
## :\\"TAutoObject<[[StripCPPType]]>" OLEAutoProp
|
||||
##*
|
||||
## --END-- StripPtrRef(CPPType) [[StripCPPType]]
|
||||
##*
|
||||
## :(OLEType != CPPType) && (OLEType != "TAutoString")
|
||||
## :"[[CPPType]]" OLEAutoProp
|
||||
##*
|
||||
## :(OLEType == CPPType) && ((OLEType == "TAutoCurrency") || (OLEType == "TAutoDate") || (OLEType == "TAutoBool"))
|
||||
## :"[[CPPType]]" OLEAutoProp
|
||||
##*
|
||||
## :(OLEType == "TAutoString") && (CPPType != "string")
|
||||
## :"TAutoString" OLEAutoProp
|
||||
##*
|
||||
## :(OLEType == "TAutoString") && (CPPType == "string")
|
||||
## :"string" OLEAutoProp
|
||||
##*
|
||||
## :\\OLEAutoProp XlateOLEProp
|
||||
## :(GetProperty == TRUE) && (SetProperty == TRUE)
|
||||
## :\\"AUTOPROP([[InternalName]], [[GetName]], [[SetName]], [[XlateOLEProp]],)" SearchStr
|
||||
##*
|
||||
## :(GetProperty == TRUE) && (SetProperty == FALSE)
|
||||
## :\\"AUTOPROPRO([[InternalName]], [[GetName]], [[XlateOLEProp]], )" SearchStr
|
||||
##*
|
||||
## :(GetProperty == FALSE) && (SetProperty == TRUE)
|
||||
## :\\"AUTOPROPWO([[InternalName]], [[SetName]], [[XlateOLEProp]], )" SearchStr
|
||||
##*
|
||||
## --END-- "" [[OLEAutoProp]]
|
||||
## :^BOF
|
||||
## :? SearchStr [[Search]]
|
||||
## :Search == TRUE
|
||||
## :^BOL
|
||||
## :^DELL
|
||||
##*
|
||||
##--END-- Kind == VALUE_PROPERTY
|
||||
##"" [[AutoFuncLine]]
|
||||
##--BEGIN-- Kind == VALUE_METHOD
|
||||
## :{MethRip.SNP}
|
||||
## :? AutoFuncLine [[Search]]
|
||||
## :Search == TRUE
|
||||
## :^BOL
|
||||
## :^DELL
|
||||
##*
|
||||
##--END-- Kind == VALUE_METHOD
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##*
|
||||
>>[H]
|
||||
|
||||
|
||||
<<[CPP]
|
||||
##QUERY_SNP_AUTO_KIND [[Kind]]
|
||||
##QUERY_SNP_AUTO_NAME [[InternalName]]
|
||||
##QUERY_SNP_AUTO_GETNAME [[GetName]]
|
||||
##QUERY_SNP_AUTO_SETNAME [[SetName]]
|
||||
##QUERY_SNP_AUTO_CPPTYPE [[CPPType]]
|
||||
##QUERY_SNP_AUTO_OLETYPE [[OLEType]]
|
||||
##QUERY_SNP_AUTO_DESCR [[Description]]
|
||||
##QUERY_SNP_AUTO_GETPROPERTY [[GetProperty]]
|
||||
##QUERY_SNP_AUTO_SETPROPERTY [[SetProperty]]
|
||||
##QUERY_SNP_AUTO_CPPARGS [[CPPArguments]]
|
||||
##QUERY_SNP_AUTO_OLEARGS [[OLEArguments]]
|
||||
##QUERY_SNP_AUTO_VALIDATOR [[Validator]]
|
||||
##"" [[SearchStr]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##--BEGIN--Kind == VALUE_DATA
|
||||
## :(OLEType == CPPType) && (OLEType != "TAutoCurrency") && (OLEType != "TAutoDate")
|
||||
## :StripPtrRef(OLEType, [[StripCPPType]]) [[AnyStripping]]
|
||||
## :StripCPPPType OLEType
|
||||
##*
|
||||
## :\\"EXPOSE_PROPRW([[InternalName]], [[OLEType]], \"[[InternalName]]\"" SearchStr
|
||||
## :? SearchStr [[Search]]
|
||||
## :Search == TRUE
|
||||
## :^BOL
|
||||
## :^DELL
|
||||
##*
|
||||
##--END--Kind == VALUE_DATA
|
||||
##--BEGIN-- Kind == VALUE_PROPERTY
|
||||
## :(OLEType == CPPType) && (OLEType != "TAutoCurrency") && (OLEType != "TAutoDate")
|
||||
## :StripPtrRef(OLEType, [[StripCPPType]]) [[AnyStripping]]
|
||||
## :StripCPPType OLEType
|
||||
##*
|
||||
##(GetProperty == TRUE) && (SetProperty == TRUE)
|
||||
## :\\"EXPOSE_PROPRW([[InternalName]], [[OLEType]], \"[[InternalName]]\"" SearchStr
|
||||
##*
|
||||
##(GetProperty == TRUE) && (SetProperty == FALSE)
|
||||
## :\\"EXPOSE_PROPRO([[InternalName]], [[OLEType]], \"[[InternalName]]\"" SearchStr
|
||||
##*
|
||||
##(GetProperty == FALSE) && (SetProperty == TRUE)
|
||||
## :\\"EXPOSE_PROPWO([[InternalName]], [[OLEType]], \"[[InternalName]]\"" SearchStr
|
||||
##*
|
||||
## :? SearchStr [[Search]]
|
||||
## :Search == TRUE
|
||||
## :^BOL
|
||||
## :^DELL
|
||||
##*
|
||||
##--END-- Kind == VALUE_PROPERTY
|
||||
##--BEGIN-- Kind == VALUE_METHOD
|
||||
## :(OLEType == CPPType) && (OLEType != "TAutoCurrency") && (OLEType != "TAutoDate")
|
||||
## :StripPtrRef(OLEType, [[StripCPPType]]) [[AnyStripping]]
|
||||
## :StripCPPType OLEType
|
||||
##*
|
||||
## :\\"EXPOSE_METHOD([[InternalName]], [[OLEType]], \"[[InternalName]]\"" SearchStr
|
||||
## :? SearchStr [[Search]]
|
||||
## :Search == TRUE
|
||||
## :^BOL
|
||||
## :^DELL
|
||||
##*
|
||||
## :AutoParse(CPPArguments, OLEArguments)
|
||||
##AutoCount() [[Count]]
|
||||
## --FOR-- Index = 1 TO Count
|
||||
## :^DELL
|
||||
## --Next-- Index
|
||||
## :AutoReset()
|
||||
##*
|
||||
##--END-- Kind == VALUE_METHOD
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,54 @@
|
||||
<<[H]
|
||||
##"" [[AutoSMarker]]
|
||||
##"" [[AutoEMarker]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"//{{[[ClassName]]AUTO_TBL_BEGIN}}" AutoSMarker
|
||||
##\\"//{{[[ClassName]]AUTO_TBL_END}}" AutoEMarker
|
||||
##^BOF
|
||||
##? AutoSMarker,AutoEMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: %"Missing class automation markers. "
|
||||
##*
|
||||
## --BEGIN-- QUERY_BASE_NAME [[BaseName]]
|
||||
## --BEGIN-- BaseName == "TApplication"
|
||||
## :InsertText("")
|
||||
[[AutoSMarker]]
|
||||
[[AutoEMarker]]
|
||||
## --END-- BaseName == "TApplication"
|
||||
## --BEGIN-- BaseName != "TApplication"
|
||||
## :InsertText("")
|
||||
## :^DELL
|
||||
## :^-1
|
||||
## :^DELL
|
||||
## --END-- BaseName != "TApplication"
|
||||
## --END-- QUERY_BASE_NAME [[BaseName]]
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[H]
|
||||
|
||||
|
||||
<<[CPP]
|
||||
##"" [[AutoSMarker]]
|
||||
##"" [[AutoEMarker]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"//{{[[ClassName]]SYM_TBL_BEGIN}}" AutoSMarker
|
||||
##\\"//{{[[ClassName]]SYM_TBL_END}}" AutoEMarker
|
||||
##^BOF
|
||||
##? AutoSMarker,AutoEMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: %"Missing automation symbol table markers. "
|
||||
##*
|
||||
##InsertText("")
|
||||
## --BEGIN-- QUERY_BASE_NAME [[BaseName]]
|
||||
## --BEGIN-- BaseName == "TApplication"
|
||||
[[AutoSMarker]]
|
||||
[[AutoEMarker]]
|
||||
## --END-- BaseName == "TApplication"
|
||||
## --BEGIN-- BaseName != "TApplication"
|
||||
## :^DELL
|
||||
## :^-2
|
||||
## :^DELL
|
||||
## :^DELL
|
||||
## --END-- BaseName != "TApplication"
|
||||
## --END-- QUERY_BASE_NAME [[BaseName]]
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,72 @@
|
||||
<<[H]
|
||||
##QUERY_BASE_NAME != "TDialog"
|
||||
##: QUERY_CLASS_NAME [[ClassName]]
|
||||
##: %\\"[[ClassName]] is not derived from TDialog. Instance data not deleted. "
|
||||
##*
|
||||
##"" [[ClassDefLine]]
|
||||
##"" [[ConstructorLine]]
|
||||
##"" [[StructDefLine]]
|
||||
##"" [[IncludeFile]]
|
||||
##FALSE [[Search]]
|
||||
##--BEGIN-- QUERY_BASE_NAME == "TDialog"
|
||||
##{XfrState.SNP}
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"//{{[[ClassName]]XFER_DATA}}" [[XFerMarker]]
|
||||
##^BOF
|
||||
##? XFerMarker Search
|
||||
##Search == FALSE
|
||||
##: %\\"[[ClassName]] XFER_DATA marker missing. "
|
||||
##*
|
||||
##^BOL
|
||||
##StructDefLine != ""
|
||||
##: ?StructDefLine Search
|
||||
##Search == TRUE
|
||||
##: ^BOL
|
||||
##: ^DELL
|
||||
##*
|
||||
##*
|
||||
##\\"//{{[[ClassName]]XFER_DEF}}" [[XFerMarker]]
|
||||
##^BOF
|
||||
##?XFerMarker Search
|
||||
##Search == FALSE
|
||||
##: %\\"[[ClassName]] XFER_DEF marker missing. "
|
||||
##*
|
||||
##^BOL
|
||||
##ClassDefLine != ""
|
||||
##: ? ClassDefLine Search
|
||||
##Search != FALSE
|
||||
##: ^BOL
|
||||
##: ^DELL
|
||||
##*
|
||||
##*
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##--END-- QUERY_BASE_NAME == "TDialog"
|
||||
>>[H]
|
||||
|
||||
|
||||
<<[CPP]
|
||||
##"" [[ClassDefLine]]
|
||||
##"" [[ConstructorLine]]
|
||||
##"" [[StructDefLine]]
|
||||
##"" [[IncludeFile]]
|
||||
##--BEGIN-- QUERY_BASE_NAME == "TDialog"
|
||||
##{XfrState.SNP}
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"//{{[[ClassName]]XFER_USE}}" [[XFerMarker]]
|
||||
##^BOF
|
||||
##? XFerMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: %\\"[[ClassName]] XFER_USE marker missing. "
|
||||
##*
|
||||
##FALSE [[Search]]
|
||||
##ConstructorLine != ""
|
||||
##: ? ConstructorLine Search
|
||||
##Search == TRUE
|
||||
##: ^BOL
|
||||
##: ^DELL
|
||||
##*
|
||||
##*
|
||||
##^^
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##--END-- QUERY_BASE_NAME == "TDialog"
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,27 @@
|
||||
<<[CPP]
|
||||
##QUERY_SNP_FUNC_NAME [[FunctionName]]
|
||||
##QUERY_SNP_MACRO_NAME [[MacroName]]
|
||||
##QUERY_SNP_MACRO_CALLPARAM [[MCallParam]]
|
||||
##QUERY_SNP_RES_CONSTANT [[Constant]]
|
||||
##QUERY_SNP_VBXEVENT [[VBXEvent]]
|
||||
##QUERY_FILE_CPP [[FileName]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##"//{{[[ClassName]]RSP_TBL_BEGIN}}" [[ClassTMarker]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##^BOF
|
||||
##? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: %\\"Unable to locate response table marker in [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
##\\MCallParam [[MacroCallParam]]
|
||||
##\\"[[MacroName]][[MacroCallParam]]," [[ResponseEntry]]
|
||||
##? ResponseEntry [[Search]]
|
||||
##Search == FALSE
|
||||
##: %\\"Unable to locate response table entry in [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
##^DELL
|
||||
##^^
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,50 @@
|
||||
<<[CPP]
|
||||
##@OPT_APPL_DOCVIEW != TRUE
|
||||
##: %"Unable to do any document/view manipulations. Doc/view must be selected when specifying application generation options. "
|
||||
##*
|
||||
##"//{{DOC_VIEW}}" [[DocVMarker]]
|
||||
##"//{{DOC_MANAGER_END}}" [[DocMMarker]]
|
||||
##^BOF
|
||||
##? DocVMarker,DocMMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: %"Missing document/view markers for templates. "
|
||||
##*
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
##{AddOleDV.SNP}
|
||||
##*
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
##{AddDocV.SNP}
|
||||
##*
|
||||
##FALSE [[IncludeSearch]]
|
||||
##OPT_DV_RESET
|
||||
##--FOR-- IncrV = 1 TO @QUERY_DV_COUNT
|
||||
##OPT_DV_NEXT
|
||||
##QUERY_DV_TDOCUMENT [[TDocument]]
|
||||
##\\"[[TDocument]]" [[DocumentType]]
|
||||
##((DocumentType != "TFileDocument") && (DocumentType != "TOleDocument")
|
||||
##: GetIncludeFile(DocumentType) [[DocumentIncludeFile]]
|
||||
##: \\"#include [[DocumentIncludeFile]]" [[IncludeDocument]]
|
||||
##: ^BOF
|
||||
##: ? IncludeDocument IncludeSearch
|
||||
##: IncludeSearch == FALSE
|
||||
##: ^BOF
|
||||
##: ?\\"#include "
|
||||
##: ^BOL
|
||||
##: ^2
|
||||
[[IncludeDocument]]
|
||||
##QUERY_DV_TVIEW [[TView]]
|
||||
##\\"[[TView]]" [[ViewType]]
|
||||
##((ViewType != "TEditView") && (ViewType != "TListView") && (ViewType != "TWindowView") && (ViewType != "TOleView"))
|
||||
##: <<*ViewType QUERY_FILE_H [[ViewIncludeFile]]
|
||||
##: \\"#include \"[[ViewIncludeFile]]\"" [[IncludeView]]
|
||||
##: ^BOF
|
||||
##: ? IncludeView IncludeSearch
|
||||
##: IncludeSearch == FALSE
|
||||
##: ^BOF
|
||||
##: ?\\"#include "
|
||||
##: ^BOL
|
||||
##: ^2
|
||||
[[IncludeView]]
|
||||
##--NEXT-- IncrV
|
||||
##^^
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,32 @@
|
||||
##--BEGIN-- @OPT_APPL_DRAGDROP
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// TFileDrop class Maintains information about a dropped file, its name, where it was dropped,
|
||||
// and whether or not it was in the client area
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
class TFileDrop {
|
||||
public:
|
||||
operator == (const TFileDrop& other) const {return this == &other;}
|
||||
|
||||
char* FileName;
|
||||
TPoint Point;
|
||||
bool InClientArea;
|
||||
|
||||
TFileDrop (char*, TPoint&, bool, TModule*);
|
||||
~TFileDrop ();
|
||||
|
||||
const char* WhoAmI ();
|
||||
private:
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// hidden to prevent accidental copying or assignment
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
TFileDrop (const TFileDrop&);
|
||||
TFileDrop & operator = (const TFileDrop&);
|
||||
};
|
||||
|
||||
typedef TIBagAsVector<TFileDrop> TFileList;
|
||||
typedef TIBagAsVectorIterator<TFileDrop> TFileListIter;
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_DRAGDROP
|
||||
@@ -0,0 +1,124 @@
|
||||
<<[CPP]
|
||||
##QUERY_CLASS_NAME [[ClassName]]
|
||||
##QUERY_BASE_NAME [[BaseClass]]
|
||||
##(BaseClass == "TDocument") || (BaseClass == "TFileDocument")
|
||||
##: %\\"[[ClassName]] does not support a response table. "
|
||||
##*
|
||||
##QUERY_SNP_FUNC_NAME [[FunctionName]]
|
||||
##QUERY_SNP_FUNC_RESULT [[FunctionResult]]
|
||||
##QUERY_SNP_FUNC_DEFPARAM [[FunctionDefParam]]
|
||||
##QUERY_SNP_FUNC_CALLPARAM [[FunctionCallParam]]
|
||||
##QUERY_SNP_MACRO_NAME [[MacroName]]
|
||||
##QUERY_SNP_MACRO_CALLPARAM [[MCallParam]]
|
||||
##QUERY_SNP_RES_CONSTANT [[Constant]]
|
||||
##QUERY_SNP_VBXEVENT [[VBXEvent]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##"//{{[[ClassName]]RSP_TBL_END}}" [[ClassTMarker]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##^BOF
|
||||
##(VBXEvent != "") [[VBXMIXIN]]
|
||||
##--BEGIN-- ? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: {CAddRsp.SNP}
|
||||
##: ^BOF
|
||||
##: ? ClassMarker [[Search]]
|
||||
##*
|
||||
##--END-- ? ClassMarker [[Search]]
|
||||
##^BOL
|
||||
##\\MCallParam [[MacroCallParam]]
|
||||
[[MacroName]][[MacroCallParam]],
|
||||
##\\"[[ClassName]]::[[FunctionName]]" [[FindFunction]]
|
||||
##^BOF
|
||||
##FALSE [[Search]]
|
||||
##0 [[YPosition]]
|
||||
##0 [[YScrollLine]]
|
||||
## --BEGIN-- TRUE
|
||||
## {FindFunc.SNP}
|
||||
## --BEGIN-- Search != 1
|
||||
## :^EOF
|
||||
## :(YPos() + 2) YPosition
|
||||
|
||||
|
||||
[[FunctionResult]] [[ClassName]]::[[FunctionName]] [[FunctionDefParam]]
|
||||
{
|
||||
## --BEGIN-- Constant == ""
|
||||
## --BEGIN-- QUERY_BASE_NAME [[BaseClass]]
|
||||
## --BEGIN-- FunctionResult != "void"
|
||||
[[FunctionResult]] result;
|
||||
|
||||
##((BaseClass != "TApplication") && (BaseClass != "TModule") && (BaseClass != "TView"))
|
||||
result = [[BaseClass]]::[[FunctionName]][[FunctionCallParam]];
|
||||
## --END-- FunctionResult != "void"
|
||||
##FunctionResult == "void"
|
||||
##((BaseClass != "TApplication") && (BaseClass != "TModule") && (BaseClass != "TView"))
|
||||
[[BaseClass]]::[[FunctionName]][[FunctionCallParam]];
|
||||
|
||||
// INSERT>> Your code here.
|
||||
## :YPos() YScrollLine
|
||||
|
||||
##FunctionResult != "void"
|
||||
return result;
|
||||
## --END-- QUERY_BASE_NAME [[BaseClass]]
|
||||
## --END-- Constant == ""
|
||||
## --BEGIN-- Constant != ""
|
||||
// INSERT>> Your code here.
|
||||
## :YPos() YScrollLine
|
||||
|
||||
## --END-- Constant != ""
|
||||
}
|
||||
## --END-- Search != 1
|
||||
##^@YPosition
|
||||
##^SCROLL
|
||||
##YScrollLine != 0
|
||||
## :^@YScrollLine
|
||||
## :^EOL
|
||||
##*
|
||||
##YScrollLine == 0
|
||||
## :^BOL
|
||||
##*
|
||||
##^^
|
||||
## --END-- TRUE
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[CPP]
|
||||
|
||||
|
||||
<<[H]
|
||||
##QUERY_SNP_FUNC_NAME [[FunctionName]]
|
||||
##QUERY_SNP_FUNC_RESULT [[FunctionResult]]
|
||||
##QUERY_SNP_FUNC_DEFPARAM [[FunctionDefParam]]
|
||||
##FALSE [[FunctionFound]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"//{{[[ClassName]]RSP_TBL_BEGIN}}" [[ClassT1Marker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? ClassT1Marker
|
||||
##FALSE [[Search]]
|
||||
##: ^BOL
|
||||
##: \\"[[FunctionResult]] [[FunctionName]]" [[FindFunction]]
|
||||
##: 0 [[YPosition]]
|
||||
## --BEGIN-- TRUE
|
||||
##: {FindFunc.SNP}
|
||||
## --BEGIN-- Search == 1
|
||||
##: ^@YPosition
|
||||
##: ^BOL
|
||||
##: \\"//{{[[ClassName]]RSP_TBL_END}}" [[ClassT2Marker]]
|
||||
##: ? ClassT2Marker FunctionFound
|
||||
## --END-- Search == 1
|
||||
## --END-- TRUE
|
||||
##--END-- ? ClassT1Marker
|
||||
##FunctionFound == TRUE
|
||||
##: Exit()
|
||||
##*
|
||||
##"//{{[[ClassName]]RSP_TBL_END}}" [[ClassTMarker]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: {HAddRsp.SNP}
|
||||
##: ^BOF
|
||||
##: ? ClassMarker [[Search]]
|
||||
##*
|
||||
##--END-- ? ClassMarker [[Search]]
|
||||
##^BOL
|
||||
[[FunctionResult]] [[FunctionName]] [[FunctionDefParam]];
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[H]
|
||||
|
After Width: | Height: | Size: 358 B |
@@ -0,0 +1,27 @@
|
||||
<<[CPP]
|
||||
##QUERY_SNP_FUNC_NAME [[FunctionName]]
|
||||
##QUERY_SNP_FUNC_RESULT [[FunctionResult]]
|
||||
##QUERY_SNP_FUNC_DEFPARAM [[FunctionDefParam]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"[[ClassName]]::[[FunctionName]]" [[FindFunction]]
|
||||
##^BOF
|
||||
##FALSE [[Search]]
|
||||
##0 [[YPosition]]
|
||||
##--BEGIN-- TRUE
|
||||
## {FindFunc.SNP}
|
||||
## --BEGIN-- Search == -1
|
||||
## : ^BOF
|
||||
## : ? FindFunction Search
|
||||
## : YPos() YPosition
|
||||
## --END-- Search == -1
|
||||
## --BEGIN-- Search == 0
|
||||
## : QUERY_FILE_CPP [[FileName]]
|
||||
## : %\\"Unable to locate function [[FunctionName]] implementation in [[FileName]]. "
|
||||
## --END-- Search == 0
|
||||
##--END-- TRUE
|
||||
##^@YPosition
|
||||
##^BOL
|
||||
##^SCROLL
|
||||
##^^
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,64 @@
|
||||
##FALSE DuplicateFunction
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## --BEGIN-- Kind == VALUE_PROPERTY
|
||||
## --BEGIN-- SetProperty == TRUE
|
||||
## :\\"([[CPPType]] property)" [[FunctionDefParam]]
|
||||
## :"void" [[FunctionResult]]
|
||||
## :\\"[[SetName]]" [[FunctionName]]
|
||||
## :\\"[[ClassName]]::[[SetName]]" [[FindFunction]]
|
||||
## :^BOF
|
||||
## FALSE [[Search]]
|
||||
## :0 [[YPosition]]
|
||||
## --BEGIN-- TRUE
|
||||
## :{FindFunc.SNP}
|
||||
## --BEGIN-- Search == 1
|
||||
## :^@YPosition
|
||||
## :^BOL
|
||||
## :^SCROLL
|
||||
## :^^
|
||||
## :TRUE DuplicateFunction
|
||||
## --END-- Search == 1
|
||||
## --END-- TRUE
|
||||
## --END-- SetProperty == TRUE
|
||||
## --BEGIN-- GetProperty == TRUE
|
||||
## :"()" [[FunctionDefParam]]
|
||||
## :\\"[[CPPType]]" [[FunctionResult]]
|
||||
## :\\"[[GetName]]" [[FunctionName]]
|
||||
## :\\"[[ClassName]]::[[GetName]]" [[FindFunction]]
|
||||
## :^BOF
|
||||
## FALSE [[Search]]
|
||||
## :0 [[YPosition]]
|
||||
## --BEGIN-- TRUE
|
||||
## :{FindFunc.SNP}
|
||||
## --BEGIN-- Search == 1
|
||||
## :^@YPosition
|
||||
## :^BOL
|
||||
## :^SCROLL
|
||||
## :^^
|
||||
## :TRUE DuplicateFunction
|
||||
## --END-- Search == 1
|
||||
## --END-- TRUE
|
||||
## --END-- GetProperty == TRUE
|
||||
##*
|
||||
## --END-- Kind == VALUE_PROPERTY
|
||||
## --BEGIN-- Kind == VALUE_METHOD
|
||||
## :\\"[[CPPArguments]]" [[FunctionDefParam]]
|
||||
## :\\"[[CPPType]]" [[FunctionResult]]
|
||||
## :\\"[[InternalName]]" [[FunctionName]]
|
||||
## :\\"[[ClassName]]::[[InternalName]]" [[FindFunction]]
|
||||
## :^BOF
|
||||
## FALSE [[Search]]
|
||||
## :0 [[YPosition]]
|
||||
## --BEGIN-- TRUE
|
||||
## :{FindFunc.SNP}
|
||||
## --BEGIN-- Search == 1
|
||||
## :^@YPosition
|
||||
## :^BOL
|
||||
## :^SCROLL
|
||||
## :^^
|
||||
## :TRUE DuplicateFunction
|
||||
## --END-- Search == 1
|
||||
## --END-- TRUE
|
||||
##*
|
||||
## --END-- Kind == VALUE_METHOD
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,23 @@
|
||||
<<[H]
|
||||
##QUERY_BASE_NAME != "TDialog"
|
||||
##: QUERY_CLASS_NAME [[ClassName]]
|
||||
##: %\\"[[ClassName]] is not derived from TDialog. Instance data not found. "
|
||||
##*
|
||||
##"" [[ClassDefLine]]
|
||||
##"" [[ConstructorLine]]
|
||||
##"" [[StructDefLine]]
|
||||
##"" [[IncludeFile]]
|
||||
##--BEGIN-- QUERY_BASE_NAME == "TDialog"
|
||||
##{XfrState.SNP}
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? \\"//{{[[ClassName]]XFER_DATA}}"
|
||||
## --BEGIN-- ? ClassDefLine
|
||||
##: QUERY_FILE_H [[FileName]]
|
||||
##: %\\"Instance data variable already exists in [[FileName]]" -2
|
||||
## --END-- ? ClassDefLine
|
||||
##--END-- ? \\"//{{[[ClassName]]XFER_DATA}}"
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##--END-- QUERY_BASE_NAME == "TDialog"
|
||||
>>[H]
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
<<[CPP]
|
||||
##@OPT_APPL_DOCVIEW != TRUE
|
||||
##:%"Class Manager shouldn't allow DocView to be touched if not selected when specifying application generation options. "
|
||||
##*
|
||||
##"//{{DOC_VIEW}}" [[DocVMarker]]
|
||||
##^BOF
|
||||
##? DocVMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##:%"Unable to locate Doc/View marker. "
|
||||
##*
|
||||
##^BOL
|
||||
##^SCROLL
|
||||
##^^
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,26 @@
|
||||
##FALSE Search
|
||||
##FALSE [[ExactMatch]]
|
||||
##0 [[FoundOnce]]
|
||||
##--FOR-- SearchItem = 1 TO 100
|
||||
## ? FindFunction Search
|
||||
## --BEGIN-- Search == TRUE
|
||||
## : YPos() YPosition
|
||||
## : 1 FoundOnce
|
||||
## : MatchArguments(\\"[[ClassName]]", \\"[[FunctionResult]]", \\"[[FunctionName]]", \\"[[FunctionDefParam]]") ExactMatch
|
||||
## : ExactMatch == TRUE
|
||||
## : 100 SearchItem
|
||||
##*
|
||||
## : ExactMatch == FALSE
|
||||
## : ^1
|
||||
##*
|
||||
## --END-- Search == TRUE
|
||||
## --BEGIN-- Search == FALSE
|
||||
## : FoundOnce == 0
|
||||
## : 0 Search
|
||||
##*
|
||||
## : FoundOnce != 0
|
||||
## : (-1) Search
|
||||
##*
|
||||
## : 100 SearchItem
|
||||
## --END-- Search == FALSE
|
||||
##--NEXT-- SearchItem
|
||||
|
After Width: | Height: | Size: 358 B |
@@ -0,0 +1,13 @@
|
||||
<<[CPP]
|
||||
##QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"[[ClassName]]::[[ClassName]] (" [[FindClass]]
|
||||
##^BOF
|
||||
##? FindClass [[Search]]
|
||||
##Search == FALSE
|
||||
##: QUERY_FILE_CPP [[FileName]]
|
||||
##: %\\"Unable to locate class constructor in [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
##^SCROLL
|
||||
##^^
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,21 @@
|
||||
<<[CPP]
|
||||
##QUERY_SNP_FUNC_NAME [[FunctionName]]
|
||||
##QUERY_SNP_FUNC_RESULT [[FunctionResult]]
|
||||
##QUERY_SNP_FUNC_DEFPARAM [[FunctionDefParam]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"[[ClassName]]::[[FunctionName]]" [[FindFunction]]
|
||||
##^BOF
|
||||
##FALSE [[Search]]
|
||||
##0 [[YPosition]]
|
||||
## --BEGIN-- TRUE
|
||||
## {FindFunc.SNP}
|
||||
## --BEGIN-- Search == 1
|
||||
## :^BOL
|
||||
## :^SCROLL
|
||||
## :^^
|
||||
## :QUERY_FILE_CPP [[FileName]]
|
||||
## :%\\"Function already exists in [[FileName]]" -2
|
||||
## --END-- Search == 1
|
||||
## --END-- TRUE
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,14 @@
|
||||
<<[H]
|
||||
##QUERY_CLASS_NAME [[ClassName]]
|
||||
##QUERY_BASE_NAME [[BaseName]]
|
||||
##\\"//{{[[BaseName]] = [[ClassName]]}}" [[FindClass]]
|
||||
##^BOF
|
||||
##? FindClass [[Search]]
|
||||
##Search == FALSE
|
||||
##: QUERY_FILE_H [[FileName]]
|
||||
##: %\\"Unable to locate class definition in [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
##^SCROLL
|
||||
##^^
|
||||
>>[H]
|
||||
@@ -0,0 +1,41 @@
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## --BEGIN-- "DECLARE_AUTOCLASS" [[MacroName]]
|
||||
## @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## --BEGIN-- QUERY_BASE_NAME [[BaseName]]
|
||||
## :(BaseName == "TApplication")
|
||||
## :\\"DECLARE_AUTOAGGREGATE" MacroName
|
||||
##*
|
||||
## --END-- QUERY_BASE_NAME [[BaseName]]
|
||||
## "[[MacroName]]([[ClassName]])" [[DeclareMacro]]
|
||||
## ^BOF
|
||||
## ? \\DeclareMacro [[SearchDeclare]]
|
||||
## --BEGIN-- SearchDeclare == FALSE
|
||||
## :"//{{[[ClassName]]}}" [[ClassTMarker]]
|
||||
## :\\ClassTMarker [[ClassMarker]]
|
||||
## :QUERY_FILE_H [[FileName]]
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
## :Search == FALSE
|
||||
## :%\\"Unable to add class automation data table marker to [[FileName]]. "
|
||||
##*
|
||||
## --END-- SearchDeclare == FALSE
|
||||
## --END-- "DECLARE_AUTOCLASS" [[MacroName]]
|
||||
## ^BOL
|
||||
//{{[[ClassName]]AUTO_DATA_BEGIN}}
|
||||
public:
|
||||
//{{[[ClassName]]AUTO_DATA_END}}
|
||||
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##FALSE [[IncludeSearch]]
|
||||
##^BOF
|
||||
##StripPtrRef(CPPType, [[StripCPPType]]) [[AnyStripping]]
|
||||
##<<*StripCPPType QUERY_FILE_H [[IncludeFile]]
|
||||
##IncludeFile != ""
|
||||
## :\\"#include \"[[IncludeFile]]\"" IncludeFile
|
||||
## :^BOF
|
||||
## :? IncludeFile IncludeSearch
|
||||
## :IncludeSearch == FALSE
|
||||
## : ^BOF
|
||||
## : ?\\"#include \""
|
||||
## : ^BOL
|
||||
[[IncludeFile]]
|
||||
@@ -0,0 +1,28 @@
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## --BEGIN-- "DECLARE_AUTOCLASS" [[MacroName]]
|
||||
## @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## --BEGIN-- QUERY_BASE_NAME [[BaseName]]
|
||||
## :(BaseName == "TApplication")
|
||||
## :\\"DECLARE_AUTOAGGREGATE" MacroName
|
||||
##*
|
||||
## --END-- QUERY_BASE_NAME [[BaseName]]
|
||||
## "[[MacroName]]([[ClassName]])" [[DeclareMacro]]
|
||||
## ^BOF
|
||||
## ? \\DeclareMacro [[SearchDeclare]]
|
||||
## --BEGIN-- SearchDeclare == FALSE
|
||||
## :"//{{[[ClassName]]}}" [[ClassTMarker]]
|
||||
## :\\ClassTMarker [[ClassMarker]]
|
||||
## :QUERY_FILE_H [[FileName]]
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
## :Search == FALSE
|
||||
## :%\\"Unable to add class automation method table marker to [[FileName]]. "
|
||||
##*
|
||||
## --END-- SearchDeclare == FALSE
|
||||
## --END-- "DECLARE_AUTOCLASS" [[MacroName]]
|
||||
## ^BOL
|
||||
//{{[[ClassName]]AUTO_METH_BEGIN}}
|
||||
public:
|
||||
//{{[[ClassName]]AUTO_METH_END}}
|
||||
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,28 @@
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## --BEGIN-- "DECLARE_AUTOCLASS" [[MacroName]]
|
||||
## @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## --BEGIN-- QUERY_BASE_NAME [[BaseName]]
|
||||
## :(BaseName == "TApplication")
|
||||
## :\\"DECLARE_AUTOAGGREGATE" MacroName
|
||||
##*
|
||||
## --END-- QUERY_BASE_NAME [[BaseName]]
|
||||
## "[[MacroName]]([[ClassName]])" [[DeclareMacro]]
|
||||
## ^BOF
|
||||
## ? \\DeclareMacro [[SearchDeclare]]
|
||||
## --BEGIN-- SearchDeclare == FALSE
|
||||
## :"//{{[[ClassName]]}}" [[ClassTMarker]]
|
||||
## :\\ClassTMarker [[ClassMarker]]
|
||||
## :QUERY_FILE_H [[FileName]]
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
## :Search == FALSE
|
||||
## :%\\"Unable to add class automation property table marker to [[FileName]]. "
|
||||
##*
|
||||
## --END-- SearchDeclare == FALSE
|
||||
## --END-- "DECLARE_AUTOCLASS" [[MacroName]]
|
||||
## ^BOL
|
||||
//{{[[ClassName]]AUTO_PROP_BEGIN}}
|
||||
public:
|
||||
//{{[[ClassName]]AUTO_PROP_END}}
|
||||
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,29 @@
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
## "DECLARE_RESPONSE_TABLE([[ClassName]])" [[DeclareMacro]]
|
||||
## ^BOF
|
||||
## ? \\DeclareMacro [[SearchDeclare]]
|
||||
## --BEGIN-- SearchDeclare == FALSE
|
||||
## :"//{{[[ClassName]]}}" [[ClassTMarker]]
|
||||
## :\\ClassTMarker [[ClassMarker]]
|
||||
## :QUERY_FILE_H [[FileName]]
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
## :Search == FALSE
|
||||
## :%\\"Unable to add class automation table marker to [[FileName]]. "
|
||||
##*
|
||||
## --END-- SearchDeclare == FALSE
|
||||
## ^BOL
|
||||
## --BEGIN-- "DECLARE_AUTOCLASS" [[DefineMacro]]
|
||||
## @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## --BEGIN-- QUERY_BASE_NAME [[BaseName]]
|
||||
## :(BaseName == "TApplication")
|
||||
## :\\"DECLARE_AUTOAGGREGATE" DefineMacro
|
||||
##*
|
||||
## --END-- QUERY_BASE_NAME [[BaseName]]
|
||||
|
||||
[[DefineMacro]]([[ClassName]])
|
||||
//{{[[ClassName]]AUTO_TBL_BEGIN}}
|
||||
//{{[[ClassName]]AUTO_TBL_END}}
|
||||
|
||||
## --END-- "DECLARE_AUTOCLASS" [[DefineMacro]]
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,15 @@
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"//{{[[ClassName]]}}" [[ClassMarker]]
|
||||
##QUERY_FILE_H [[FileName]]
|
||||
##^BOF
|
||||
##? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: %\\"Unable to add instance data structure for class [[ClassName]] to [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
|
||||
//{{[[ClassName]]XFER_DEF}}
|
||||
protected:
|
||||
|
||||
//{{[[ClassName]]XFER_DEF_END}}
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,45 @@
|
||||
##^BOF
|
||||
##\\" [[InternalName]];" [[DataSearch]]
|
||||
##--BEGIN-- ? DataSearch == FALSE
|
||||
## "//{{[[ClassName]]AUTO_DATA_END}}" [[ClassTMarker]]
|
||||
## \\ClassTMarker [[ClassMarker]]
|
||||
## :^BOF
|
||||
## --BEGIN-- ? ClassMarker [[Search]]
|
||||
## :Search == FALSE
|
||||
## :{HAddADat.SNP}
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
##*
|
||||
## --END-- ? ClassMarker [[Search]]
|
||||
## ^BOL
|
||||
[[CPPType]] [[InternalName]];
|
||||
##--END-- ? DataSearch == FALSE
|
||||
##"//{{[[ClassName]]AUTO_TBL_END}}" [[ClassTMarker]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? ClassMarker [[Search]]
|
||||
## Search == FALSE
|
||||
## :{HAddAuto.SNP}
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
##*
|
||||
##--END-- ? ClassMarker [[Search]]
|
||||
##^BOL
|
||||
##OLEType == "TAutoBool"
|
||||
## :"TAutoBool" CPPType
|
||||
##*
|
||||
##(OLEType == CPPType) && (OLEType != "TAutoCurrency") && (OLEType != "TAutoDate") && (OLEType != "TAutoBool")
|
||||
##--BEGIN-- StripPtrRef(CPPType, [[StripCPPType]]) [[AnyStripping]]
|
||||
## !AnyStripping
|
||||
AUTODATA([[InternalName]], [[InternalName]], TAutoObject<[[StripCPPType]]>, )
|
||||
## AnyStripping
|
||||
AUTODATA([[InternalName]], [[InternalName]], TAutoObject<[[StripCPPType]]>, )
|
||||
##--END-- StripPtrRef(CPPType) [[StripCPPType]]
|
||||
##(OLEType != CPPType) && (OLEType != "TAutoString") && (OLEType != "TAutoBool")
|
||||
AUTODATA([[InternalName]], [[InternalName]], [[CPPType]], )
|
||||
##(OLEType == CPPType) && ((OLEType == "TAutoCurrency") || (OLEType == "TAutoDate") || (OLEType == "TAutoBool"))
|
||||
AUTODATA([[InternalName]], [[InternalName]], [[CPPType]], )
|
||||
##(OLEType == "TAutoString") && (CPPType != "string")
|
||||
AUTODATA([[InternalName]], [[InternalName]], TAutoString, )
|
||||
##(OLEType == "TAutoString") && (CPPType == "string")
|
||||
AUTODATA([[InternalName]], [[InternalName]], string, )
|
||||
@@ -0,0 +1,63 @@
|
||||
## :(Index - 1) Idx
|
||||
## :AutoCPP(Idx) Type
|
||||
## :\\", [[Type]]" GeneralArg
|
||||
## --BEGIN-- AutoCPP(Idx) == AutoOLE(Idx)
|
||||
## --BEGIN-- StripPtrRef(Type, [[StripType]]) [[AnyStripping]]
|
||||
## :!AnyStripping
|
||||
## :\\", TAutoObject<[[StripType]]>" GeneralArg
|
||||
##*
|
||||
## :AnyStripping
|
||||
## :\\", TAutoObject<[[StripType]]>" GeneralArg
|
||||
##*
|
||||
## --END-- StripPtrRef(Type, [[StripType]]) [[AnyStripping]]
|
||||
## --END-- AutoCPP(Idx) == AutoOLE(Idx)
|
||||
## --BEGIN-- AutoOLE(Idx) == "TAutoString"
|
||||
## :Type == "string"
|
||||
## :", string" GeneralArg
|
||||
##*
|
||||
## :Type != "string"
|
||||
## :", TAutoString" GeneralArg
|
||||
##*
|
||||
## --END-- AutoOLE(Idx) == "TAutoString"
|
||||
## --BEGIN-- AutoOLE(Idx) == "TAutoDate"
|
||||
## :", TAutoDate" GeneralArg
|
||||
##*
|
||||
## --END-- AutoOLE(Idx) == "TAutoDate"
|
||||
## --BEGIN-- AutoOLE(Idx) == "TAutoCurrency"
|
||||
## :", TAutoCurrency" GeneralArg
|
||||
##*
|
||||
## --END-- AutoOLE(Idx) == "TAutoCurrency"
|
||||
## --BEGIN-- AutoOLE(Idx) == "TAutoBool"
|
||||
## :", TAutoBool" GeneralArg
|
||||
##*
|
||||
## --END-- AutoOLE(Idx) == "TAutoBool"
|
||||
## :Index == 1
|
||||
## :GeneralArg Arg1
|
||||
##*
|
||||
## :Index == 2
|
||||
## :GeneralArg Arg2
|
||||
##*
|
||||
## :Index == 3
|
||||
## :GeneralArg Arg3
|
||||
##*
|
||||
## :Index == 4
|
||||
## :GeneralArg Arg4
|
||||
##*
|
||||
## :Index == 5
|
||||
## :GeneralArg Arg5
|
||||
##*
|
||||
## :Index == 6
|
||||
## :GeneralArg Arg6
|
||||
##*
|
||||
## :Index == 7
|
||||
## :GeneralArg Arg7
|
||||
##*
|
||||
## :Index == 8
|
||||
## :GeneralArg Arg8
|
||||
##*
|
||||
## :Index == 9
|
||||
## :GeneralArg Arg9
|
||||
##*
|
||||
## :Index == 10
|
||||
## :GeneralArg Arg10
|
||||
##*
|
||||
@@ -0,0 +1,32 @@
|
||||
##--BEGIN-- GetGlobal() == FALSE
|
||||
## "//{{[[ClassName]]AUTO_METH_END}}" [[ClassTMarker]]
|
||||
## \\ClassTMarker [[ClassMarker]]
|
||||
## :^BOF
|
||||
## --BEGIN-- ? ClassMarker [[Search]]
|
||||
## :Search == FALSE
|
||||
## :{HAddAMet.SNP}
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
##*
|
||||
## --END-- ? ClassMarker [[Search]]
|
||||
## :^BOL
|
||||
[[CPPType]] [[InternalName]] [[CPPArguments]];
|
||||
##--END-- GetGlobal() == FALSE
|
||||
##"//{{[[ClassName]]AUTO_TBL_END}}" [[ClassTMarker]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: {HAddAuto.SNP}
|
||||
##: ^BOF
|
||||
##: ? ClassMarker [[Search]]
|
||||
##*
|
||||
##--END-- ? ClassMarker [[Search]]
|
||||
##^BOL
|
||||
##YPos() [[InsertLine]]
|
||||
##--BEGIN-- "" [[AutoFuncLine]]
|
||||
##{MethRip.SNP}
|
||||
##: ^@InsertLine
|
||||
[[AutoFuncLine]]
|
||||
##--END-- "" [[AutoFuncLine]]
|
||||
##*
|
||||
@@ -0,0 +1,78 @@
|
||||
##--BEGIN-- GetGlobal() == FALSE
|
||||
## "//{{[[ClassName]]AUTO_PROP_END}}" [[ClassTMarker]]
|
||||
## \\ClassTMarker [[ClassMarker]]
|
||||
## :^BOF
|
||||
## --BEGIN-- ? ClassMarker [[Search]]
|
||||
## :Search == FALSE
|
||||
## :{HAddAPro.SNP}
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
##*
|
||||
## --END-- ? ClassMarker [[Search]]
|
||||
## :^BOL
|
||||
## :GetProperty == TRUE
|
||||
[[CPPType]] [[GetName]] ();
|
||||
## :SetProperty == TRUE
|
||||
void [[SetName]] ([[CPPType]]);
|
||||
##--END-- GetGlobal() == FALSE
|
||||
##"//{{[[ClassName]]AUTO_TBL_END}}" [[ClassTMarker]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
## :{HAddAuto.SNP}
|
||||
## :^BOF
|
||||
## :? ClassMarker [[Search]]
|
||||
##*
|
||||
##--END-- ? ClassMarker [[Search]]
|
||||
##"" [[XlateOLEProp]]
|
||||
##"" [[Comment]]
|
||||
##--BEGIN-- "" [[OLEAutoProp]]
|
||||
## OLEType == "TAutoBool"
|
||||
## :"TAutoBool" CPPType
|
||||
##*
|
||||
## ^BOL
|
||||
## (OLEType == CPPType) && (OLEType != "TAutoCurrency") && (OLEType != "TAutoDate") && (OLEType != "TAutoBool")
|
||||
## --BEGIN-- StripPtrRef(CPPType, [[StripCPPType]]) [[AnyStripping]]
|
||||
## !AnyStripping
|
||||
## :\\"TAutoObject<[[CPPType]]>" OLEAutoProp
|
||||
## :" // Change to TAutoObjectDelete if owned by automation." Comment
|
||||
##*
|
||||
## AnyStripping
|
||||
## :\\"TAutoObject<[[StripCPPType]]>" OLEAutoProp
|
||||
## :" // Change to TAutoObjectDelete if owned by automation." Comment
|
||||
##*
|
||||
## --END-- StripPtrRef(CPPType, [[StripCPPType]]) [[AnyStripping]]
|
||||
## (OLEType != CPPType) && (OLEType != "TAutoString")
|
||||
## :"[[CPPType]]" OLEAutoProp
|
||||
##*
|
||||
## (OLEType == CPPType) && ((OLEType == "TAutoCurrency") || (OLEType == "TAutoDate") || (OLEType == "TAutoBool"))
|
||||
## :"[[CPPType]]" OLEAutoProp
|
||||
##*
|
||||
## (OLEType == "TAutoString") && (CPPType != "string")
|
||||
## :"TAutoString" OLEAutoProp
|
||||
##*
|
||||
## (OLEType == "TAutoString") && (CPPType == "string")
|
||||
## :"string" OLEAutoProp
|
||||
##*
|
||||
## \\OLEAutoProp XlateOLEProp
|
||||
## (GetProperty == TRUE) && (SetProperty == TRUE)
|
||||
AUTOPROP([[InternalName]], [[GetName]], [[SetName]], [[XlateOLEProp]],)[[Comment]]
|
||||
## (GetProperty == TRUE) && (SetProperty == FALSE)
|
||||
AUTOPROPRO([[InternalName]], [[GetName]], [[XlateOLEProp]], )[[Comment]]
|
||||
## (GetProperty == FALSE) && (SetProperty == TRUE)
|
||||
AUTOPROPWO([[InternalName]], [[SetName]], [[XlateOLEProp]], )[[Comment]]
|
||||
##--END-- "" [[OLEAutoProp]]
|
||||
##FALSE [[IncludeSearch]]
|
||||
##^BOF
|
||||
##StripPtrRef(CPPType, [[StripCPPType]]) [[AnyStripping]]
|
||||
##<<*StripCPPType QUERY_FILE_H [[IncludeFile]]
|
||||
##IncludeFile != ""
|
||||
## :\\"#include \"[[IncludeFile]]\"" IncludeFile
|
||||
## :^BOF
|
||||
## :? IncludeFile IncludeSearch
|
||||
## :IncludeSearch == FALSE
|
||||
## : ^BOF
|
||||
## : ?\\"#include \""
|
||||
## : ^BOL
|
||||
[[IncludeFile]]
|
||||
@@ -0,0 +1,18 @@
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##"//{{[[ClassName]]}}" [[ClassTMarker]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##QUERY_FILE_H [[FileName]]
|
||||
##^BOF
|
||||
##? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##:%\\"Unable to add response table marker to [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
|
||||
//{{[[ClassName]]RSP_TBL_BEGIN}}
|
||||
protected:
|
||||
//{{[[ClassName]]RSP_TBL_END}}
|
||||
DECLARE_RESPONSE_TABLE([[ClassName]]);
|
||||
##^-1
|
||||
##^BOL
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,16 @@
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##\\"class [[ClassName]]" [[ClassMarker]]
|
||||
##QUERY_FILE_H [[FileName]]
|
||||
##^BOF
|
||||
##? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: %\\"Unable to add instance data structure for class [[ClassName]] to [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
struct [[ClassName]]Xfer {
|
||||
//{{[[ClassName]]XFER_DATA}}
|
||||
//{{[[ClassName]]XFER_DATA_END}}
|
||||
};
|
||||
|
||||
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,15 @@
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##"//{{[[ClassName]]}}" [[ClassTMarker]]
|
||||
##QUERY_FILE_H [[FileName]]
|
||||
##\\ClassTMarker [[ClassMarker]]
|
||||
##^BOF
|
||||
##? ClassMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##:%\\"Unable to add virtual function marker to [[FileName]]. "
|
||||
##*
|
||||
##^BOL
|
||||
|
||||
//{{[[ClassName]]VIRTUAL_BEGIN}}
|
||||
public:
|
||||
//{{[[ClassName]]VIRTUAL_END}}
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,17 @@
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##"//{{[[ClassName]]RSP_TBL_BEGIN}}" [[RspTMarker]]
|
||||
##\\RspTMarker [[ResponseMarker]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? ResponseMarker [[Search]]
|
||||
##Search == FALSE
|
||||
##: {HAddVir2.SNP}
|
||||
##*
|
||||
##--BEGIN-- Search == TRUE
|
||||
##^BOL
|
||||
//{{[[ClassName]]VIRTUAL_BEGIN}}
|
||||
public:
|
||||
//{{[[ClassName]]VIRTUAL_END}}
|
||||
|
||||
##--END-- ? ResponseMarker [[Search]]
|
||||
##--END-- Search == TRUE
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
@@ -0,0 +1,12 @@
|
||||
##\\"class [[ClassName]] : " [[ClassDef]]
|
||||
##^BOF
|
||||
##? ClassDef [[Search1]]
|
||||
##Search1 == FALSE
|
||||
##: %\\"[[ClassName]] class definition missing. "
|
||||
##*
|
||||
##Search1 == TRUE
|
||||
##YPos() [[ClassDefLine]]
|
||||
##? " {" [[Search2]]
|
||||
##((Search2 == TRUE) && (ClassDefLine == YPos()))
|
||||
##: InsertText(", TAutoBase")
|
||||
##*
|
||||
|
After Width: | Height: | Size: 358 B |
|
After Width: | Height: | Size: 326 B |
|
After Width: | Height: | Size: 178 B |
@@ -0,0 +1,7 @@
|
||||
##--BEGIN-- TRUE
|
||||
|
||||
|
||||
##QUERY_FILENAME_H [[HFileName]]
|
||||
##StripDiacritic(HFileName) [[Filename]]
|
||||
#endif // __[[Filename]]_h sentry.
|
||||
##--END-- TRUE
|
||||
@@ -0,0 +1,32 @@
|
||||
##--BEGIN-- TRUE
|
||||
##QUERY_FILENAME_H [[HFileName]]
|
||||
##--BEGIN-- StripDiacritic(HFileName) [[Filename]]
|
||||
#if !defined(__[[Filename]]_h) // Sentry, use file only if it's not already included.
|
||||
#define __[[Filename]]_h
|
||||
##--END-- StripDiacritic(HFileName) [[Filename]]
|
||||
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
/* Project [[Project]]
|
||||
##@QUERY_PRJ_COMPANY [[CompanyName]] 2
|
||||
##@QUERY_PRJ_COPYRIGHT [[Copyright]] 2
|
||||
##\\Copyright Copyright 2
|
||||
[[CompanyName]]
|
||||
[[Copyright]]
|
||||
|
||||
##@QUERY_TARGET_NAME [[Target]]
|
||||
SUBSYSTEM: [[Target]] Application
|
||||
##QUERY_FILE_H [[Filename]]
|
||||
FILE: [[Filename]]
|
||||
##@QUERY_PRJ_USER [[Author]]
|
||||
AUTHOR: [[Author]]
|
||||
|
||||
|
||||
OVERVIEW
|
||||
========
|
||||
##QUERY_CLASS_NAME [[ClassName]]
|
||||
##QUERY_BASE_NAME [[BaseName]]
|
||||
Class definition for [[ClassName]] ([[BaseName]]).
|
||||
*/
|
||||
|
||||
|
||||
##--END-- TRUE
|
||||
@@ -0,0 +1,88 @@
|
||||
##{hheader.snp}
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
##@QUERY_APPL_OLE_AUTO 2
|
||||
#include <ocf\automacr.h>
|
||||
|
||||
##@OPT_APPL_DRAGDROP 2
|
||||
#include <classlib\bags.h>
|
||||
|
||||
##<<TMDIClient QUERY_FILE_H [[FileName]]
|
||||
#include "[[FileName]]"
|
||||
|
||||
##QUERY_FILENAME_CPP [[FileName]]
|
||||
#include "[[FileName]].rh" // Definition of all resources.
|
||||
|
||||
|
||||
##{dragdrop.owl}
|
||||
//{{TApplication = [[TApplication]]}}
|
||||
class [[TApplication]] : public TApplication {
|
||||
private:
|
||||
##@OPT_APPL_HELP 3
|
||||
bool HelpState; // Has the help engine been used.
|
||||
bool ContextHelp; // SHIFT-F1 state (context sensitive HELP)
|
||||
HCURSOR HelpCursor; // Context sensitive help cursor
|
||||
|
||||
##--BEGIN-- @OPT_APPL_TOOLBAR || @OPT_APPL_DRAGDROP
|
||||
##@OPT_APPL_TOOLBAR
|
||||
void SetupSpeedBar (TDecoratedMDIFrame *frame);
|
||||
##@OPT_APPL_DRAGDROP
|
||||
void AddFiles (TFileList* files);
|
||||
|
||||
##--END-- @OPT_APPL_TOOLBAR || @OPT_APPL_DRAGDROP
|
||||
public:
|
||||
[[TApplication]] ();
|
||||
virtual ~[[TApplication]] ();
|
||||
|
||||
##!@OPT_APPL_DOCVIEW 2
|
||||
TOpenSaveDialog::TData FileData; // Data to control open/saveas standard dialog.
|
||||
|
||||
##@QUERY_APPL_OLE_AUTO 2
|
||||
TAppDescriptor *Factory; // Automation descriptor.
|
||||
|
||||
##<<TMDIClient QUERY_CLASS_NAME [[TMDIClient]]
|
||||
[[TMDIClient]] *mdiClient;
|
||||
|
||||
##@OPT_APPL_PRINTING 4
|
||||
// Public data members used by the print menu commands and Paint routine in MDIChild.
|
||||
TPrinter *Printer; // Printer support.
|
||||
int Printing; // Printing in progress.
|
||||
|
||||
//{{[[TApplication]]VIRTUAL_BEGIN}}
|
||||
public:
|
||||
virtual void InitMainWindow();
|
||||
##:DBVirtual(\\"[[TApplication]]", "InitMainWindow")
|
||||
##--BEGIN-- @OPT_APPL_DRAGDROP
|
||||
virtual void InitInstance();
|
||||
##:DBVirtual(\\"[[TApplication]]", "InitInstance")
|
||||
##--END-- @OPT_APPL_DRAGDROP
|
||||
##@OPT_APPL_HELP 2
|
||||
##:DBVirtual(\\"[[TApplication]]", "CanClose")
|
||||
virtual bool CanClose ();
|
||||
##:DBVirtual(\\"[[TApplication]]", "ProcessAppMsg")
|
||||
virtual bool ProcessAppMsg (MSG& msg);
|
||||
//{{[[TApplication]]VIRTUAL_END}}
|
||||
|
||||
//{{[[TApplication]]RSP_TBL_BEGIN}}
|
||||
protected:
|
||||
##@OPT_APPL_HELP 2
|
||||
void CmHelpContents ();
|
||||
void CmHelpUsing ();
|
||||
void CmHelpAbout ();
|
||||
##@OPT_APPL_DRAGDROP
|
||||
void EvDropFiles (TDropInfo drop);
|
||||
##@OPT_APPL_PRINTING
|
||||
void EvWinIniChange (char far* section);
|
||||
//{{[[TApplication]]RSP_TBL_END}}
|
||||
##--BEGIN-- @QUERY_APPL_OLE_AUTO
|
||||
|
||||
DECLARE_AUTOCLASS([[TApplication]])
|
||||
AUTODETACH
|
||||
//{{[[TApplication]]AUTO_TBL_BEGIN}}
|
||||
//{{[[TApplication]]AUTO_TBL_END}}
|
||||
|
||||
##--END-- @QUERY_APPL_OLE_AUTO
|
||||
DECLARE_RESPONSE_TABLE([[TApplication]]);
|
||||
}; //{{[[TApplication]]}}
|
||||
##{hfooter.snp}
|
||||
@@ -0,0 +1,97 @@
|
||||
##{hheader.snp}
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
##@QUERY_APPL_OLE_AUTO 2
|
||||
#include <ocf\automacr.h>
|
||||
|
||||
##@OPT_APPL_DRAGDROP 2
|
||||
#include <classlib\bags.h>
|
||||
|
||||
##<<TMDIClient QUERY_FILE_H [[FileName]]
|
||||
#include "[[FileName]]"
|
||||
|
||||
##QUERY_FILENAME_CPP [[FileName]]
|
||||
#include "[[FileName]].rh" // Definition of all resources.
|
||||
|
||||
|
||||
##{dragdrop.owl}
|
||||
//{{TApplication = [[TApplication]]}}
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
class [[TApplication]] : public TApplication {
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
class [[TApplication]] : public TApplication, public TOcModule {
|
||||
private:
|
||||
##@OPT_APPL_HELP 4
|
||||
bool HelpState; // Has the help engine been used.
|
||||
bool ContextHelp; // SHIFT-F1 state (context sensitive HELP).
|
||||
HCURSOR HelpCursor; // Context sensitive help cursor.
|
||||
|
||||
##--BEGIN-- @OPT_APPL_TOOLBAR || @OPT_APPL_DRAGDROP
|
||||
##--BEGIN-- @OPT_APPL_TOOLBAR
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
void SetupSpeedBar (TOleMDIFrame *frame);
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
void SetupSpeedBar (TDecoratedMDIFrame *frame);
|
||||
##--END-- @OPT_APPL_TOOLBAR
|
||||
##@OPT_APPL_DRAGDROP
|
||||
void AddFiles (TFileList* files);
|
||||
|
||||
##--END-- @OPT_APPL_TOOLBAR || @OPT_APPL_DRAGDROP
|
||||
public:
|
||||
[[TApplication]] ();
|
||||
virtual ~[[TApplication]] ();
|
||||
|
||||
##@OPT_APPL_TOOLBAR 2
|
||||
void CreateGadgets (TControlBar *cb, bool server = false);
|
||||
|
||||
##<<TMDIClient QUERY_CLASS_NAME [[TMDIClient]]
|
||||
[[TMDIClient]] *mdiClient;
|
||||
|
||||
##@OPT_APPL_PRINTING 4
|
||||
// Public data members used by the print menu commands and Paint routine in MDIChild.
|
||||
TPrinter *Printer; // Printer support.
|
||||
int Printing; // Printing in progress.
|
||||
|
||||
//{{[[TApplication]]VIRTUAL_BEGIN}}
|
||||
public:
|
||||
virtual void InitMainWindow ();
|
||||
##:DBVirtual(\\"[[TApplication]]", "InitMainWindow")
|
||||
##--BEGIN-- @OPT_APPL_DRAGDROP
|
||||
virtual void InitInstance ();
|
||||
##:DBVirtual(\\"[[TApplication]]", "InitInstance")
|
||||
##--END-- @OPT_APPL_DRAGDROP
|
||||
##@OPT_APPL_HELP 2
|
||||
##:DBVirtual(\\"[[TApplication]]", "CanClose")
|
||||
virtual bool CanClose ();
|
||||
##:DBVirtual(\\"[[TApplication]]", "ProcessAppMsg")
|
||||
virtual bool ProcessAppMsg (MSG& msg);
|
||||
//{{[[TApplication]]VIRTUAL_END}}
|
||||
|
||||
//{{[[TApplication]]RSP_TBL_BEGIN}}
|
||||
protected:
|
||||
void EvNewView (TView& view);
|
||||
void EvCloseView (TView& view);
|
||||
void CmHelpAbout ();
|
||||
##@OPT_APPL_HELP 2
|
||||
void CmHelpContents ();
|
||||
void CmHelpUsing ();
|
||||
##@OPT_APPL_DRAGDROP
|
||||
void EvDropFiles (TDropInfo drop);
|
||||
##@OPT_APPL_PRINTING
|
||||
void EvWinIniChange (char far* section);
|
||||
//{{[[TApplication]]RSP_TBL_END}}
|
||||
##--BEGIN-- @QUERY_APPL_OLE_AUTO
|
||||
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
DECLARE_AUTOAGGREGATE([[TApplication]])
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
DECLARE_AUTOCLASS([[TApplication]])
|
||||
AUTODETACH
|
||||
//{{[[TApplication]]AUTO_TBL_BEGIN}}
|
||||
//{{[[TApplication]]AUTO_TBL_END}}
|
||||
|
||||
##--END-- @QUERY_APPL_OLE_AUTO
|
||||
DECLARE_RESPONSE_TABLE([[TApplication]]);
|
||||
}; //{{[[TApplication]]}}
|
||||
##{hfooter.snp}
|
||||
@@ -0,0 +1,59 @@
|
||||
##0 [[StartLine]]
|
||||
##0 [[EndLine]]
|
||||
##0 [[GetProp]]
|
||||
##0 [[SetProp]]
|
||||
##--BEGIN-- TRUE
|
||||
## :^1
|
||||
## :YPos() StartLine
|
||||
## --BEGIN-- ? \\"//{{[[ClassName]]AUTO_TBL_END}}"
|
||||
## :^-1
|
||||
## :YPos() EndLine
|
||||
## :^@StartLine
|
||||
## :^BOL
|
||||
## :0 [[CurrAutoLine]]
|
||||
## --FOR-- AutoEntry = 1 TO ((EndLine - StartLine) + 1)
|
||||
## :ScanAutoEntry([[InternalName]], [[Kind]], [[GetExtName]], [[SetExtName]], [[GetProp]], [[SetProp]])
|
||||
## --BEGIN-- TRUE
|
||||
## :YPos() CurrAutoLine
|
||||
## :^BOF
|
||||
## :Kind == 1
|
||||
## :? \\"//{{[[ClassName]]AUTO_DATA_BEGIN}}"
|
||||
## :? \\" [[GetExtName]]"
|
||||
## :^BOL
|
||||
## :ScanDataEntry([[CPPType]])
|
||||
## :"" [[CPPArgs]]
|
||||
## :AddAutomation(ClassName, Kind, InternalName, GetExtName, SetExtName, CPPType, GetProp, SetProp, CPPArgs)
|
||||
##*
|
||||
## :Kind == 2
|
||||
## :? \\"//{{[[ClassName]]AUTO_PROP_BEGIN}}"
|
||||
## --BEGIN-- GetProp == TRUE
|
||||
## :? \\" [[GetExtName]] "
|
||||
## :^BOL
|
||||
## :ScanGetProp(GetExtName, [[CPPType]])
|
||||
## :"" [[CPPArgs]]
|
||||
## :AddAutomation(ClassName, Kind, InternalName, GetExtName, SetExtName, CPPType, GetProp, SetProp, CPPArgs)
|
||||
##*
|
||||
## --END-- GetProp == TRUE
|
||||
## --BEGIN-- ((SetProp == TRUE) && (GetProp == FALSE))
|
||||
## :? \\" [[SetExtName]] "
|
||||
## :^BOL
|
||||
## :ScanSetProp([[CPPType]])
|
||||
## :"" [[CPPArgs]]
|
||||
## :AddAutomation(ClassName, Kind, InternalName, GetExtName, SetExtName, CPPType, GetProp, SetProp, CPPArgs)
|
||||
##*
|
||||
## --END-- ((SetProp == TRUE) && (GetProp == FALSE))
|
||||
##*
|
||||
## :Kind == 3
|
||||
## :? \\"//{{[[ClassName]]AUTO_METH_BEGIN}}"
|
||||
## :? \\" [[GetExtName]] "
|
||||
## :^BOL
|
||||
## :ScanMethEntry(GetExtName, [[CPPType]], [[CPPArgs]])
|
||||
## :AddAutomation(ClassName, Kind, InternalName, GetExtName, SetExtName, CPPType, GetProp, SetProp, CPPArgs)
|
||||
##*
|
||||
## --END-- TRUE
|
||||
## :^@CurrAutoLine
|
||||
##*
|
||||
## :^1
|
||||
## --NEXT-- AutoEntry
|
||||
## --END-- ? \\"//{{[[ClassName]]AUTO_TBL_END}}"
|
||||
##--END-- TRUE
|
||||
@@ -0,0 +1,126 @@
|
||||
##{hheader.snp}
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
##@QUERY_APPL_OLE_AUTO 2
|
||||
#include <ocf\automacr.h>
|
||||
|
||||
##@OPT_APPL_DRAGDROP 2
|
||||
#include <classlib\bags.h>
|
||||
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
#include "apxprint.h"
|
||||
#include "apxprev.h"
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
|
||||
##QUERY_FILENAME_CPP [[FileName]]
|
||||
#include "[[FileName]].rh" // Definition of all resources.
|
||||
|
||||
|
||||
##{dragdrop.owl}
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// FrameWindow must be derived to override Paint for Preview and Print.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//{{TDecoratedFrame = SDIDecFrame}}
|
||||
class SDIDecFrame : public TDecoratedFrame {
|
||||
public:
|
||||
SDIDecFrame (TWindow *parent, const char far *title, TWindow *clientWnd, bool trackMenuSelection = false, TModule *module = 0);
|
||||
~SDIDecFrame ();
|
||||
##--BEGIN-- ((@QUERY_APPL_MODEL == VALUE_DIALOG) && (@OPT_APPL_TOOLBAR || @OPT_APPL_STATUSBAR))
|
||||
|
||||
//{{[[TApplication]]VIRTUAL_BEGIN}}
|
||||
public:
|
||||
virtual void SetupWindow ();
|
||||
##:DBVirtual("SDIDecFrame", "SetupWindow")
|
||||
//{{[[TApplication]]VIRTUAL_END}}
|
||||
##--END-- ((@QUERY_APPL_MODEL == VALUE_DIALOG) && (@OPT_APPL_TOOLBAR || @OPT_APPL_STATUSBAR))
|
||||
}; //{{SDIDecFrame}}
|
||||
|
||||
|
||||
//{{TApplication = [[TApplication]]}}
|
||||
class [[TApplication]] : public TApplication {
|
||||
private:
|
||||
##--BEGIN-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
##QUERY_WIND_CLIENT [[ClientClass]]
|
||||
##<<*ClientClass QUERY_BASE_NAME [[BaseClient]]
|
||||
##BaseClient == "TListBox" 2
|
||||
|
||||
void LoadTextFile (); // Read a file for ListBox client.
|
||||
##--END-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
##@OPT_APPL_HELP 3
|
||||
bool HelpState; // Has the help engine been used.
|
||||
bool ContextHelp; // SHIFT-F1 state (context sensitive HELP)
|
||||
HCURSOR HelpCursor; // Context sensitive help cursor
|
||||
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##--BEGIN-- @OPT_APPL_TOOLBAR || @OPT_APPL_DRAGDROP
|
||||
##@OPT_APPL_TOOLBAR
|
||||
void SetupSpeedBar (TDecoratedFrame *frame);
|
||||
##@OPT_APPL_DRAGDROP
|
||||
void AddFile (const char *fileName);
|
||||
|
||||
##--END-- @OPT_APPL_TOOLBAR || @OPT_APPL_DRAGDROP
|
||||
public:
|
||||
[[TApplication]] ();
|
||||
virtual ~[[TApplication]] ();
|
||||
|
||||
##@QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
TOpenSaveDialog::TData FileData; // Data to control open/saveas standard dialog.
|
||||
##@QUERY_APPL_OLE_AUTO 2
|
||||
TAppDescriptor *Factory; // Automation descriptor.
|
||||
|
||||
##@QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
void OpenFile (const char *fileName = 0);
|
||||
##@OPT_APPL_PRINTING 4
|
||||
// Public data members used by the print menu commands and Paint routine in MDIChild.
|
||||
TPrinter *Printer; // Printer support.
|
||||
int Printing; // Printing in progress.
|
||||
|
||||
//{{[[TApplication]]VIRTUAL_BEGIN}}
|
||||
public:
|
||||
virtual void InitMainWindow();
|
||||
##:DBVirtual(\\"[[TApplication]]", "InitMainWindow")
|
||||
##--BEGIN-- @OPT_APPL_DRAGDROP
|
||||
virtual void InitInstance();
|
||||
##:DBVirtual(\\"[[TApplication]]", "InitInstance")
|
||||
##--END-- @OPT_APPL_DRAGDROP
|
||||
##@OPT_APPL_HELP 2
|
||||
##:DBVirtual(\\"[[TApplication]]", "CanClose")
|
||||
virtual bool CanClose ();
|
||||
##:DBVirtual(\\"[[TApplication]]", "ProcessAppMsg")
|
||||
virtual bool ProcessAppMsg (MSG& msg);
|
||||
//{{[[TApplication]]VIRTUAL_END}}
|
||||
|
||||
//{{[[TApplication]]RSP_TBL_BEGIN}}
|
||||
protected:
|
||||
##--BEGIN-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
void CmFileNew ();
|
||||
void CmFileOpen ();
|
||||
##@OPT_APPL_PRINTING 4
|
||||
void CmFilePrint ();
|
||||
void CmFilePrintSetup ();
|
||||
void CmFilePrintPreview ();
|
||||
void CmPrintEnable (TCommandEnabler &tce);
|
||||
##--END-- @QUERY_APPL_MODEL != VALUE_DIALOG
|
||||
##@OPT_APPL_HELP 2
|
||||
void CmHelpContents ();
|
||||
void CmHelpUsing ();
|
||||
void CmHelpAbout ();
|
||||
##@OPT_APPL_DRAGDROP
|
||||
void EvDropFiles (TDropInfo drop);
|
||||
##@OPT_APPL_PRINTING
|
||||
void EvWinIniChange (char far* section);
|
||||
//{{[[TApplication]]RSP_TBL_END}}
|
||||
##--BEGIN-- @QUERY_APPL_OLE_AUTO
|
||||
|
||||
DECLARE_AUTOCLASS([[TApplication]])
|
||||
AUTODETACH
|
||||
//{{[[TApplication]]AUTO_TBL_BEGIN}}
|
||||
//{{[[TApplication]]AUTO_TBL_END}}
|
||||
|
||||
##--END-- @QUERY_APPL_OLE_AUTO
|
||||
DECLARE_RESPONSE_TABLE([[TApplication]]);
|
||||
}; //{{[[TApplication]]}}
|
||||
##{hfooter.snp}
|
||||
@@ -0,0 +1,126 @@
|
||||
##{hheader.snp}
|
||||
#include <owl\owlpch.h>
|
||||
#pragma hdrstop
|
||||
|
||||
##@QUERY_APPL_OLE_AUTO 2
|
||||
#include <ocf\automacr.h>
|
||||
|
||||
##@OPT_APPL_DRAGDROP 2
|
||||
#include <classlib\bags.h>
|
||||
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
|
||||
#include "apxprint.h"
|
||||
#include "apxprev.h"
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
|
||||
##QUERY_FILENAME_CPP [[FileName]]
|
||||
#include "[[FileName]].rh" // Definition of all resources.
|
||||
|
||||
|
||||
##{dragdrop.owl}
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
//
|
||||
// FrameWindow must be derived to override Paint for Preview and Print.
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE 2
|
||||
//{{TDecoratedFrame = SDIDecFrame}}
|
||||
class SDIDecFrame : public TDecoratedFrame {
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE 2
|
||||
//{{TOleFrame = SDIDecFrame}}
|
||||
class SDIDecFrame : public TOleFrame {
|
||||
public:
|
||||
SDIDecFrame (TWindow *parent, const char far *title, TWindow *clientWnd, bool trackMenuSelection = false, TModule *module = 0);
|
||||
~SDIDecFrame ();
|
||||
}; //{{SDIDecFrame}}
|
||||
|
||||
|
||||
//{{TApplication = [[TApplication]]}}
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
class [[TApplication]] : public TApplication {
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
class [[TApplication]] : public TApplication, public TOcModule {
|
||||
private:
|
||||
##@OPT_APPL_HELP 3
|
||||
bool HelpState; // Has the help engine been used.
|
||||
bool ContextHelp; // SHIFT-F1 state (context sensitive HELP)
|
||||
HCURSOR HelpCursor; // Context sensitive help cursor
|
||||
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##--BEGIN-- @OPT_APPL_TOOLBAR || @OPT_APPL_DRAGDROP
|
||||
private:
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##--BEGIN-- @OPT_APPL_TOOLBAR
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
void SetupSpeedBar (TOleFrame *frame);
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
void SetupSpeedBar (TDecoratedFrame *frame);
|
||||
##--END-- @OPT_APPL_TOOLBAR
|
||||
##@OPT_APPL_DRAGDROP
|
||||
void AddFile (const char *fileName);
|
||||
|
||||
##--END-- @OPT_APPL_TOOLBAR || @OPT_APPL_DRAGDROP
|
||||
public:
|
||||
[[TApplication]] ();
|
||||
virtual ~[[TApplication]] ();
|
||||
|
||||
##@OPT_APPL_TOOLBAR 2
|
||||
void CreateGadgets (TControlBar *cb, bool server = false);
|
||||
|
||||
##@OPT_APPL_PRINTING 4
|
||||
// Public data members used by the print menu commands and Paint routine in MDIChild.
|
||||
TPrinter *Printer; // Printer support.
|
||||
int Printing; // Printing in progress.
|
||||
|
||||
//{{[[TApplication]]VIRTUAL_BEGIN}}
|
||||
public:
|
||||
virtual void InitMainWindow ();
|
||||
##:DBVirtual(\\"[[TApplication]]", "InitMainWindow")
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_DIALOG
|
||||
virtual void InitInstance ();
|
||||
##:DBVirtual(\\"[[TApplication]]", "InitInstance")
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_DIALOG
|
||||
##--BEGIN-- @OPT_APPL_DRAGDROP
|
||||
virtual void InitInstance ();
|
||||
##:DBVirtual(\\"[[TApplication]]", "InitInstance")
|
||||
##--END-- @OPT_APPL_DRAGDROP
|
||||
##@OPT_APPL_HELP 2
|
||||
##:DBVirtual(\\"[[TApplication]]", "CanClose")
|
||||
virtual bool CanClose ();
|
||||
##:DBVirtual(\\"[[TApplication]]", "ProcessAppMsg")
|
||||
virtual bool ProcessAppMsg (MSG& msg);
|
||||
//{{[[TApplication]]VIRTUAL_END}}
|
||||
|
||||
//{{[[TApplication]]RSP_TBL_BEGIN}}
|
||||
protected:
|
||||
void EvNewView (TView& view);
|
||||
void EvCloseView (TView& view);
|
||||
void CmHelpAbout ();
|
||||
##@OPT_APPL_HELP 2
|
||||
void CmHelpContents ();
|
||||
void CmHelpUsing ();
|
||||
##@OPT_APPL_PRINTING 4
|
||||
void CmFilePrint ();
|
||||
void CmFilePrintSetup ();
|
||||
void CmFilePrintPreview ();
|
||||
void CmPrintEnable (TCommandEnabler &tce);
|
||||
##@OPT_APPL_DRAGDROP
|
||||
void EvDropFiles (TDropInfo drop);
|
||||
##@OPT_APPL_PRINTING
|
||||
void EvWinIniChange (char far* section);
|
||||
//{{[[TApplication]]RSP_TBL_END}}
|
||||
##--BEGIN-- @QUERY_APPL_OLE_AUTO
|
||||
|
||||
##@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
DECLARE_AUTOAGGREGATE([[TApplication]])
|
||||
##@QUERY_APPL_OLE == VALUE_NOOLE
|
||||
DECLARE_AUTOCLASS([[TApplication]])
|
||||
AUTODETACH
|
||||
//{{[[TApplication]]AUTO_TBL_BEGIN}}
|
||||
//{{[[TApplication]]AUTO_TBL_END}}
|
||||
|
||||
##--END-- @QUERY_APPL_OLE_AUTO
|
||||
DECLARE_RESPONSE_TABLE([[TApplication]]);
|
||||
}; //{{[[TApplication]]}}
|
||||
##{hfooter.snp}
|
||||
@@ -0,0 +1,9 @@
|
||||
##\\"class [[ClassName]] : public TDialog {" ClassDef
|
||||
##: ? ClassDef [[Search2]]
|
||||
##Search2 == FALSE
|
||||
##: %\\"[[ClassName]] missing class derived from TDialog. "
|
||||
##*
|
||||
##Search2 == TRUE
|
||||
##^BOL
|
||||
##^DELL
|
||||
class [[ClassName]] : public TDialog, public TVbxEventHandler {
|
||||
@@ -0,0 +1,120 @@
|
||||
{\rtf1\ansi \deff0\deflang1024{\fonttbl{\f0\froman Times New Roman;}{\f1\froman Symbol;}{\f2\fswiss Arial;}{\f3\froman Tms Rmn;}{\f4\fswiss Helv;}{\f5\fswiss Helvetica;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;
|
||||
\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue127;\red0\green127\blue127;\red0\green127\blue0;\red127\green0\blue127;\red127\green0\blue0;
|
||||
\red127\green127\blue0;\red127\green127\blue127;\red192\green192\blue192;}{\stylesheet{\s244 \f3\fs16\up6\lang1033 \sbasedon0\snext0 footnote reference;}{\s245 \f3\fs20\lang1033 \sbasedon0\snext245 footnote text;}{\s246\li720 \i\f3\fs20\lang1033
|
||||
\sbasedon0\snext255 heading 9;}{\s247\li720 \i\f3\fs20\lang1033 \sbasedon0\snext255 heading 8;}{\s248\li720 \i\f3\fs20\lang1033 \sbasedon0\snext255 heading 7;}{\s249\li720 \f3\fs20\ul\lang1033 \sbasedon0\snext255 heading 6;}{\s250\li720
|
||||
\b\f3\fs20\lang1033 \sbasedon0\snext255 heading 5;}{\s251\li360 \f3\ul\lang1033 \sbasedon0\snext255 heading 4;}{\s252\li360 \b\f3\lang1033 \sbasedon0\snext255 heading 3;}{\s253\sb120 \b\f4\lang1033 \sbasedon0\snext0 heading 2;}{\s254\sb240
|
||||
\b\f4\ul\lang1033 \sbasedon0\snext0 heading 1;}{\s255\li720 \f3\fs20\lang1033 \sbasedon0\snext255 Normal Indent;}{\f3\fs20\lang1033 \snext0 Normal;}{\s2\fi-240\li480\sb80\tx480 \f5\lang1033 \sbasedon0\snext2 nscba;}{\s3\fi-240\li240\sa20 \f5\lang1033
|
||||
\sbasedon0\snext3 j;}{\s4\li480\sa20 \f5\lang1033 \sbasedon0\snext4 ij;}{\s5\sb80\sa20 \f5\lang1033 \sbasedon0\snext5 btb;}{\s6\fi-240\li2400\sb20\sa20 \f5\fs20\lang1033 \sbasedon0\snext6 ctcb;}{\s7\fi-240\li480\sa40\tx480 \f5\lang1033
|
||||
\sbasedon0\snext7 ns;}{\s8\sa120 \f5\fs28\lang1033 \sbasedon0\snext8 TT;}{\s9\fi-240\li2400\sa20 \f5\lang1033 \sbasedon0\snext9 crtj;}{\s10\fi-240\li480\tx480 \f5\lang1033 \sbasedon0\snext10 nsca;}{\s11\sa20 \f5\lang1033 \sbasedon0\snext11 bt;}{
|
||||
\s12\li240\sb120\sa40 \f5\lang1033 \sbasedon0\snext12 Hf;}{\s13\li240\sb120\sa40 \f5\lang1033 \sbasedon0\snext13 Hs;}{\s14\li480\sb120\sa40 \f5\lang1033 \sbasedon0\snext14 RT;}{\s15\fi-2160\li2160\sb240\sa80\tx2160 \f5\lang1033 \sbasedon0\snext15 c;}{
|
||||
\s16\li2160\sa20 \f5\lang1033 \sbasedon0\snext16 ct;}{\s17\li240\sa20 \f5\lang1033 \sbasedon0\snext17 it;}{\s18\li480 \f5\fs20\lang1033 \sbasedon0\snext18 nsct;}{\s19\fi-160\li400\sb80\sa40 \f5\lang1033 \sbasedon0\snext19 nscb;}{
|
||||
\s20\fi-2640\li2880\sb120\sa40\brdrb\brdrs\brdrw15 \brdrbtw\brdrs\brdrw15 \tx2880 \f5\lang1033 \sbasedon0\snext20 HC2;}{\s21\fi-2640\li2880\sb120\sa20\tx2880 \f5\lang1033 \sbasedon0\snext21 C2;}{\s22\fi-240\li2400\sa20 \f5\fs20\lang1033
|
||||
##@QUERY_PRJ_USER [[Author]]
|
||||
\sbasedon0\snext22 ctc;}{\s23\li2160\sb160 \f5\lang1033 \sbasedon0\snext23 crt;}{\s24\li480\sb20\sa40 \f5\lang1033 \sbasedon0\snext24 or;}}{\info{\author [[Author]]}{\creatim\yr1991\mo09\dy21}{\version1}{\edmins58}{\nofpages0}{\nofwords65536}
|
||||
{\nofchars65536}{\vern16433}}\paperw12240\paperh15840\margl1800\margr1800\margt1440\margb1440\gutter0 \widowctrl\ftnbj \sectd \linex0\endnhere \pard\plain \sl240 \f3\fs20\lang1033 {\f4\fs16\up6 #{\footnote \pard\plain \s245 \f3\fs20\lang1033 {
|
||||
\f5\fs16\up6 #}{\f5 Keyboard_topic}}}{\f4 }{\f4\fs16\up6 ${\footnote \pard\plain \s245 \f3\fs20\lang1033 {\f5\fs16\up6 $}{\f5 Windows Keys}}}{\f4 }{\f4\fs16\up6 K{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\f5\fs16\up6 K}{\f5 keys;keyboard}}}{
|
||||
\f4 }{\b\f4 Windows Keys}{\b\f4
|
||||
\par }\pard\plain \s3\fi-240\li240\sb100\sa20 \f5\lang1033 {\strike\f4\fs20 Cursor Movement Keys}{\v\f4\fs20 cmk_key_pm}{\f4\fs20
|
||||
\par }\pard \s3\fi-240\li240\sa20 {\strike\f4\fs20 Dialog Box Keys}{\v\f4\fs20 dbk_key_pm}{\f4\fs20
|
||||
\par }{\strike\f4\fs20 Editing Keys}{\v\f4\fs20 ek_key_pm}{\f4\fs20
|
||||
\par }{\strike\f4\fs20 Help Keys}{\v\f4\fs20 hk_key_pm}{\f4\fs20
|
||||
\par }{\strike\f4\fs20 Menu Keys}{\v\f4\fs20 mk_key_pm}{\f4\fs20
|
||||
\par }{\strike\f4\fs20 System Keys}{\v\f4\fs20 sk_key_pm}{\f4\fs20
|
||||
\par }{\strike\f4\fs20 Text Selection Keys}{\v\f4\fs20 tsk_key_pm}{\f4\fs20
|
||||
\par }{\strike\f4\fs20 Window Keys}{\v\f4\fs20 wk_key_pm}{\f4\fs20
|
||||
\par }\pard\plain \s8\sa120 \f5\fs28\lang1033 {\b\f4\fs20 \page }{\f4\fs20\up6 #{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 #} cmk_key_pm}}{\f4\fs20 }{\f4\fs20\up6 ${\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 $}
|
||||
Cursor Movement Keys}}{\f4\fs20 }{\f4\fs20\up6 +{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 +} pro:0010}}{\f4\fs20 }{\f4\fs20\up6 K{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 K} keys, cursor movement;cursor movement keys}}{
|
||||
\f4\fs20 }{\b\f4\fs20 Cursor Movement Keys}{\f4\fs20
|
||||
\par }\pard\plain \s20\fi-3620\li3860\sb120\sa40\brdrb\brdrs\brdrw15 \brdrbtw\brdrs\brdrw15 \tx3860 \f5\lang1033 {\b\f4\fs20 Key(s)}{\b\f4\fs20 \tab }{\b\f4\fs20 Function}{\f4\fs20
|
||||
\par }\pard\plain \s21\fi-3620\li3860\sb120\sa20\tx3860 \f5\lang1033 {\f4\fs20 Arrow key}{\f4\fs20 \tab }{\f4\fs20 Moves the cursor left, right, up, or down in a field.}{\f4\fs20
|
||||
\par }{\f4\fs20 End or Ctrl+Right Arrow}{\f4\fs20 \tab }{\f4\fs20 Moves to the end of a field.}{\f4\fs20
|
||||
\par }{\f4\fs20 Home or Ctrl+Left Arrow}{\f4\fs20 \tab }{\f4\fs20 Moves to the beginning of a field.}{\f4\fs20
|
||||
\par }{\f4\fs20 Pape Up or Page Down}{\f4\fs20 \tab }{\f4\fs20 Moves up or down in a field, one screen at a time.}{\f4\fs20
|
||||
\par }\pard\plain \s8\sa120 \f5\fs28\lang1033 {\b\f4\fs20 \page }{\f4\fs20\up6 #{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 #} dbk_key_pm}}{\f4\fs20 }{\f4\fs20\up6 ${\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 $} Dialog Box Keys}}{
|
||||
\f4\fs20 }{\f4\fs20\up6 +{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 +} pro:0020}}{\f4\fs20 }{\f4\fs20\up6 K{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 K} keys, dialog box;dialog box keys}}{\f4\fs20 }{\b\f4\fs20
|
||||
Dialog Box Keys}{\f4\fs20
|
||||
\par }\pard\plain \s20\fi-2640\li2880\sb120\sa40\brdrb\brdrs\brdrw15 \brdrbtw\brdrs\brdrw15 \tx2880 \f5\lang1033 {\b\f4\fs20 Key(s)}{\b\f4\fs20 \tab }{\b\f4\fs20 Function}{\f4\fs20
|
||||
\par }\pard\plain \s21\fi-2640\li2880\sb120\sa20\tx2880 \f5\lang1033 {\f4\fs20 Tab}{\f4\fs20 \tab }{\f4\fs20 Moves from field to field (left to right and top to bottom).}{\f4\fs20
|
||||
\par }{\f4\fs20 Shift+Tab}{\f4\fs20 \tab }{\f4\fs20 Moves from field to field in reverse order.}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+letter}{\f4\fs20 \tab }{\f4\fs20 Moves to the option or group whose underlined letter matches the one you type.}{\f4\fs20
|
||||
\par }{\f4\fs20 Arrow key}{\f4\fs20 \tab }{\f4\fs20 Moves from option to option within a group of options.}{\f4\fs20
|
||||
\par }{\f4\fs20 Enter}{\f4\fs20 \tab }{\f4\fs20 Executes a command button.}{\f4\fs20
|
||||
\par }\pard \s21\fi-2640\li2880\sb40\sa20\tx2880 {\f4\fs20 \tab }{\f4\fs20 Or, chooses the selected item in a list box and executes the command.}{\f4\fs20
|
||||
\par }\pard \s21\fi-2640\li2880\sb120\sa20\tx2880 {\f4\fs20 Esc}{\f4\fs20 \tab }{\f4\fs20 Closes a dialog box}{\f4\fs20 without completing the command. (Same as Cancel)}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+Down Arrow}{\f4\fs20 \tab }{\f4\fs20 Opens a drop-down list box.}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+Up or Down Arrow}{\f4\fs20 \tab }{\f4\fs20 Selects item in a drop-down list box.}{\f4\fs20
|
||||
\par }{\f4\fs20 Spacebar}{\f4\fs20 \tab }{\f4\fs20 Cancels a selection in a list box.}{\f4\fs20
|
||||
\par }\pard \s21\fi-2640\li2880\sb40\sa20\tx2880 {\f4\fs20 \tab }{\f4\fs20 Selects or clears a check box.}{\f4\fs20
|
||||
\par }\pard \s21\fi-2640\li2880\sb120\sa20\tx2880 {\f4\fs20 Ctrl+Slash}{\f4\fs20 \tab }{\f4\fs20 Selects all the items in a list box.}{\f4\fs20
|
||||
\par }{\f4\fs20 Ctrl+Backslash}{\f4\fs20 \tab }{\f4\fs20 Cancels all selections except the current selection.}{\f4\fs20
|
||||
\par }{\f4\fs20 Shift+ Arrow key}{\f4\fs20 \tab }{\f4\fs20 Extends selection in a text box.}{\f4\fs20
|
||||
\par }{\f4\fs20 Shift+ Home}{\f4\fs20 \tab }{\f4\fs20 Extends selection to first character in a text box.}{\f4\fs20
|
||||
\par }{\f4\fs20 Shift+ End}{\f4\fs20 \tab }{\f4\fs20 Extends selection to last character in a text box}{\f4\fs20
|
||||
\par }\pard\plain \s8\sa120 \f5\fs28\lang1033 {\b\f4\fs20 \page }{\f4\fs20\up6 #{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 #} ek_key_pm}}{\f4\fs20 }{\f4\fs20\up6 ${\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 $} Editing Keys}}{
|
||||
\f4\fs20 }{\f4\fs20\up6 +{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 +} pro:0030}}{\f4\fs20 }{\f4\fs20\up6 K{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 K} keys, editing;editing keys}}{\f4\fs20 }{\b\f4\fs20 Editing Keys}{
|
||||
\f4\fs20
|
||||
\par }\pard\plain \s20\fi-2640\li2880\sb120\sa40\brdrb\brdrs\brdrw15 \brdrbtw\brdrs\brdrw15 \tx2880 \f5\lang1033 {\b\f4\fs20 Key(s)}{\b\f4\fs20 \tab }{\b\f4\fs20 Function}{\f4\fs20
|
||||
\par }\pard\plain \s21\fi-2640\li2880\sb120\sa20\tx2880 \f5\lang1033 {\f4\fs20 Backspace}{\f4\fs20 \tab }{\f4\fs20 Deletes the character to the left of the cursor.}{\f4\fs20
|
||||
\par }{\f4\fs20 \tab }{\f4\fs20 Or, deletes selected text.}{\f4\fs20
|
||||
\par }{\f4\fs20 Delete}{\f4\fs20 \tab }{\f4\fs20 Deletes the character to the right of the cursor.}{\f4\fs20
|
||||
\par }{\f4\fs20 \tab }{\f4\fs20 Or, deletes selected text.}{\f4\fs20
|
||||
\par }\pard\plain \s8\sa120 \f5\fs28\lang1033 {\f4\fs20 \page }{\f4\fs20\up6 #{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 #} hk_key_pm}}{\f4\fs20 }{\f4\fs20\up6 ${\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 $} Help Keys}}{\f4\fs20
|
||||
}{\f4\fs20\up6 +{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 +} pro:0040}}{\f4\fs20 }{\f4\fs20\up6 K{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 K} keys, help;help}}{\f4\fs20 }{\b\f4\fs20 Help Keys}{\f4\fs20
|
||||
\par }\pard\plain \s20\fi-2640\li2880\sb120\sa40\brdrb\brdrs\brdrw15 \brdrbtw\brdrs\brdrw15 \tx2880 \f5\lang1033 {\b\f4\fs20 Key(s)}{\b\f4\fs20 \tab }{\b\f4\fs20 Function}{\f4\fs20
|
||||
\par }\pard\plain \s21\fi-2640\li2880\sb120\sa20\tx2880 \f5\lang1033 {\f4\fs20 F1}{\f4\fs20 \tab }{\f4\fs20 Gets Help and displays the Help Index for the a}{\f4\fs20
|
||||
pplication. If the Help window is already open, pressing F1 displays the "Using Windows Help" topics.}{\f4\fs20
|
||||
\par }{\f4\fs20 \tab }{\f4\fs20 In some Windows applications, pressing F1 displays a Help topic on the selected command, dialog box option, or system message.}{\f4\fs20
|
||||
\par }{\f4\fs20 Shift+F1}{\f4\fs20 \tab }{\f4\fs20 Changes the pointer to }{\f4\fs20 \{}{\f4\fs20 bmc helpicon.bmp}{\f4\fs20 \}}{\f4\fs20
|
||||
so you can get Help on a specific command, screen region, or key. You can then choose a command, click the screen region, or press a key or key combination you want to know more about.}{\f4\fs20
|
||||
\par }{\f4\fs20 \tab }{\f4\fs20 (This feature is not available in all Wind}{\f4\fs20 ows applications.)}{\f4\fs20
|
||||
\par }\pard\plain \s8\sa120 \f5\fs28\lang1033 {\b\f4\fs20 \page }{\f4\fs20\up6 #{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 #} mk_key_pm}}{\f4\fs20 }{\f4\fs20\up6 ${\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 $} Menu Keys}}{
|
||||
\f4\fs20 }{\f4\fs20\up6 +{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 +} pro:0050}}{\f4\fs20 }{\f4\fs20\up6 K{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 K} keys, menu;menu keys}}{\f4\fs20 }{\b\f4\fs20 Menu Keys}{\f4\fs20
|
||||
|
||||
\par }\pard\plain \s20\fi-2640\li2880\sb120\sa40\brdrb\brdrs\brdrw15 \brdrbtw\brdrs\brdrw15 \tx2880 \f5\lang1033 {\b\f4\fs20 Key(s)}{\b\f4\fs20 \tab }{\b\f4\fs20 Function}{\f4\fs20
|
||||
\par }\pard\plain \s21\fi-2640\li2880\sb120\sa20\tx2880 \f5\lang1033 {\f4\fs20 Alt}{\f4\fs20 \tab }{\f4\fs20 Selects the first menu on the menu bar.}{\f4\fs20
|
||||
\par }{\f4\fs20 Letter key}{\f4\fs20 \tab }{\f4\fs20 Chooses the menu, or menu item, whose underlined letter matches the one you type, when a menu has focus.}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+Letter key}{\f4\fs20 \tab }{\f4\fs20 Pulls down the menu whose underlined letter matches the one you type.}{\f4\fs20
|
||||
\par }{\f4\fs20 Left or Right Arrow}{\f4\fs20 \tab }{\f4\fs20 Moves among menus of the main menu bar.}{\f4\fs20
|
||||
\par }{\f4\fs20 Up or Down Arrow}{\f4\fs20 \tab }{\f4\fs20 Moves among menu items within a drop-down menu.}{\f4\fs20
|
||||
\par }{\f4\fs20 Enter}{\f4\fs20 \tab }{\f4\fs20 Chooses the selected menu item.}{\f4\fs20
|
||||
\par }\pard\plain \s8\sa120 \f5\fs28\lang1033 {\b\f4\fs20 \page }{\f4\fs20\up6 #{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 #} sk_key_pm}}{\f4\fs20 }{\f4\fs20\up6 ${\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 $} System Keys}}{
|
||||
\f4\fs20 }{\f4\fs20\up6 +{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 +} pro:0060}}{\f4\fs20 }{\f4\fs20\up6 K{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 K} keys, system;system keys}}{\f4\fs20 }{\b\f4\fs20 System Keys}{
|
||||
\f4\fs20
|
||||
\par }\pard\plain \s5\sb80\sa20 \f5\lang1033 {\f4\fs20 The following keys can be used from any window, regardless of the application you are using.}{\f4\fs20
|
||||
\par }\pard\plain \s20\fi-2640\li2880\sb120\sa40\brdrb\brdrs\brdrw15 \brdrbtw\brdrs\brdrw15 \tx2880 \f5\lang1033 {\b\f4\fs20 Key(s)}{\b\f4\fs20 \tab }{\b\f4\fs20 Function}{\f4\fs20
|
||||
\par }\pard\plain \s21\fi-2640\li2880\sb120\sa20\tx2880 \f5\lang1033 {\f4\fs20 Ctrl+Esc}{\f4\fs20 \tab }{\f4\fs20 Switches to the Task List.}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+Esc}{\f4\fs20 \tab }{\f4\fs20 Switches to the next application window or minimized icon, including full-screen programs.}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+Tab}{\f4\fs20 \tab }{\f4\fs20 Switches to the next application window, restoring applications that are running as icons.}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+PrtSc}{\f4\fs20 \tab }{\f4\fs20 Copies the entire screen to Clipboard.}{\f4\fs20
|
||||
\par }{\f4\fs20 Ctrl+F4}{\f4\fs20 \tab }{\f4\fs20 Closes the active window.}{\f4\fs20
|
||||
\par }{\f4\fs20 F1}{\f4\fs20 \tab }{\f4\fs20 Gets Help and displays the Help Index for the application. (See }{\strike\f4\fs20 Help Keys}{\v\f4\fs20 hk_key_pm}{\f4\fs20 )}{\f4\fs20
|
||||
\par }\pard\plain \s8\sa120 \f5\fs28\lang1033 {\b\f4\fs20 \page }{\f4\fs20\up6 #{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 #} tsk_key_pm}}{\f4\fs20 }{\f4\fs20\up6 ${\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 $} Text Selection Keys
|
||||
}}{\f4\fs20 }{\f4\fs20\up6 +{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 +} pro:0070}}{\f4\fs20 }{\f4\fs20\up6 K{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 K} keys, text selection;text selection keys}}{\f4\fs20 }{\b\f4\fs20
|
||||
Text Selection Keys}{\f4\fs20
|
||||
\par }\pard\plain \s20\fi-4340\li4580\sb120\sa40\brdrb\brdrs\brdrw15 \brdrbtw\brdrs\brdrw15 \tx4580 \f5\lang1033 {\b\f4\fs20 Key(s)}{\b\f4\fs20 \tab }{\b\f4\fs20 Function}{\f4\fs20
|
||||
\par }\pard\plain \s21\fi-4340\li4580\sb120\sa20\tx4580 \f5\lang1033 {\f4\fs20 Shift+Left or Right Arrow}{\f4\fs20 \tab }{\f4\fs20 Selects text one character at a time to the left or right.}{\f4\fs20
|
||||
\par }{\f4\fs20 Shift+Down or Up}{\f4\fs20 \tab }{\f4\fs20 Selects one line of text up or down.}{\f4\fs20
|
||||
\par }{\f4\fs20 Shift+End}{\f4\fs20 \tab }{\f4\fs20 Selects text to the end of the line.}{\f4\fs20
|
||||
\par }{\f4\fs20 Shift+Home}{\f4\fs20 \tab }{\f4\fs20 Selects text to the beginning of the line.}{\f4\fs20
|
||||
\par }{\f4\fs20 Shift+Page Down}{\f4\fs20 \tab }{\f4\fs20 Selects text down one window.}{\f4\fs20
|
||||
\par }{\f4\fs20 \tab }{\f4\fs20 Or, cancels the selection if the next window is already selected.}{\f4\fs20
|
||||
\par }{\f4\fs20 Shift+Page Up}{\f4\fs20 \tab }{\f4\fs20 Selects text up one window.}{\f4\fs20
|
||||
\par }{\f4\fs20 \tab }{\f4\fs20 Or, cancels the selection if the previous window is already selected.}{\f4\fs20
|
||||
\par }{\f4\fs20 Ctrl+Shift+Left or Right Arrow}{\f4\fs20 \tab }{\f4\fs20 Selects text to the next or previous word.}{\f4\fs20
|
||||
\par }{\f4\fs20 Ctrl+Shift+Up or Down Arrow}{\f4\fs20 \tab }{\f4\fs20 Selects text to the beginning (Up Arrow) or end (Down Arrow) of the paragraph.}{\f4\fs20
|
||||
\par }{\f4\fs20 Ctrl+Shift+End}{\f4\fs20 \tab }{\f4\fs20 Selects text to the end of the document.}{\f4\fs20
|
||||
\par }{\f4\fs20 Ctrl+Shift+Home}{\f4\fs20 \tab }{\f4\fs20 Selects text to the beginning of the document.}{\f4\fs20
|
||||
\par }\pard\plain \s8\sa120 \f5\fs28\lang1033 {\b\f4\fs20 \page }{\f4\fs20\up6 #{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 #} wk_key_pm}}{\f4\fs20 }{\f4\fs20\up6 ${\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 $} Window Keys}}{
|
||||
\f4\fs20 }{\f4\fs20\up6 +{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 +} pro:0080}}{\f4\fs20 }{\f4\fs20\up6 K{\footnote \pard\plain \s245 \f3\fs20\lang1033 {\fs18\up6 K} keys, window;window keys}}{\f4\fs20 }{\b\f4\fs20 Window Keys}{
|
||||
\f4\fs20
|
||||
\par }\pard\plain \s20\fi-2640\li2880\sb120\sa40\brdrb\brdrs\brdrw15 \brdrbtw\brdrs\brdrw15 \tx2880 \f5\lang1033 {\b\f4\fs20 Key(s)}{\b\f4\fs20 \tab }{\b\f4\fs20 Function}{\f4\fs20
|
||||
\par }\pard\plain \s21\fi-2640\li2880\sb120\sa20\tx2880 \f5\lang1033 {\f4\fs20 Alt+Spacebar}{\f4\fs20 \tab }{\f4\fs20 Opens the Control menu for an application window.}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+Hyphen}{\f4\fs20 \tab }{\f4\fs20 Opens the Control menu for a document window.}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+F4}{\f4\fs20 \tab }{\f4\fs20 Closes a window.}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+Esc}{\f4\fs20 \tab }{\f4\fs20 Switches to the next application window or minimized icon, including full-screen programs.}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+Tab}{\f4\fs20 \tab }{\f4\fs20 Switches to the next application window, restoring applications that are running as icons.}{\f4\fs20
|
||||
\par }{\f4\fs20 Alt+Enter}{\f4\fs20 \tab }{\f4\fs20 Switches a non-Windows application between running in a window and running full screen.}{\f4\fs20
|
||||
\par }{\f4\fs20 Arrow key}{\f4\fs20 \tab }{\f4\fs20 Moves a window when you have chosen Move from the Control menu.}{\f4\fs20
|
||||
\par }\pard \s21\fi-2640\li2880\sb40\sa20\tx2880 {\f4\fs20 \tab }{\f4\fs20 Or, changes the size of a window when you have chosen Size from the Control menu.}{\f4\fs20
|
||||
\par }\pard\plain \f3\fs20\lang1033 {\b\f4 \page }
|
||||
\par }
|
||||
@@ -0,0 +1,172 @@
|
||||
##--BEGIN-- @OPT_APPL_HELP
|
||||
|
||||
|
||||
bool [[TApplication]]::ProcessAppMsg (MSG& msg)
|
||||
{
|
||||
if (msg.message == WM_COMMAND) {
|
||||
if (ContextHelp || (::GetKeyState(VK_F1) < 0)) {
|
||||
ContextHelp = false;
|
||||
GetMainWindow()->WinHelp(HelpFileName, HELP_CONTEXT, msg.wParam);
|
||||
return true;
|
||||
}
|
||||
} else
|
||||
switch (msg.message) {
|
||||
case WM_KEYDOWN:
|
||||
if (msg.wParam == VK_F1) {
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// If the Shift/F1 then set the help cursor and turn on the modal help state.
|
||||
if (::GetKeyState(VK_SHIFT) < 0) {
|
||||
ContextHelp = true;
|
||||
HelpCursor = ::LoadCursor(GetMainWindow()->GetModule()->GetInstance(), MAKEINTRESOURCE(IDC_HELPCURSOR));
|
||||
::SetCursor(HelpCursor);
|
||||
return true; // Gobble up the message.
|
||||
} else {
|
||||
##:@QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// If F1 w/o the Shift key then bring up help's main index.
|
||||
GetMainWindow()->WinHelp(HelpFileName, HELP_INDEX, 0L);
|
||||
return true; // Gobble up the message.
|
||||
}
|
||||
} else {
|
||||
if (ContextHelp && (msg.wParam == VK_ESCAPE)) {
|
||||
if (HelpCursor)
|
||||
::DestroyCursor(HelpCursor);
|
||||
ContextHelp = false;
|
||||
HelpCursor = 0;
|
||||
GetMainWindow()->SetCursor(0, IDC_ARROW);
|
||||
return true; // Gobble up the message.
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_MOUSEMOVE:
|
||||
case WM_NCMOUSEMOVE:
|
||||
if (ContextHelp) {
|
||||
::SetCursor(HelpCursor);
|
||||
return true; // Gobble up the message.
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_INITMENU:
|
||||
if (ContextHelp) {
|
||||
::SetCursor(HelpCursor);
|
||||
return true; // Gobble up the message.
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_ENTERIDLE:
|
||||
if (msg.wParam == MSGF_MENU)
|
||||
if (GetKeyState(VK_F1) < 0) {
|
||||
ContextHelp = true;
|
||||
GetMainWindow()->PostMessage(WM_KEYDOWN, VK_RETURN, 0L);
|
||||
return true; // Gobble up the message.
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
;
|
||||
}; // End of switch
|
||||
|
||||
// Continue normal processing.
|
||||
|
||||
return TApplication::ProcessAppMsg(msg);
|
||||
}
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_HELP
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
void [[TApplication]]::EvWinIniChange (char far* section)
|
||||
{
|
||||
if (strcmp(section, "windows") == 0) {
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// If the device changed in the WIN.INI file then the printer
|
||||
// might have changed. If we have a TPrinter (Printer) then
|
||||
// check and make sure it's identical to the current device
|
||||
// entry in WIN.INI.
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
if (Printer) {
|
||||
char printDBuffer[255];
|
||||
LPSTR printDevice = printDBuffer;
|
||||
LPSTR devName;
|
||||
LPSTR driverName = 0;
|
||||
LPSTR outputName = 0;
|
||||
|
||||
if (::GetProfileString("windows", "device", "", printDevice, sizeof(printDevice))) {
|
||||
##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
// The string which should come back is something like:
|
||||
//
|
||||
// HP LaserJet III,hppcl5a,LPT1:
|
||||
//
|
||||
// Where the format is:
|
||||
//
|
||||
// devName,driverName,outputName
|
||||
//
|
||||
##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
|
||||
devName = printDevice;
|
||||
while (*printDevice) {
|
||||
if (*printDevice == ',') {
|
||||
*printDevice++ = 0;
|
||||
if (!driverName)
|
||||
driverName = printDevice;
|
||||
else
|
||||
outputName = printDevice;
|
||||
} else
|
||||
printDevice = ::AnsiNext(printDevice);
|
||||
}
|
||||
|
||||
if ((Printer->GetSetup().Error != 0) ||
|
||||
(strcmp(devName, Printer->GetSetup().GetDeviceName()) != 0) ||
|
||||
(strcmp(driverName, Printer->GetSetup().GetDriverName()) != 0) ||
|
||||
(strcmp(outputName, Printer->GetSetup().GetOutputName()) != 0)) {
|
||||
|
||||
// New printer installed so get the new printer device now.
|
||||
delete Printer;
|
||||
Printer = new TPrinter(this);
|
||||
}
|
||||
} else {
|
||||
// No printer installed (GetProfileString failed).
|
||||
delete Printer;
|
||||
Printer = new TPrinter(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
int OwlMain (int , char* [])
|
||||
{
|
||||
try {
|
||||
##--BEGIN-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## :!@QUERY_APPL_OLE_AUTO 2
|
||||
::Registrar = new TOcRegistrar(::ApplicationReg, TOleDocViewFactory<[[TApplication]]>(), TApplication::GetCmdLine(), ::DocTemplateStaticHead);
|
||||
if (::Registrar->IsOptionSet(amAnyRegOption))
|
||||
## :@QUERY_APPL_OLE_AUTO 2
|
||||
::Registrar = new TOcRegistrar(::ApplicationReg, TOleDocViewAutoFactory<[[TApplication]]>(), TApplication::GetCmdLine(), ::DocTemplateStaticHead);
|
||||
if (::Registrar->IsOptionSet(amAnyRegOption))
|
||||
return 0;
|
||||
|
||||
// If this is an exe server normal run, run the app now. Otherwise, wait
|
||||
// until our factory gets a call.
|
||||
return ::Registrar->Run();
|
||||
##--END-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
##--BEGIN-- @QUERY_APPL_OLE == VALUE_NOOLE
|
||||
## :!@QUERY_APPL_OLE_AUTO 2
|
||||
[[TApplication]] app;
|
||||
return app.Run();
|
||||
## --BEGIN-- @QUERY_APPL_OLE_AUTO
|
||||
::Registrar = new TRegistrar(::ApplicationReg, TAutoFactory<[[TApplication]]>(), TApplication::GetCmdLine(), _hInstance);
|
||||
if (::Registrar->IsOptionSet(amAnyRegOption))
|
||||
return 0;
|
||||
|
||||
// If this is an exe server normal run, run the app now. Otherwise, wait
|
||||
// until our factory gets a call.
|
||||
return ::Registrar->Run();
|
||||
## --END-- @QUERY_APPL_OLE_AUTO
|
||||
##--END-- @QUERY_APPL_OLE == VALUE_NOOLE
|
||||
}
|
||||
catch (xmsg& x) {
|
||||
::MessageBox(0, x.why().c_str(), "Exception", MB_OK);
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
@@ -0,0 +1,300 @@
|
||||
{\rtf1\ansi \deff0\deflang1024{\fonttbl{\f0\froman Times New Roman;}{\f1\froman Symbol;}{\f2\fswiss Arial;}{\f3\froman CG Times (W1);}{\f4\fswiss Univers (W1);}{\f5\froman Tms Rmn;}{\f6\fswiss Helv;}{\f7\fmodern pica;}
|
||||
{\f8\fmodern Courier;}{\f9\fmodern elite;}{\f10\fmodern prestige;}{\f11\fmodern lettergothic;}{\f12\fmodern gothicPS;}{\f13\fmodern cubicPS;}{\f14\fmodern LinePrinter;}{\f15\fswiss Helvetica;}{\f16\fmodern avantegarde;}{\f17\fmodern spartan;}
|
||||
{\f18\fmodern metro;}{\f19\fmodern presentation;}{\f20\fmodern APL;}{\f21\fmodern OCRA;}{\f22\fmodern OCRB;}{\f23\froman boldPS;}{\f24\froman emperorPS;}{\f25\froman madaleine;}{\f26\froman zapf humanist;}{\f27\froman classic;}{\f28\froman roman f;}
|
||||
{\f29\froman roman g;}{\f30\froman roman h;}{\f31\froman timesroman;}{\f32\froman century;}{\f33\froman palantino;}{\f34\froman souvenir;}{\f35\fnil Garamond;}{\f36\froman caledonia;}{\f37\froman bodini;}{\f38\froman university;}{\f39\fscript Script;}
|
||||
{\f40\fscript scriptPS;}{\f41\fscript script c;}{\f42\fscript script d;}{\f43\fscript commercial script;}{\f44\fnil Park Avenue;}{\f45\fscript coronet;}{\f46\fscript script h;}{\f47\fscript greek;}{\f48\froman kana;}{\f49\froman hebrew;}
|
||||
{\f50\froman roman s;}{\f51\froman russian;}{\f52\froman roman u;}{\f53\froman roman v;}{\f54\froman roman w;}{\f55\fdecor narrator;}{\f56\fdecor emphasis;}{\f57\fdecor zapf chancery;}{\f58\fdecor decor d;}{\f59\fdecor old english;}{\f60\fdecor decor f;}
|
||||
{\f61\fdecor decor g;}{\f62\fdecor cooper black;}{\f63\fnil linedraw;}{\f64\fnil math7;}{\f65\fnil math8;}{\f66\fnil bar3of9;}{\f67\fnil EAN;}{\f68\fnil pcline;}{\f69\fnil tech h;}{\f70\fswiss Helvetica-Narrow;}{\f71\fmodern Modern;}{\f72\froman Roman;}
|
||||
{\f73\fmodern Courier New;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue127;
|
||||
\red0\green127\blue127;\red0\green127\blue0;\red127\green0\blue127;\red127\green0\blue0;\red127\green127\blue0;\red127\green127\blue127;\red192\green192\blue192;}{\stylesheet{\s242\tqc\tx4320\tqr\tx8640 \f5\fs20\lang1033 \sbasedon0\snext242 footer;}{
|
||||
\s244 \f5\fs16\up6\lang1033 \sbasedon0\snext0 footnote reference;}{\s245 \f5\fs20\lang1033 \sbasedon0\snext245 footnote text;}{\s246\li720 \i\f5\fs20\lang1033 \sbasedon0\snext255 heading 9;}{\s247\li720 \i\f5\fs20\lang1033 \sbasedon0\snext255 heading 8;}{
|
||||
\s248\li720 \i\f5\fs20\lang1033 \sbasedon0\snext255 heading 7;}{\s249\li720 \f5\fs20\ul\lang1033 \sbasedon0\snext255 heading 6;}{\s250\li720 \b\f5\fs20\lang1033 \sbasedon0\snext255 heading 5;}{\s251\li360 \f5\ul\lang1033 \sbasedon0\snext255 heading 4;}{
|
||||
\s252\li360 \b\f5\lang1033 \sbasedon0\snext255 heading 3;}{\s253\sb120 \b\f6\lang1033 \sbasedon0\snext0 heading 2;}{\s254\sb240 \b\f6\ul\lang1033 \sbasedon0\snext0 heading 1;}{\s255\li720 \f5\fs20\lang1033 \sbasedon0\snext255 Normal Indent;}{
|
||||
\f5\fs20\lang1033 \snext0 Normal;}{\s2\fi-240\li480\sb80\tx480 \f15\lang1033 \sbasedon0\snext2 nscba;}{\s3\fi-240\li240\sa20 \f15\lang1033 \sbasedon0\snext3 j;}{\s4\li480\sa20 \f15\lang1033 \sbasedon0\snext4 ij;}{\s5\sb80\sa20 \f15\lang1033
|
||||
\sbasedon0\snext5 btb;}{\s6\fi-240\li2400\sb20\sa20 \f15\fs20\lang1033 \sbasedon0\snext6 ctcb;}{\s7\fi-240\li480\sa40\tx480 \f15\lang1033 \sbasedon0\snext7 ns;}{\s8\sa120 \f15\fs28\lang1033 \sbasedon0\snext8 TT;}{\s9\fi-240\li2400\sa20 \f15\lang1033
|
||||
\sbasedon0\snext9 crtj;}{\s10\fi-240\li480\tx480 \f15\lang1033 \sbasedon0\snext10 nsca;}{\s11\sa20 \f15\lang1033 \sbasedon0\snext11 bt;}{\s12\li240\sb120\sa40 \f15\lang1033 \sbasedon0\snext12 Hf;}{\s13\li240\sb120\sa40 \f15\lang1033
|
||||
\sbasedon0\snext13 Hs;}{\s14\li480\sb120\sa40 \f15\lang1033 \sbasedon0\snext14 RT;}{\s15\fi-2160\li2160\sb240\sa80\tx2160 \f15\lang1033 \sbasedon0\snext15 c;}{\s16\li2160\sa20 \f15\lang1033 \sbasedon0\snext16 ct;}{\s17\li240\sa20 \f15\lang1033
|
||||
\sbasedon0\snext17 it;}{\s18\li480 \f15\fs20\lang1033 \sbasedon0\snext18 nsct;}{\s19\fi-160\li400\sb80\sa40 \f15\lang1033 \sbasedon0\snext19 nscb;}{\s20\fi-2640\li2880\sb120\sa40\brdrb\brdrs\brdrw15 \brdrbtw\brdrs\brdrw15 \tx2880 \f15\lang1033
|
||||
\sbasedon0\snext20 HC2;}{\s21\fi-2640\li2880\sb120\sa20\tx2880 \f15\lang1033 \sbasedon0\snext21 C2;}{\s22\fi-240\li2400\sa20 \f15\fs20\lang1033 \sbasedon0\snext22 ctc;}{\s23\li2160\sb160 \f15\lang1033 \sbasedon0\snext23 crt;}{\s24\li480\sb20\sa40
|
||||
\f15\lang1033 \sbasedon0\snext24 or;}{\s25\fi-216\li360\ri144\sb140\sl240 \b\f4\fs20\lang1033 \sbasedon0\snext0 H2;}{\s26\fi-216\li360\ri144\sb40\sa60\sl240\tx360 \f73\fs20\lang1033 \sbasedon0\snext26 Code;}{\s27\li360\ri144\sb40\sa60\sl240
|
||||
\f4\fs20\lang1033 \sbasedon0\snext27 In1;}{\s28\li360\ri144\sb140\sl240 \b\f4\fs20\lang1033 \sbasedon0\snext27 H3;}{\s29\fi-187\li360\ri144\sa60\sl240\tx360 \f4\fs20\lang1033 \sbasedon0\snext29 LS1;}{\s30\fi-180\li540\ri144\sa60\sl240\tx540
|
||||
\f4\fs20\lang1033 \sbasedon29\snext30 LS2;}{\s31\fi-2563\li2707\ri144\sb40\sa60\sl240\tx2700 \f4\fs20\lang1033 \sbasedon0\snext31 T2;}{\s32\li43\ri144\sb40\sl-43\keep\brdrt\brdrs\brdrw15\brsp20 \brdrbtw\brdrs\brdrw15\brsp20 \f4\fs20\lang1033
|
||||
\sbasedon0\snext33 TLine;}{\s33\fi-4003\li4147\ri144\sb40\sa60\sl240\tx2340\tx4140 \f4\fs20\lang1033 \sbasedon0\snext33 T3;}{\s34\fi-4363\li4507\ri144\sb40\sa60\sl240\tx1620\tx3060\tx4500 \f4\fs20\lang1033 \sbasedon0\snext34 T4;}{
|
||||
\s35\fi-216\li360\ri144\sb40\sa104\sl240 \b\f4\cf2\lang1033 \sbasedon0\snext0 H1;}{\s36\fi-216\li360\ri144\sa60\sl240\tx360 \f4\fs20\lang1033 \sbasedon29\snext36 NUM1;}{\s37\fi-216\li576\ri144\sa60\sl240\tx576 \f4\fs20\lang1033 \sbasedon36\snext37 NUM2;}{
|
||||
\s38\li144\sa60\sl240\keep\tx360\tx547\tx720\tx907\tx1080\tx1267 \f73\fs20\lang1033 \sbasedon26\snext38 CodeNW;}{\s39\li360\sa60\sl240\keep\tx540\tx720\tx907\tx1080\tx1267\tx1440 \f73\fs20\lang1033 \sbasedon38\snext39 CodeNWIn;}{
|
||||
\s40\li144\sb40\sa60\sl240\keep\tx360\tx547\tx720\tx907\tx1080\tx1267 \f4\fs20\lang1033 \sbasedon0\snext25 Syntax;}{\s41\fi-216\li360\ri144\sb120\sl240\tx2347\tx4147 \b\f4\fs20\lang1033 \sbasedon25\snext32 THead;}{
|
||||
\s42\fi-576\li720\ri144\sb40\sa60\sl240\tx720\tx8820 \f4\fs20\lang1033 \sbasedon0\snext0 Note;}{\s43\sb40\sa60\sl240 \f4\fs20\lang1033 \sbasedon0\snext43 TCell;}}{\info{\title help.exe Project: help.exe Help}{\subject help.exe Help Index}
|
||||
##@QUERY_PRJ_USER [[Author]]
|
||||
{\author [[Author]]}{\doccomm help.exe Main help index.}{\creatim\yr1991\mo9\dy21}{\revtim\yr1993\mo11\dy8\hr13\min2}{\version1}{\edmins4635}{\nofpages33}{\nofwords67246}{\nofchars75310}{\vern16504}}
|
||||
\paperw12240\paperh15840\margl1800\margr1800\margt1440\margb1440\gutter0 \ftnbj {\ftnsep \pard\plain \f5\fs20\lang1033
|
||||
\par }\sectd \linex576\endnhere \pard\plain \sl240 \f5\fs20\lang1033 {\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} main_index}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Help Index}}{\fs16\up6 +
|
||||
{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 +} index:0005}}{\fs16\up6 }{\b\f4\fs28 Contents}{\v\f4 index_info}{\b\f4\fs28\ul
|
||||
\par }{\b\f6
|
||||
##--BEGIN-- (((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
\par }{\b\f6 Commands}{\f6
|
||||
\par }{\f6\uldb File Menu}{\v\f6 menu_file}{\f6
|
||||
\par }{\f6\uldb Edit Menu}{\v\f6 menu_edit}{\f6
|
||||
\par }{\f6\uldb Search Menu}{\v\f6 menu_search}{\f6
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI
|
||||
\par }{\f6\uldb Windows Menu}{\v\f6 menu_windows}{\f6
|
||||
\par }{\f6\uldb Help Menu}{\v\f6 menu_help}{\f6
|
||||
\par }{\b\f6
|
||||
##--END-- (((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##@OPT_APPL_TOOLBAR 3
|
||||
\par }{\b\f6 Toolbar}{\f6
|
||||
\par }{\f6\uldb Toolbar Commands}{\v\f6 toolbar}{\f6
|
||||
\par }{\b\f6
|
||||
##--BEGIN-- (@QUERY_APPL_MODEL != VALUE_DIALOG)
|
||||
\par }{\b\f6 Procedures}{\b\f6
|
||||
\par }{\f6\uldb Copying Text}{\v\f6 proc_copying_text}{\f6
|
||||
\par }{\f6\uldb Deleting Text}{\v\f6 proc_deleting_text}{\f6
|
||||
\par }{\f6\uldb Exiting}{\v\f6 proc_exiting}{\f6
|
||||
\par }{\f6\uldb Edit Window}{\v\f6 client_window}{\f6
|
||||
##@OPT_APPL_DRAGDROP
|
||||
\par }{\f6\uldb Drag/Drop from the File Manager}{\v\f6 drag_drop}{\f6
|
||||
##@OPT_APPL_PRINTING
|
||||
\par }{\f6\uldb Printing}{\v\f6 print}{\f6
|
||||
\par }{\b\f6
|
||||
##--END-- (@QUERY_APPL_MODEL != VALUE_DIALOG)
|
||||
\par }{\b\f6 Keyboard Topics}{\f6
|
||||
\par }{\f6\uldb Windows Key Strokes}{\v\f6 keyboard_topic}{\f6
|
||||
\par }{\fs16\up6 \page }{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} index_info}}{\b\f6 }{\f6 For information on how to use Help, press F1 or select Using Help from the Help menu.}{\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # menu_edit}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Edit Menu}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + commands:010}}{\b\f6 Edit Menu}{\f6
|
||||
\par }{\f6
|
||||
\par }\pard {\f4 The Edit menu provides commands to undo edits, access the clipboard, and to delete text.}{\f4
|
||||
\par }\pard \sl240 {\f6
|
||||
\par }\pard \fi-720\li720\sl240 {\strike\f6 Undo}{\v\f6 CM_EDITUNDO}{\f6 \tab \tab }{\f6 Undo the previous operation.}{\f6
|
||||
\par }{\strike\f6 Cut}{\v\f6 CM_EDITCUT}{\f6 \tab }{\f6 \tab }{\f6 Delete selected text and move it to the clipboard.}{\f6
|
||||
\par }{\strike\f6 Copy}{\v\f6 CM_EDITCOPY}{\f6 \tab \tab }{\f6 Copy selected text to the clipboard.}{\f6
|
||||
\par }{\strike\f6 Paste}{\v\f6 CM_EDITPASTE}{\f6 \tab \tab }{\f6 Move text from the clipboard to the current document.}{\f6
|
||||
\par }{\strike\f6 Clear All}{\v\f6 CM_EDITCLEAR}{\f6 \tab }{\f6 Delete all text in document.}{\f6
|
||||
\par }{\strike\f6 Delete}{\v\f6 CM_EDITDELETE}{\f6 \tab }{\f6 \tab }{\f6 Delete selected text.}{\f6
|
||||
\par }{\f6
|
||||
\par }\pard \sl240 {\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # menu_file}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File Menu}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + commands:020}}{\b\f6 File Menu}{\f6
|
||||
|
||||
\par }{\f6
|
||||
\par }\pard {\f4 The File menu provides commands for creating new files, opening existing files, saving files, printing files, and exiting the application.}{\f4
|
||||
\par }\pard \sl240 {\f6
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI 2
|
||||
\par }{\strike\f6 New}{\v\f6 CM_MDIFILENEW}{\f6 \tab }{\f6 \tab }{\f6 Create a new, untitled, document.}{\f6
|
||||
\par }{\strike\f6 Open}{\v\f6 CM_MDIFILEOPEN}{\f6 \tab }{\f6 \tab }{\f6 Open an existing file.}{\f6
|
||||
##@QUERY_APPL_MODEL == VALUE_SDI 2
|
||||
\par }{\strike\f6 New}{\v\f6 CM_FILENEW}{\f6 \tab }{\f6 \tab }{\f6 Create a new, untitled, document.}{\f6
|
||||
\par }{\strike\f6 Open}{\v\f6 CM_FILEOPEN}{\f6 \tab }{\f6 \tab }{\f6 Open an existing file.}{\f6
|
||||
\par }{\strike\f6 Close}{\v\f6 CM_FILECLOSE}{\f6 \tab }{\f6 \tab }{\f6 Close the current document.}{\f6
|
||||
\par }{\strike\f6 Save}{\v\f6 CM_FILESAVE}{\f6 \tab }{\f6 \tab }{\f6 Save the current document if its contents have changed.}{\f6
|
||||
\par }{\strike\f6 Save As}{\v\f6 CM_FILESAVEAS}{\f6 \tab }{\f6 Save the current document under a new name.}{\f6
|
||||
##OPT_APPL_PRINTING 3
|
||||
\par }{\strike\f6 Print}{\v\f6 CM_FILEPRINT}{\f6 \tab }{\f6 \tab }{\f6 Print the current document.}{\f6
|
||||
\par }{\strike\f6 Print Preview}{\v\f6 CM_FILEPRINTPREVIEW}{\f6 \tab }{\f6 View a sample printout of the current document.}{\f6
|
||||
\par }{\strike\f6 Print Setup}{\v\f6 CM_FILEPRINTERSETUP}{\f6 \tab }{\f6 Set printer characteristics.}{\f6
|
||||
##@QUERY_PRJ_NAME [[Target]]
|
||||
\par }{\strike\f6 Exit}{\v\f6 CM_EXIT}{\f6 \tab }{\f6 \tab }{\f6 Exit [[Target]] application.}{\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # menu_search}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Search Menu}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + commands:030}}{\b\f6 S}{\b\f6 earch Menu}{\f6
|
||||
|
||||
\par }{\f6
|
||||
\par }{\f6 The Search menu provides commands to find and replace text.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\strike\f6 Find}{\v\f6 CM_EDITFIND}{\f6 \tab }{\f6 \tab }{\f6 Find a pattern of text.}{\f6
|
||||
\par }{\strike\f6 Replace}{\v\f6 CM_EDITREPLACE}{\f6 \tab }{\f6 Replace one pattern of text with another.}{\f6
|
||||
\par }{\strike\f6 Next}{\v\f6 CM_EDITFINDNEXT}{\f6 \tab }{\f6 \tab }{\f6 Find and/or replace the next occurrence of text pattern.}{\f6
|
||||
\par }{\f6 \page }
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # menu_windows}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Windows Menu}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + commands:040}}{\b\f6 Window}{\b\f6 Menu}{\f6
|
||||
|
||||
\par }{\f6
|
||||
\par }{\f6 The Window menu provides commands to control the position and layout of application's windows.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\strike\f6 Cascade}{\v\f6 CM_CASCADECHILDREN}{\f6 \tab }{\f6 Resize and position all windows in an overlapping pattern.}{\f6
|
||||
\par }{\strike\f6 Tile}{\v\f6 CM_TILECHILDREN}{\f6 \tab }{\f6 \tab }{\f6 Resize and position all windows in an non overlapping pattern.}{\f6
|
||||
\par }{\strike\f6 Arrange Icons}{\v\f6 CM_ARRANGEICONS}{\f6 \tab }{\f6 Align all iconized windows along a grid.}{\f6
|
||||
\par }{\strike\f6 Close All}{\v\f6 CM_CLOSECHILDREN}{\f6 \tab }{\f6 Close all windows.}{\f6
|
||||
\par }{\f6 \page }
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # menu_help}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Help Menu}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + commands:040}}{\b\f6 Help}{\b\f6 Menu}{\f6
|
||||
|
||||
\par }{\f6
|
||||
\par }{\f6 The Help menu provides access to the help system and the about dialog.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\strike\f6 Contents}{\v\f6 CM_HELPCONTENTS}{\f6 \tab }{\f6 Help topic contents.}{\f6
|
||||
\par }{\f6 \page }
|
||||
{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # proc_copying_text}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Copying Text}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + procedures:010}}{\f6 K{\footnote
|
||||
\pard\plain \sl240 \f5\fs20\lang1033 K copy;clipboard}}{\b\f6 Copying Text}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 To copy text to a document from the clipboard, position the cursor at the desired insertion point, and choose Edit|}{\f4\uldb Copy}{\v\f4 CM_EDITCOPY}{\f6 from the menu.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # proc_deleting_text}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Deleting Text}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + procedures:020}}{\f6 K{\footnote
|
||||
\pard\plain \sl240 \f5\fs20\lang1033 K delete;clipboard}}{\b\f6 Deleting }{\b\f6 Text}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 To delete text}{\f6 from a document, select the text, and choose Edit|}{\f4\uldb Cut}{\v\f4 CM_EDITCUT}{\f6 or Edit|}{\f4\uldb Delete}{\v\f4 CM_EDITDELETE}{\f6
|
||||
from the menu. Cut will put the deleted text in the clipboard, and Delete will simply delete it.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # proc_exiting}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Exiting}}{\b\f6 Exiting}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 To exit the application, choose File|}{\f4\uldb Exit}{\v\f4 CM_EXIT}{\f6 from the menu.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} client_window}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Edit Window}}{\f6 }{\b\f6 Edit Window}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 The edit windows in this application allow reading, editing, printing and saving text files up to 64K characters in size.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }
|
||||
##--BEGIN-- @OPT_APPL_DRAGDROP
|
||||
{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} drag_drop}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Drag/Drop from the Program Manager}}{\f6 }{\b\f6 Drag/Drop from the File Manager}{
|
||||
\f6
|
||||
\par }{\f6
|
||||
##@QUERY_PRJ_NAME [[Target]]
|
||||
\par }{\f6 A file can be opened into an editor in the application by dragging the file from the File Manager, and dropping it on [[Target]]'s main window.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }
|
||||
##--END-- @OPT_APPL_DRAGDROP
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} print}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Printing}}{\f6 }{\b\f6 Printing}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 There are three commands on the File menu which support printing of documents from the application. File|}{\f4\uldb Print Setup}{\v\f4 CM_FILEPRINTERSETUP}{\f6 is used to select and configure a printer device. File|}{\f4\uldb Print Preview}{
|
||||
\v\f4 CM_FILEPRINTPREVIEW}{\f6 displays a special previ}{\f6 ew window which shows how the document will appear when printed. File|}{\f4\uldb Print}{\v\f4 CM_FILEPRINT}{\f6 causes the current document to be printed.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_EDITCOPY}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Edit Copy Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_edit:020}}{\b\f6 E}{\b\f6
|
||||
dit Copy Command}{\f6
|
||||
\par }{\f6
|
||||
\par }\pard {\f4 The Edit|Copy command leaves the selected text intact and places an exact copy of it in the clipboard. To paste the copied text into another document, choose Edit|}{\f4\uldb Paste}{\v\f4 CM_EDITPASTE}{\f4 .}{\f4
|
||||
\par }\pard \sl240 {\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_EDITCUT}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Edit Cut Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_edit:030}}{\b\f6 Edit Cut Command}{\f6
|
||||
|
||||
\par }{\f6
|
||||
\par }\pard {\f4 The Edit|}{\f4 Cut command removes the selected text from your document and places the text in the clipboard. Choose Edit|}{\f4\uldb Paste}{\v\f4 CM_EDITPASTE}{\f4
|
||||
to paste the cut text into another document. The text remains selected in the clipboard, and can be pasted multiple times. }{\f4
|
||||
\par }\pard \sl240 {\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_EDITPASTE}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Edit Paste Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_edit:040}}{\b\f6 Edit Paste Command
|
||||
}{\f6
|
||||
\par }{\f6
|
||||
\par }\pard {\f4 The Edit|Paste command inserts the text currently selected in the clipboard into the current window at the cursor position. }{\f4
|
||||
\par }\pard \sl240 {\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_EDITUNDO}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Edit Undo Command }}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_edit:050}}{\b\f6 E}{\b\f6
|
||||
dit Undo Command}{\f6
|
||||
\par }{\f6
|
||||
\par }\pard {\f4
|
||||
The Edit|Undo command restores the file in the current window to the way it was before your most recent edit operation. Undo inserts any characters you deleted, deletes any characters you inserted, replaces any characters you overwrote, and moves your cu
|
||||
}{\f4 rsor back to a prior position.}{\f4
|
||||
\par }\pard \sl240 {\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_EDITCLEAR}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Edit Clear All Command }}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_edit:060}}{\b\f6 E}{\b\f6
|
||||
dit Clear All Command}{\f6
|
||||
\par }{\f6
|
||||
\par }\pard {\f4 The Edit|Clear All command deletes the entire contents of the current document. Use Edit|}{\f4\uldb Undo}{\v\f4 CM_EDIT}{\v\f4 UNDO}{\f4 to restore the contents.}{\f4
|
||||
\par }\pard \sl240 {\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_EDITDELETE}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ Edit Delete Command }}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_edit:070}}{\b\f6 E}{\b\f6
|
||||
dit Delete Command}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f4 The Edit|Delete command deletes the currently selected text from the current document. The text is not placed in the clipboard. Use the Edit|}{\f4\uldb Undo}{\v\f4 CM_EDITUNDO}{\f4 command to restore the text.}{\f4
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_FILECLOSE}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File Close Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_file:010}}{\b\f6 File }{\b\f6
|
||||
Close Command}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 File|Close closes the currently active window.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_EXIT}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File Exit Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_file:020}}{\b\f6 File Exit Command}{\f6
|
||||
|
||||
\par }{\f6
|
||||
##@QUERY_PRJ_NAME [[Target]]
|
||||
\par }\pard {\f4 The File|Exit command exits [[Target]]. If you've modified documents without saving, you'll be prompted to save before exiting.}{\f4
|
||||
\par }\pard \sl240 {\f6
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_MDIFILENEW}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File New Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_file:030}}{\b\f6 File New Command}{\f6
|
||||
##@QUERY_APPL_MODEL == VALUE_SDI
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_FILENEW}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File New Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_file:030}}{\b\f6 File New Command}{\f6
|
||||
\par }{\f6
|
||||
\par }\pard {\f4 The File|New command opens a new, untitled document, and makes it the active window. The application prompts you to name untitled documents when they are closed.}{\f4
|
||||
\par }\pard \sl240 {\f6
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_MDIFILEOPEN}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File Open Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_file:040}}{\b\f6 File Open Command}{\f6
|
||||
##@QUERY_APPL_MODEL == VALUE_SDI
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_FILEOPEN}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File Open Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_file:040}}{\b\f6 File Open Command}{\f6
|
||||
\par }{\f6
|
||||
\par }\pard {\f4 The File|Open command displays the}{\b\f4 }{\f4 Open a File}{\f4 dialog box so you can select a file to load into a new document window. You can also create a new document by naming a file that doesn't currently exist.}{\f4
|
||||
\par }{\f4
|
||||
\par }\pard \sl240 {\f6 \page }
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_FILEPRINT}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File Print Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_file:050}}{\b\f6
|
||||
File Print Command
|
||||
\par }{\f6
|
||||
\par }{\f4 The File|Print command prints the contents of the active window. Use File|}{\f4\uldb Print Preview}{\v\f4 CM_FILEPRINTPREVIEW}{\f4 to see how the document will be laid out on printer pages. Use File|}{\f4\uldb Print Setup}{\v\f4 CM_FILEPRINT}{
|
||||
\v\f4 ER}{\v\f4 SETUP}{\f4 to select a printer, and to set printer options.}{\f4
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_FILEPRINTPREVIEW}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File Print Preview Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_file:060}}{\b\f6
|
||||
File Print}{\b\f6 Preview Command}{\b\f6
|
||||
\par }{\f6
|
||||
\par }{\f6
|
||||
File|Print Preview opens a special window that shows how the active document will appear when printed. The preview window shows one or two pages of the active document as they would be laid out on printer pages. Controls on the window allow you to page
|
||||
}{\f6 through the pages of the document.}{\f6 \line }{\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_FILEPRINTERSETUP}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File Print Setup Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_file:070}}{\b\f6
|
||||
File Print}{\b\f6 Setup Command}{\b\f6
|
||||
\par }{\f6
|
||||
\par }\pard {\f4 The File|}{\f4 Printer Setup command displays the Printer Setup dialog box which allows you to select and configure the printer to be used to print documents in the application.}{\f4
|
||||
\par }{\f4
|
||||
\par }\pard \sl240 {\f6 \page }
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_FILESAVE}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File Save Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_file:080}}{\b\f6
|
||||
File Save Command}{\f6
|
||||
\par }{\f6
|
||||
\par }\pard {\f4 The File|Save command saves the document in the active window to disk. If the document is unnamed, the Save File As dialog box is displayed so you can name the file, and choose where it is to be saved.}{\f4
|
||||
\par }\pard \sl240 {\f6
|
||||
\par }{\f6 \page }{\f6 #{\footnote \pard\plain \sl240 \f5\fs20\lang1033 # CM_FILESAVEAS}}{\f6 ${\footnote \pard\plain \sl240 \f5\fs20\lang1033 $ File Save As Command}}{\f6 +{\footnote \pard\plain \sl240 \f5\fs20\lang1033 + menu_file:090}}{\b\f6 F}{\b\f6
|
||||
ile Save As Command}{\f6
|
||||
\par }{\f6
|
||||
\par }\pard {\f4
|
||||
The File|Save As command allows you to save a document under an new name, or in a new location on disk. The command displays the Save File As dialog box. You can enter the new file name, including the drive and directory. All windows containing this fi
|
||||
}{\f4 le are updated with the new name. If you choose an existing file name, you are asked if you want to overwrite the existing file. }{\f4
|
||||
\par }{\f4
|
||||
\par }\pard \sl240 {\f6 \page }{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} CM_EDITFIND}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Search Find Command}}{\fs16\up6 +{\footnote \pard\plain \s245
|
||||
\f5\fs20\lang1033 {\fs16\up6 +} menu_search:010}}{\b\f6 Search Find Command}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 The Search|Find}{\f6
|
||||
command searches the current document for a text pattern. The command displays the Find dialog which controls the search process. Options in the dialog determine whether only whole words are to be matched, whether the case of characters is significant,
|
||||
}{\f6 and whether the search should be conducted forwards or backwards through the document. As each match is found, it is highlighted in the document.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} CM_EDITFINDNEXT}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Search Next Command}}{\fs16\up6 +{\footnote \pard\plain \s245
|
||||
\f5\fs20\lang1033 {\fs16\up6 +} menu_search:020}}{\b\f6 Search Next Command}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 The Search|Next co}{\f6 mmand repeats the last Find or Replace operation.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} CM_EDITREPLACE}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Search Replace Command}}{\fs16\up6 +{\footnote \pard\plain \s245
|
||||
\f5\fs20\lang1033 {\fs16\up6 +} menu_search:030}}{\b\f6 Search Replace Command}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6
|
||||
The Search|Replace command searches the current document for a text pattern, and replaces occurrences of the of the pattern with new text. The command displays the Replace dialog which controls the search/replace process. Options in the dialog determine
|
||||
}{\f6 whether only whole words are to be matched, and whether the case of characters is significant. The dialog is }{\f6 also used to specify the pattern to search for, and the text to replace occurrences with.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} CM_ARRANGEICONS}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Windows Arrange Icons Command}}{\fs16\up6 +{\footnote \pard\plain \s245
|
||||
\f5\fs20\lang1033 {\fs16\up6 +} menu_window:010}}{\b\f6 Window}{\b\f6 Arrange Icons Command}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 The Window|Arrange Icons command arranges all iconized windows into rows along the bottom of the application's main window.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} CM_CASCADECHILDREN}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Windows Cascade Command}}{\fs16\up6 +{\footnote \pard\plain \s245
|
||||
\f5\fs20\lang1033 {\fs16\up6 +} menu_window:020}}{\b\f6 Window}{\b\f6 Cascade Command}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 The Window|Cascade command arranges all document }{\f6 windows from the top-left position of the application's main window so that the title bar of each is visible.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} CM_CLOSECHILDREN}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Windows Close All Command}}{\fs16\up6 +{\footnote \pard\plain \s245
|
||||
\f5\fs20\lang1033 {\fs16\up6 +} menu_window:030}}{\b\f6 Window}{\b\f6 Close All Command}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 The Window|Close All command closes all document windows open in the application.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} CM_TILECHILDREN}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Windows Tile Command}}{\fs16\up6 +{\footnote \pard\plain \s245
|
||||
\f5\fs20\lang1033 {\fs16\up6 +} menu_window:040}}{\b\f6 Window}{\b\f6 Tile Command}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 The Window|Tile command arranges all document windows side-by-side in a non-overlapping pattern.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
{\fs16\up6 #{\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 #} CM_HELPCONTENTS}}{\fs16\up6 ${\footnote \pard\plain \s245 \f5\fs20\lang1033 {\fs16\up6 $} Help table of contents}}{\fs16\up6 +{\footnote \pard\plain \s245
|
||||
\f5\fs20\lang1033 {\fs16\up6 +} menu_help:010}}{\b\f6 Window}{\b\f6 Help table of contents}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 The Help|Contents displays the help contents page.}{\f6
|
||||
\par }{\f6
|
||||
\par }{\f6 \page }
|
||||
{\f6
|
||||
\par }}
|
||||
@@ -0,0 +1,201 @@
|
||||
.autodepend
|
||||
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
# Build the [[Project]] target optional switches are:
|
||||
# -DSTATIC - Build the .EXE to the static OWL library instead of the DLL
|
||||
# -DNOHELP - DO NOT build the .HLP file if help is in the .MAK file
|
||||
# -DDEBUG - Build the .EXE with debug information.
|
||||
|
||||
#
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
# Add new files for [[Project]].EXE in the [[Project]] macro precede the file with an @ sign.
|
||||
#
|
||||
#------------------------------------------------------------------------------------------------
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
##@QUERY_PRJ_NAME [[Project]] 1
|
||||
##QUERY_FILENAME_CPP [[MainFile]] 1
|
||||
##: <<TMDIClient QUERY_FILENAME_CPP [[TMDIClient]] 1
|
||||
##: <<TMDIChild QUERY_FILENAME_CPP [[TMDIChild]] 1
|
||||
##<<TDialog QUERY_FILENAME_CPP [[TDialog]] 1
|
||||
[[Project]] = @[[MainFile]].obj @[[TMDIClient]].obj @[[TMDIChild]].obj @[[TDialog]].obj
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_SDI
|
||||
##@QUERY_PRJ_NAME [[Project]] 1
|
||||
##QUERY_FILENAME_CPP [[MainFile]] 1
|
||||
##<<TDialog QUERY_FILENAME_CPP [[TDialog]] 1
|
||||
[[Project]] = @[[MainFile]].obj @[[TDialog]].obj
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
##@OPT_APPL_PRINTING
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
[[Project]] = $([[Project]]) @ApxPrint.obj @ApxPrev.obj
|
||||
#------------------------------------------------------------------------------------------------
|
||||
|
||||
|
||||
# Root location of the compiler, linker, implib, include files, etc.
|
||||
!ifndef BCROOT
|
||||
!include "$(MAKEDIR)\BCROOT.INC"
|
||||
!endif
|
||||
|
||||
# Compiler tools:
|
||||
##QUERY_FILENAME_CPP [[MainFile]]
|
||||
CC = $(BCROOT)\bin\BCC +[[MainFile]].cfg
|
||||
TASM = $(BCROOT)\bin\TASM
|
||||
TLIB = $(BCROOT)\bin\TLIB
|
||||
TLINK = $(BCROOT)\bin\TLINK
|
||||
IMPLIB = $(BCROOT)\bin\IMPLIB
|
||||
RC = $(BCROOT)\bin\BRCC
|
||||
##@OPT_APPL_HELP
|
||||
HC = $(BCROOT)\bin\HC31
|
||||
|
||||
|
||||
# Target source code
|
||||
!ifndef CPPDIR
|
||||
CPPDIR = . # Location of .cpp and .rc files
|
||||
!endif
|
||||
|
||||
##--BEGIN-- @QUERY_DIR_H [[HFile]]
|
||||
!ifndef INCDIR
|
||||
##HFile != ""
|
||||
INCDIR = $(CPPDIR)\..\[[HFile]] # Location of .h and .rh files
|
||||
##HFile == ""
|
||||
INCDIR = $(CPPDIR) # Location of .h and .rh files
|
||||
!endif
|
||||
##--END-- @QUERY_DIR_H [[HFile]]
|
||||
|
||||
# Search paths for the libraries and the include files.
|
||||
LIBPATH = $(BCROOT)\LIB
|
||||
INCLUDEPATH = $(INCDIR);$(BCROOT)\INCLUDE
|
||||
RCINCLUDEPATH = -i$(INCDIR) -i$(BCROOT)\INCLUDE
|
||||
|
||||
# Linker flags:
|
||||
!ifdef DEBUG
|
||||
DEBUGFLAG=__DEBUG_
|
||||
LFLAGS = -v -Vt -Tw -c -C -s -A=16 -L$(LIBPATH)
|
||||
!else
|
||||
DEBUGFLAG=
|
||||
LFLAGS = -Vt -Tw -c -C -s -A=16 -L$(LIBPATH)
|
||||
!endif
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------------------------
|
||||
# Rules to build target.EXE
|
||||
#------------------------------------------------------------------------------------------------
|
||||
|
||||
# Compiler rules:
|
||||
#------------------------------------------------------------------------------------------------
|
||||
.path.obj = $(CPPDIR)
|
||||
.cpp.obj:
|
||||
$(CC) {$& }
|
||||
|
||||
|
||||
# Link, RC and IMPLIB rules:
|
||||
#------------------------------------------------------------------------------------------------
|
||||
.path.dll = $(LIBPATH)
|
||||
|
||||
!ifdef STATIC
|
||||
LIBRARIES = $(LIBPATH)\import.lib $(LIBPATH)\mathwl.lib $(LIBPATH)\bivbx.lib $(LIBPATH)\bidsl.lib $(LIBPATH)\owlwl.lib $(LIBPATH)\cwl.lib
|
||||
!else
|
||||
LIBRARIES = $(LIBPATH)\import.lib $(LIBPATH)\mathwl.lib $(LIBPATH)\bivbx.lib $(LIBPATH)\bidsi.lib $(LIBPATH)\owlwi.lib $(LIBPATH)\cwl.lib $(LIBPATH)\crtldll.lib
|
||||
!endif
|
||||
|
||||
.path.lib = $(.path.dll)
|
||||
BLDDIR = .
|
||||
|
||||
.rc.res:
|
||||
$(RC) -r $(RCINCLUDEPATH) -d$(DEBUGFLAG) $&.rc
|
||||
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
##--BEGIN-- QUERY_FILENAME_CPP [[MainFile]]
|
||||
##!@OPT_APPL_HELP
|
||||
[[Project]].exe: [[MainFile]].mak [[MainFile]].cfg $([[Project]]:@= ) $(LIBRARIES) [[MainFile]].rc [[MainFile]].res
|
||||
##@OPT_APPL_HELP
|
||||
##--BEGIN-- @QUERY_APPL_HELP [[HelpFile]]
|
||||
!ifndef NOHELP
|
||||
[[Project]].exe: [[MainFile]].mak [[MainFile]].cfg $([[Project]]:@= ) $(LIBRARIES) [[MainFile]].rc [[MainFile]].res [[HelpFile]].hlp
|
||||
!else
|
||||
[[Project]].exe: [[MainFile]].mak [[MainFile]].cfg $([[Project]]:@= ) $(LIBRARIES) [[MainFile]].rc [[MainFile]].res
|
||||
!endif
|
||||
##--END-- @QUERY_APPL_HELP [[HelpFile]]
|
||||
##--END-- QUERY_FILENAME_CPP [[MainFile]]
|
||||
$(TLINK) $(LFLAGS) @&&|
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
c0wl $([[Project]]:@=)
|
||||
$(BLDDIR)\$&.exe
|
||||
$(BLDDIR)\$&
|
||||
$(LIBRARIES)
|
||||
##QUERY_FILENAME_CPP [[MainFile]] 2
|
||||
$(BLDDIR)\[[MainFile]].def
|
||||
[[MainFile]].res
|
||||
|
|
||||
|
||||
|
||||
##--BEGIN--@OPT_APPL_HELP
|
||||
!ifndef NOHELP
|
||||
##@QUERY_APPL_HELP [[HelpFile]] 3
|
||||
##@OPT_APPL_TOOLBAR
|
||||
[[HelpFile]].hlp: [[HelpFile]].hpj mainhelp.rtf toolbar.rtf keys.rtf terms.rtf
|
||||
##!@OPT_APPL_TOOLBAR
|
||||
[[HelpFile]].hlp: [[HelpFile]].hpj mainhelp.rtf keys.rtf terms.rtf
|
||||
$(HC) [[HelpFile]].hpj
|
||||
!endif
|
||||
##--END--@OPT_APPL_HELP
|
||||
|
||||
!ifndef STATIC
|
||||
DLLFlag=-D_RTLDLL;_BIDSDLL;_OWLDLL
|
||||
!else
|
||||
DLLFlag=
|
||||
!endif
|
||||
|
||||
# cfg file creation. The file is used to specify compiler options for building each .obj:
|
||||
#------------------------------------------------------------------------------------------------
|
||||
##QUERY_FILENAME_CPP [[MainFile]]
|
||||
[[MainFile]].cfg: [[MainFile]].mak
|
||||
!ifdef DEBUG
|
||||
# DEBUG .CFG file
|
||||
copy &&|
|
||||
-DSTRICT
|
||||
-D$(DEBUGFLAG)
|
||||
-D$(DLLFlag)
|
||||
-Fc
|
||||
-O1gmpv
|
||||
-w
|
||||
-WS # Create .EXE
|
||||
-v # Source debugging on
|
||||
-vi # Inline function expansion
|
||||
-c
|
||||
-M
|
||||
-ml # Compile large memory model (DS != SS)
|
||||
-3 # Generate 80286 code
|
||||
-H=$&.csm # Pre-compiled header file name
|
||||
-H"owl\owlpch.h"
|
||||
-D_OWLPCH
|
||||
-wpro # Next three are the Enable warning message types:
|
||||
-weas
|
||||
-wpre
|
||||
-I$(INCLUDEPATH) # Location for include files
|
||||
-L$(LIBPATH) # Location of .LIB files
|
||||
| $&.cfg
|
||||
!else
|
||||
# Non-Debug .CFG file.
|
||||
copy &&|
|
||||
-DSTRICT
|
||||
-D$(DLLFlag)
|
||||
-Fc
|
||||
-O1gmpv
|
||||
-w
|
||||
-WS # Create .EXE
|
||||
-vi # Inline function expansion
|
||||
-c
|
||||
-M
|
||||
-ml # Compile large memory model (DS != SS)
|
||||
-3 # Generate 80286 code
|
||||
-H=$&.csm # Pre-compiled header file name
|
||||
-H"owl\owlpch.h"
|
||||
-D_OWLPCH
|
||||
-wpro # Next three are the Enable warning message types:
|
||||
-weas
|
||||
-wpre
|
||||
-I$(INCLUDEPATH) # Location for include files
|
||||
-L$(LIBPATH) # Location of .LIB files
|
||||
| $&.cfg
|
||||
!endif
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
@@ -0,0 +1,58 @@
|
||||
##"" [[Arg1]]
|
||||
##"" [[Arg2]]
|
||||
##"" [[Arg3]]
|
||||
##"" [[Arg4]]
|
||||
##"" [[Arg5]]
|
||||
##"" [[Arg6]]
|
||||
##"" [[Arg7]]
|
||||
##"" [[Arg8]]
|
||||
##"" [[Arg9]]
|
||||
##"" [[Arg10]]
|
||||
##"" [[Type]]
|
||||
##0 [[Idx]]
|
||||
##"" [[GeneralArg]]
|
||||
##--BEGIN-- AutoParse(CPPArguments, OLEArguments) == TRUE
|
||||
## --BEGIN--AutoCount() [[Count]]
|
||||
## --FOR-- Index = 1 TO Count
|
||||
## :{HAddMet1.SNP}
|
||||
##*
|
||||
## --NEXT-- Index
|
||||
## --BEGIN-- OLEType == "TAutoVoid"
|
||||
## : \\"AUTOFUNC[[Count]]V([[InternalName]], [[InternalName]][[Arg1]][[Arg2]][[Arg3]][[Arg4]][[Arg5]][[Arg6]][[Arg7]][[Arg8]][[Arg9]][[Arg10]], )" AutoFuncLine
|
||||
## --END-- OLEType == "TAutoVoid"
|
||||
## --BEGIN-- OLEType != "TAutoVoid"
|
||||
## :OLEType == CPPType
|
||||
## --BEGIN-- StripPtrRef(CPPType, [[StripCPPType]]) [[AnyStripping]]
|
||||
## :!AnyStripping
|
||||
## :\\"TAutoObjectByVal<[[CPPType]]>" Type
|
||||
##*
|
||||
## :AnyStripping
|
||||
## :\\"TAutoObjectDelete<[[StripCPPType]]>" Type
|
||||
##*
|
||||
## --END-- StripPtrRef(CPPType, [[StripCPPType]]) [[AnyStripping]]
|
||||
##*
|
||||
## :OLEType != CPPType
|
||||
## :\\"[[CPPType]]" Type
|
||||
##*
|
||||
## --BEGIN-- OLEType == "TAutoString"
|
||||
## :"string" == CPPType
|
||||
## :"string" Type
|
||||
##*
|
||||
## :"string" != CPPType
|
||||
## :"TAutoString" Type
|
||||
##*
|
||||
## --END-- OLEType == "TAutoString"
|
||||
## :OLEType == "TAutoCurrency"
|
||||
## :"TAutoCurrency" Type
|
||||
##*
|
||||
## :OLEType == "TAutoDate"
|
||||
## :"TAutoDate" Type
|
||||
##*
|
||||
## :OLEType == "TAutoBool"
|
||||
## :"TAutoBool" Type
|
||||
##*
|
||||
## :\\"AUTOFUNC[[Count]]([[InternalName]], [[InternalName]], [[Type]][[Arg1]][[Arg2]][[Arg3]][[Arg4]][[Arg5]][[Arg6]][[Arg7]][[Arg8]][[Arg9]][[Arg10]], )" AutoFuncLine
|
||||
## --END-- OLEType != "TAutoVoid"
|
||||
## --END--AutoCount() [[Count]]
|
||||
##--END-- AutoParse(CPPArguments, OLEArguments) == TRUE
|
||||
##AutoReset()
|
||||
@@ -0,0 +1,70 @@
|
||||
<<[CPP]
|
||||
##QUERY_SNP_AUTO_KIND [[Kind]]
|
||||
##QUERY_SNP_AUTO_NAME [[InternalName]]
|
||||
##QUERY_SNP_AUTO_GETNAME [[GetName]]
|
||||
##QUERY_SNP_AUTO_SETNAME [[SetName]]
|
||||
##QUERY_SNP_AUTO_CPPTYPE [[CPPType]]
|
||||
##QUERY_SNP_AUTO_OLETYPE [[OLEType]]
|
||||
##QUERY_SNP_AUTO_DESCR [[Description]]
|
||||
##QUERY_SNP_AUTO_GETPROPERTY [[GetProperty]]
|
||||
##QUERY_SNP_AUTO_SETPROPERTY [[SetProperty]]
|
||||
##QUERY_SNP_AUTO_CPPARGS [[CPPArguments]]
|
||||
##QUERY_SNP_AUTO_OLEARGS [[OLEArguments]]
|
||||
##QUERY_SNP_AUTO_VALIDATOR [[Validator]]
|
||||
##"" [[FunctionName]]
|
||||
##"" [[FunctionResult]]
|
||||
##"" [[FunctionDefParam]]
|
||||
##"" [[FindFunction]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##--BEGIN--Kind == VALUE_DATA
|
||||
## :\\"EXPOSE_PROPRW([[InternalName]], [[OLEType]], \"[[InternalName]]\"," FindFunction
|
||||
## :^BOF
|
||||
## :? FindFunction
|
||||
##*
|
||||
## :^BOL
|
||||
## :^SCROLL
|
||||
## :^^
|
||||
##--END--Kind == VALUE_DATA
|
||||
##--BEGIN-- ((Kind == VALUE_PROPERTY) || (Kind == VALUE_METHOD))
|
||||
## --BEGIN-- Kind == VALUE_PROPERTY
|
||||
## :GetProperty == TRUE
|
||||
## :CPPType FunctionResult
|
||||
## :GetName FunctionName
|
||||
## :\\"[[ClassName]]::[[GetName]]" FindFunction
|
||||
##*
|
||||
## :((GetProperty == FALSE) && (SetProperty == TRUE))
|
||||
## :"void" FunctionResult
|
||||
## :SetName FunctionName
|
||||
## :\\"[[ClassName]]::[[SetName]]" FindFunction
|
||||
##*
|
||||
## --END-- Kind == VALUE_PROPERTY
|
||||
## --BEGIN-- Kind == VALUE_METHOD
|
||||
## :CPPType FunctionResult
|
||||
## :InternalName FunctionName
|
||||
## :CPPArguments FunctionDefParam
|
||||
## :\\"[[ClassName]]::[[InternalName]]" FindFunction
|
||||
##*
|
||||
## --END-- Kind == VALUE_METHOD
|
||||
## :^BOF
|
||||
## :FALSE [[Search]]
|
||||
## :0 [[YPosition]]
|
||||
## --BEGIN-- TRUE
|
||||
## :{FindFunc.SNP}
|
||||
## --BEGIN-- Search == -1
|
||||
## :^BOF
|
||||
## :? FindFunction Search
|
||||
## :YPos() YPosition
|
||||
## --END-- Search == -1
|
||||
## --BEGIN-- Search == 0
|
||||
## :QUERY_FILE_CPP [[FileName]]
|
||||
## :%\\"Unable to locate function [[FunctionName]] implementation in [[FileName]]. "
|
||||
## --END-- Search == 0
|
||||
## --END-- TRUE
|
||||
##^@YPosition
|
||||
##^BOL
|
||||
##^SCROLL
|
||||
##^^
|
||||
##--END-- ((Kind == VALUE_PROPERTY) || (Kind == VALUE_METHOD))
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##*
|
||||
>>[CPP]
|
||||
|
After Width: | Height: | Size: 358 B |
|
After Width: | Height: | Size: 322 B |
|
After Width: | Height: | Size: 358 B |
|
After Width: | Height: | Size: 358 B |
|
After Width: | Height: | Size: 358 B |
|
After Width: | Height: | Size: 322 B |
|
After Width: | Height: | Size: 322 B |
|
After Width: | Height: | Size: 322 B |
|
After Width: | Height: | Size: 518 B |
|
After Width: | Height: | Size: 358 B |
@@ -0,0 +1,972 @@
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
/* Project [[Project]]
|
||||
##@QUERY_PRJ_COMPANY [[CompanyName]] 2
|
||||
##@QUERY_PRJ_COPYRIGHT [[Copyright]] 2
|
||||
##\\Copyright Copyright 2
|
||||
[[CompanyName]]
|
||||
[[Copyright]]
|
||||
|
||||
##@QUERY_TARGET_NAME [[Target]]
|
||||
SUBSYSTEM: [[Target]] Application
|
||||
##QUERY_FILENAME_H [[Filename]]
|
||||
FILE: [[Filename]].rc
|
||||
##@QUERY_PRJ_USER [[Author]]
|
||||
AUTHOR: [[Author]]
|
||||
|
||||
|
||||
OVERVIEW
|
||||
========
|
||||
All resources defined here.
|
||||
*/
|
||||
|
||||
#if !defined(WORKSHOP_INVOKED)
|
||||
#include <windows.h>
|
||||
#endif
|
||||
##QUERY_FILENAME_CPP [[Filename]]
|
||||
#include "[[Filename]].rh"
|
||||
|
||||
##0 [[HAXRes]]
|
||||
##--BEGIN-- "" [[MenuName]]
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI
|
||||
##: "MDI_MENU" MenuName
|
||||
[[MenuName]] MENU
|
||||
##((@QUERY_APPL_MODEL == VALUE_SDI) || (@QUERY_APPL_MODEL == VALUE_DIALOG))
|
||||
##: "SDI_MENU" MenuName
|
||||
[[MenuName]] MENU
|
||||
##:CreateRsrc("MENU", \\"[[MenuName]]", [[AssociatedID]])
|
||||
##:AssociatedID HAXRes
|
||||
BEGIN
|
||||
POPUP "&File"
|
||||
BEGIN
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI 2
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_MDIFILENEW")
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_MDIFILEOPEN")
|
||||
MENUITEM "&New", CM_MDIFILENEW
|
||||
MENUITEM "&Open...", CM_MDIFILEOPEN
|
||||
##((@QUERY_APPL_MODEL == VALUE_SDI) || (@QUERY_APPL_MODEL == VALUE_DIALOG)) 2
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_FILENEW")
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_FILEOPEN")
|
||||
MENUITEM "&New", CM_FILENEW
|
||||
MENUITEM "&Open...", CM_FILEOPEN
|
||||
##--BEGIN-- ((@QUERY_APPL_MODEL != VALUE_SDI) && (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_FILECLOSE")
|
||||
MENUITEM "&Close", CM_FILECLOSE
|
||||
##--END-- ((@QUERY_APPL_MODEL != VALUE_SDI) && (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
MENUITEM SEPARATOR
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_FILESAVE")
|
||||
MENUITEM "&Save", CM_FILESAVE, GRAYED
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_FILESAVEAS")
|
||||
MENUITEM "Save &As...", CM_FILESAVEAS, GRAYED
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
MENUITEM SEPARATOR
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_FILEPRINTPREVIEW")
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_FILEPRINT")
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_FILEPRINTERSETUP")
|
||||
MENUITEM "Print Pre&view...", CM_FILEPRINTPREVIEW, GRAYED
|
||||
MENUITEM "&Print...", CM_FILEPRINT, GRAYED
|
||||
MENUITEM "P&rint Setup...", CM_FILEPRINTERSETUP, GRAYED
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
MENUITEM SEPARATOR
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EXIT")
|
||||
MENUITEM "E&xit\tAlt+F4", CM_EXIT
|
||||
END
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
POPUP "&Edit"
|
||||
BEGIN
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITUNDO")
|
||||
MENUITEM "&Undo\tAlt+BkSp", CM_EDITUNDO, GRAYED
|
||||
MENUITEM SEPARATOR
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITCUT")
|
||||
MENUITEM "Cu&t\tShift+Del", CM_EDITCUT, GRAYED
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITCOPY")
|
||||
MENUITEM "&Copy\tCtrl+Ins", CM_EDITCOPY, GRAYED
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITPASTE")
|
||||
MENUITEM "&Paste\tShift+Ins", CM_EDITPASTE, GRAYED
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE == VALUE_CONTAINER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITPASTESPECIAL")
|
||||
MENUITEM "Paste &Special...", CM_EDITPASTESPECIAL, GRAYED
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITPASTELINK")
|
||||
MENUITEM "Paste &Link", CM_EDITPASTELINK, GRAYED
|
||||
##--END-- ((@QUERY_APPL_OLE == VALUE_CONTAINER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
MENUITEM SEPARATOR
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITCLEAR")
|
||||
MENUITEM "Clear &All\tCtrl+Del", CM_EDITCLEAR, GRAYED
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITDELETE")
|
||||
MENUITEM "&Delete\tDel", CM_EDITDELETE, GRAYED
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE == VALUE_CONTAINER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
MENUITEM SEPARATOR
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITINSERTOBJECT")
|
||||
MENUITEM "Insert &Object...", CM_EDITINSERTOBJECT, GRAYED
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITLINKS")
|
||||
MENUITEM "&Links...", CM_EDITLINKS, GRAYED
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITOBJECT")
|
||||
MENUITEM "&Object", CM_EDITOBJECT, GRAYED
|
||||
MENUITEM SEPARATOR
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITSHOWOBJECTS")
|
||||
MENUITEM "&Show Objects", CM_EDITSHOWOBJECTS
|
||||
##--END-- ((@QUERY_APPL_OLE == VALUE_CONTAINER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
END
|
||||
|
||||
POPUP "&Search"
|
||||
BEGIN
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITFIND")
|
||||
MENUITEM "&Find...", CM_EDITFIND, GRAYED
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITREPLACE")
|
||||
MENUITEM "&Replace...", CM_EDITREPLACE, GRAYED
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_EDITFINDNEXT")
|
||||
MENUITEM "&Next\aF3", CM_EDITFINDNEXT, GRAYED
|
||||
END
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
POPUP "&Window"
|
||||
BEGIN
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_CASCADECHILDREN")
|
||||
MENUITEM "&Cascade", CM_CASCADECHILDREN
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_TILECHILDREN")
|
||||
MENUITEM "&Tile", CM_TILECHILDREN
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_ARRANGEICONS")
|
||||
MENUITEM "Arrange &Icons", CM_ARRANGEICONS
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_CLOSECHILDREN")
|
||||
MENUITEM "C&lose All", CM_CLOSECHILDREN
|
||||
END
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
POPUP "&Help"
|
||||
BEGIN
|
||||
##@OPT_APPL_HELP 3
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_HELPCONTENTS")
|
||||
MENUITEM "&Contents", CM_HELPCONTENTS
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_HELPUSING")
|
||||
MENUITEM "&Using help", CM_HELPUSING
|
||||
MENUITEM SEPARATOR
|
||||
##:AddRsrcItem(HAXRes, "MENUITEM", "", "CM_HELPABOUT")
|
||||
MENUITEM "&About...", CM_HELPABOUT
|
||||
END
|
||||
|
||||
END
|
||||
##--END-- "" [[MenuName]]
|
||||
|
||||
|
||||
// Accelerator table for short-cut to menu commands. (include\owl\editfile.rc)
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI
|
||||
MDI_MENU ACCELERATORS
|
||||
##((@QUERY_APPL_MODEL == VALUE_SDI) || (@QUERY_APPL_MODEL == VALUE_DIALOG))
|
||||
SDI_MENU ACCELERATORS
|
||||
BEGIN
|
||||
VK_DELETE, CM_EDITDELETE, VIRTKEY
|
||||
VK_DELETE, CM_EDITCUT, VIRTKEY, SHIFT
|
||||
VK_INSERT, CM_EDITCOPY, VIRTKEY, CONTROL
|
||||
VK_INSERT, CM_EDITPASTE, VIRTKEY, SHIFT
|
||||
VK_DELETE, CM_EDITCLEAR, VIRTKEY, CONTROL
|
||||
VK_BACK, CM_EDITUNDO, VIRTKEY, ALT
|
||||
VK_F3, CM_EDITFINDNEXT, VIRTKEY
|
||||
END
|
||||
|
||||
|
||||
##@OPT_APPL_HELP 4
|
||||
// Context sensitive help cursor.
|
||||
IDC_HELPCURSOR CURSOR "help.cur"
|
||||
|
||||
|
||||
##--BEGIN-- @OPT_APPL_DOCVIEW
|
||||
// Menu merged in when TEditView is active, notice the extra MENUITEM SEPARATORs which are
|
||||
// for menu negotation. These separators are used as group markers by OWL.
|
||||
IDM_EDITVIEW MENU LOADONCALL MOVEABLE PURE DISCARDABLE
|
||||
BEGIN
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
POPUP "&Edit"
|
||||
BEGIN
|
||||
MENUITEM "&Undo\aCtrl+Z", CM_EDITUNDO
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Cut\aCtrl+X", CM_EDITCUT
|
||||
MENUITEM "C&opy\aCtrl+C", CM_EDITCOPY
|
||||
MENUITEM "&Paste\aCtrl+V", CM_EDITPASTE
|
||||
MENUITEM "&Delete\aDel", CM_EDITDELETE
|
||||
MENUITEM "C&lear All\aCtrl+Del", CM_EDITCLEAR
|
||||
END
|
||||
|
||||
POPUP "&Search"
|
||||
BEGIN
|
||||
MENUITEM "&Find...", CM_EDITFIND
|
||||
MENUITEM "&Replace...", CM_EDITREPLACE
|
||||
MENUITEM "&Next\aF3", CM_EDITFINDNEXT
|
||||
END
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
END
|
||||
|
||||
|
||||
// Menu merged in when TListView is active, notice the extra MENUITEM SEPARATORs which are
|
||||
// for menu negotation. These separators are used as group markers by OWL.
|
||||
IDM_LISTVIEW MENU LOADONCALL MOVEABLE PURE DISCARDABLE
|
||||
BEGIN
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
POPUP "&Edit"
|
||||
BEGIN
|
||||
MENUITEM "&Undo\aCtrl+Z", CM_EDITUNDO
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Cut\aCtrl+X", CM_EDITCUT
|
||||
MENUITEM "C&opy\aCtrl+C", CM_EDITCOPY
|
||||
MENUITEM "&Paste\aCtrl+V", CM_EDITPASTE
|
||||
MENUITEM "&Delete\aDel", CM_EDITDELETE
|
||||
MENUITEM "&Add Item\aIns", CM_EDITADD
|
||||
MENUITEM "&Edit Item\aEnter", CM_EDITEDIT
|
||||
MENUITEM "C&lear All\aCtrl+Del", CM_EDITCLEAR
|
||||
END
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
END
|
||||
|
||||
|
||||
IDM_DOCMANAGERFILE MENU LOADONCALL MOVEABLE PURE DISCARDABLE
|
||||
BEGIN
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI 2
|
||||
MENUITEM "&New", CM_MDIFILENEW
|
||||
MENUITEM "&Open...", CM_MDIFILEOPEN
|
||||
##((@QUERY_APPL_MODEL == VALUE_SDI) || (@QUERY_APPL_MODEL == VALUE_DIALOG)) 2
|
||||
MENUITEM "&New", CM_FILENEW
|
||||
MENUITEM "&Open...", CM_FILEOPEN
|
||||
##--BEGIN-- ((@QUERY_APPL_MODEL != VALUE_SDI) && (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
MENUITEM "&Close", CM_FILECLOSE
|
||||
##--END-- ((@QUERY_APPL_MODEL != VALUE_SDI) && (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Save", CM_FILESAVE, GRAYED
|
||||
MENUITEM "Save &As...", CM_FILESAVEAS, GRAYED
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Print Pre&view...", CM_FILEPRINTPREVIEW, GRAYED
|
||||
MENUITEM "&Print...", CM_FILEPRINT, GRAYED
|
||||
MENUITEM "P&rint Setup...", CM_FILEPRINTERSETUP, GRAYED
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "E&xit\tAlt+F4", CM_EXIT
|
||||
END
|
||||
|
||||
|
||||
##--END-- @OPT_APPL_DOCVIEW
|
||||
##--BEGIN-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## --BEGIN-- @QUERY_APPL_MODEL == VALUE_SDI
|
||||
// Menu merged in when TOleView is embedded and edited out of place.
|
||||
IDM_OLEVIEWEMBED MENU LOADONCALL MOVEABLE PURE DISCARDABLE
|
||||
BEGIN
|
||||
POPUP "&File"
|
||||
BEGIN
|
||||
MENUITEM "&Close", CM_FILECLOSE
|
||||
MENUITEM Separator
|
||||
MENUITEM "E&xit", CM_EXIT
|
||||
END
|
||||
|
||||
MENUITEM Separator
|
||||
|
||||
POPUP "&Edit"
|
||||
BEGIN
|
||||
MENUITEM "&Undo\aCtrl+Z", CM_EDITUNDO
|
||||
MENUITEM Separator
|
||||
MENUITEM "&Cut\aCtrl+X", CM_EDITCUT
|
||||
MENUITEM "C&opy\aCtrl+C", CM_EDITCOPY
|
||||
MENUITEM "&Paste\aCtrl+V", CM_EDITPASTE
|
||||
MENUITEM "Paste &Special...", CM_EDITPASTESPECIAL
|
||||
MENUITEM "Paste &Link", CM_EDITPASTELINK
|
||||
MENUITEM "&Delete\aDel", CM_EDITDELETE
|
||||
MENUITEM Separator
|
||||
MENUITEM "&Insert Object...", CM_EDITINSERTOBJECT
|
||||
MENUITEM "&Links...", CM_EDITLINKS
|
||||
MENUITEM "&Object", CM_EDITOBJECT
|
||||
MENUITEM Separator
|
||||
MENUITEM "&Show Objects", CM_EDITSHOWOBJECTS
|
||||
END
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
POPUP "&Help"
|
||||
BEGIN
|
||||
##@OPT_APPL_HELP 3
|
||||
MENUITEM "&Contents", CM_HELPCONTENTS
|
||||
MENUITEM "&Using help", CM_HELPUSING
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&About...", CM_HELPABOUT
|
||||
END
|
||||
END
|
||||
|
||||
|
||||
## --END-- @QUERY_APPL_MODEL == VALUE_SDI
|
||||
// Menu merged in when TOleView is active, notice the extra MENUITEM SEPARATORs which are
|
||||
// for menu negotation. These separators are used as group markers by OWL.
|
||||
IDM_OLEVIEW MENU LOADONCALL MOVEABLE PURE DISCARDABLE
|
||||
BEGIN
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
POPUP "&Edit"
|
||||
BEGIN
|
||||
MENUITEM "&Undo\aCtrl+Z", CM_EDITUNDO
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Cut\aCtrl+X", CM_EDITCUT
|
||||
MENUITEM "C&opy\aCtrl+C", CM_EDITCOPY
|
||||
MENUITEM "&Paste\aCtrl+V", CM_EDITPASTE
|
||||
MENUITEM "Paste &Special...", CM_EDITPASTESPECIAL
|
||||
MENUITEM "Paste &Link", CM_EDITPASTELINK
|
||||
MENUITEM "&Delete\aDel", CM_EDITDELETE
|
||||
##--BEGIN-- ((@QUERY_APPL_OLE == VALUE_CONTAINER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Insert &Object...", CM_EDITINSERTOBJECT
|
||||
MENUITEM "&Links...", CM_EDITLINKS
|
||||
MENUITEM "&Object", CM_EDITOBJECT
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Show Objects", CM_EDITSHOWOBJECTS
|
||||
##--END-- ((@QUERY_APPL_OLE == VALUE_CONTAINER) || (@QUERY_APPL_OLE == VALUE_OLEBOTH))
|
||||
END
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
POPUP "&Help"
|
||||
BEGIN
|
||||
##@OPT_APPL_HELP 3
|
||||
MENUITEM "&Contents", CM_HELPCONTENTS
|
||||
MENUITEM "&Using help", CM_HELPUSING
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&About...", CM_HELPABOUT
|
||||
END
|
||||
END
|
||||
|
||||
IDM_OLEPOPUP MENU LOADONCALL MOVEABLE PURE DISCARDABLE
|
||||
BEGIN
|
||||
POPUP "OLE"
|
||||
BEGIN
|
||||
MENUITEM "&Cut\aCtrl+X", CM_EDITCUT
|
||||
MENUITEM "C&opy\aCtrl+C", CM_EDITCOPY
|
||||
MENUITEM "&Delete\aDel", CM_EDITDELETE
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Object", CM_EDITOBJECT
|
||||
END
|
||||
END
|
||||
|
||||
|
||||
##--END-- @QUERY_APPL_OLE != VALUE_NOOLE
|
||||
//
|
||||
// Table of help hints displayed in the status bar.
|
||||
//
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
-1, "File/document operations"
|
||||
##(@QUERY_APPL_MODEL == VALUE_MDI) 2
|
||||
CM_MDIFILENEW, "Creates a new document"
|
||||
CM_MDIFILEOPEN, "Opens an existing document"
|
||||
##--BEGIN-- ((@QUERY_APPL_MODEL == VALUE_SDI) || (@QUERY_APPL_MODEL == VALUE_DIALOG))
|
||||
##!@OPT_APPL_DOCVIEW 2
|
||||
CM_FILENEW, "Creates a new window"
|
||||
CM_FILEOPEN, "Opens a window"
|
||||
##@OPT_APPL_DOCVIEW 2
|
||||
CM_FILENEW, "Creates a new document"
|
||||
CM_FILEOPEN, "Opens an existing document"
|
||||
##--END-- ((@QUERY_APPL_MODEL == VALUE_SDI) || (@QUERY_APPL_MODEL == VALUE_DIALOG))
|
||||
##@OPT_APPL_DOCVIEW 2
|
||||
CM_VIEWCREATE, "Create a new view for this document"
|
||||
CM_FILEREVERT, "Reverts changes to last document save"
|
||||
##--END-- @OPT_APPL_DOCVIEW
|
||||
CM_FILECLOSE, "Close this document"
|
||||
CM_FILESAVE, "Saves this document"
|
||||
CM_FILESAVEAS, "Saves this document with a new name"
|
||||
##@OPT_APPL_PRINTING 3
|
||||
CM_FILEPRINT, "Print this document"
|
||||
CM_FILEPRINTERSETUP, "Setup this document print characteristics"
|
||||
CM_FILEPRINTPREVIEW, "Display full pages as read-only"
|
||||
CM_EXIT, "Quits [[TApplication]] and prompts to save the documents"
|
||||
CM_EDITUNDO-1, "Edit operations"
|
||||
CM_EDITUNDO, "Reverses the last operation"
|
||||
CM_EDITCUT, "Cuts the selection and puts it on the Clipboard"
|
||||
CM_EDITCOPY, "Copies the selection and puts it on the Clipboard"
|
||||
CM_EDITPASTE, "Inserts the clipboard contents at the insertion point"
|
||||
##--BEGIN-- (@OPT_APPL_DOCVIEW && (@QUERY_APPL_OLE != VALUE_NOOLE))
|
||||
CM_EDITPASTESPECIAL, "Select paste option and format"
|
||||
CM_EDITPASTELINK, "Link with object on the clipboard"
|
||||
##--END-- (@OPT_APPL_DOCVIEW && (@QUERY_APPL_OLE != VALUE_NOOLE))
|
||||
CM_EDITDELETE, "Deletes the selection"
|
||||
CM_EDITCLEAR, "Clear the document"
|
||||
##--BEGIN-- (@OPT_APPL_DOCVIEW && (@QUERY_APPL_OLE != VALUE_NOOLE))
|
||||
CM_EDITLINKS, "Edit links to the document"
|
||||
CM_EDITINSERTOBJECT, "Insert an object into the document"
|
||||
CM_EDITOBJECT, "Ask the selected object to perform an action"
|
||||
CM_EDITSHOWOBJECTS, "Hilight selected object"
|
||||
##--END-- (@OPT_APPL_DOCVIEW && (@QUERY_APPL_OLE != VALUE_NOOLE))
|
||||
CM_EDITADD, "Insert a new line"
|
||||
CM_EDITEDIT, "Edit the current line"
|
||||
CM_EDITFIND-1, "Search/replace operations"
|
||||
CM_EDITFIND, "Finds the specified text"
|
||||
CM_EDITREPLACE, "Finds the specified text and changes it"
|
||||
CM_EDITFINDNEXT, "Finds the next match"
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
CM_CASCADECHILDREN-1, "Window arrangement and selection"
|
||||
CM_CASCADECHILDREN, "Cascades open windows"
|
||||
CM_TILECHILDREN, "Tiles open windows"
|
||||
CM_ARRANGEICONS, "Arranges iconic windows along bottom"
|
||||
CM_CLOSECHILDREN, "Closes all open windows"
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
##@OPT_APPL_HELP 3
|
||||
CM_HELPCONTENTS-1, "Access online help"
|
||||
CM_HELPCONTENTS, "Help table of contents"
|
||||
CM_HELPUSING, "Help on using online Help"
|
||||
##@OPT_APPL_HELP != TRUE
|
||||
CM_HELPABOUT-1, "Access About"
|
||||
##@QUERY_PRJ_NAME [[Project]]
|
||||
CM_HELPABOUT, "About the [[Project]] application"
|
||||
END
|
||||
|
||||
|
||||
//
|
||||
// OWL string table
|
||||
//
|
||||
|
||||
// EditFile (include\owl\editfile.rc and include\owl\editsear.rc)
|
||||
STRINGTABLE LOADONCALL MOVEABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_CANNOTFIND, "Cannot find ""%s""."
|
||||
##!@OPT_APPL_DOCVIEW
|
||||
IDS_UNTITLED, "Document"
|
||||
IDS_UNABLEREAD, "Unable to read file %s from disk."
|
||||
IDS_UNABLEWRITE, "Unable to write file %s to disk."
|
||||
IDS_FILECHANGED, "The text in the %s file has changed.\n\nDo you want to save the changes?"
|
||||
IDS_FILEFILTER, "Text files (*.TXT)|*.TXT|AllFiles (*.*)|*.*|"
|
||||
END
|
||||
##--BEGIN-- @OPT_APPL_DOCVIEW
|
||||
|
||||
|
||||
// ListView (include\owl\listview.rc)
|
||||
STRINGTABLE LOADONCALL MOVEABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_LISTNUM, "Line number %d"
|
||||
END
|
||||
|
||||
|
||||
// Doc/View (include\owl\docview.rc)
|
||||
STRINGTABLE LOADONCALL MOVEABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_DOCMANAGERFILE, "&File"
|
||||
IDS_DOCLIST, "--Document Type--"
|
||||
IDS_VIEWLIST, "--View Type--"
|
||||
IDS_UNTITLED, "Document"
|
||||
IDS_UNABLEOPEN, "Unable to open document."
|
||||
IDS_UNABLECLOSE, "Unable to close document."
|
||||
IDS_READERROR, "Document read error."
|
||||
IDS_WRITEERROR, "Document write error."
|
||||
IDS_DOCCHANGED, "The document has been changed.\n\nDo you want to save the changes?"
|
||||
IDS_NOTCHANGED, "The document has not been changed."
|
||||
IDS_NODOCMANAGER, "Document Manager not present."
|
||||
IDS_NOMEMORYFORVIEW, "Insufficient memory for view."
|
||||
IDS_DUPLICATEDOC, "Document already loaded."
|
||||
END
|
||||
##--BEGIN--@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
|
||||
|
||||
// OLEView (include\owl\oleview.rc)
|
||||
STRINGTABLE LOADONCALL MOVEABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_EDITOBJECT, "&Object"
|
||||
IDS_EDITCONVERT, "Convert..."
|
||||
IDS_CLOSESERVER, "Close and Return to "
|
||||
IDS_EXITSERVER, "Exit and Return to "
|
||||
END
|
||||
|
||||
STRINGTABLE LOADONCALL MOVEABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_CFTEXT, "Text\nplain text"
|
||||
IDS_CFBITMAP, "Bitmap\na bitmap image"
|
||||
IDS_CFMETAFILE, "Metafile Picture\na static picture"
|
||||
IDS_CFSYLK, "Sylk\na spreadsheet"
|
||||
IDS_CFDIF, "DIF\na document"
|
||||
IDS_CFTIFF, "Tagged Image File Format\na TIFF image file"
|
||||
IDS_CFOEMTEXT, "OEM Text\nan OEM text"
|
||||
IDS_CFDIB, "DIB\na device independent bitmap image"
|
||||
IDS_CFPALETTE, "Palette\na color palette"
|
||||
IDS_CFPENDATA, "Pen Data\npen data"
|
||||
IDS_CFRIFF, "RIFF\na RIFF media file"
|
||||
IDS_CFWAVE, "Wave\na sound wave file"
|
||||
IDS_CFUNICODETEXT, "UniCode Text\nUnicode text"
|
||||
IDS_CFENHMETAFILE, "Enhanced Metafile\nan enhanced metafile picture"
|
||||
IDS_IN, " in "
|
||||
END
|
||||
##--END--@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
##--END-- @OPT_APPL_DOCVIEW
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
|
||||
|
||||
// Printer (include\owl\printer.rc)
|
||||
STRINGTABLE LOADONCALL MOVEABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_PRNON, " on "
|
||||
IDS_PRNERRORTEMPLATE, "'%s' not printed. %s."
|
||||
IDS_PRNOUTOFMEMORY, "Out of memory"
|
||||
IDS_PRNOUTOFDISK, "Out of disk space"
|
||||
IDS_PRNCANCEL, "Printing canceled"
|
||||
IDS_PRNMGRABORT, "Printing aborted in Print Manager"
|
||||
IDS_PRNGENERROR, "Error encountered during print"
|
||||
IDS_PRNERRORCAPTION, "Print Error"
|
||||
END
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
|
||||
|
||||
// Exception string resources (include\owl\except.rc)
|
||||
STRINGTABLE LOADONCALL MOVEABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_OWLEXCEPTION, "ObjectWindows Exception"
|
||||
IDS_UNHANDLEDXMSG, "Unhandled Exception"
|
||||
IDS_OKTORESUME, "OK to resume?"
|
||||
IDS_UNKNOWNEXCEPTION, "Unknown exception"
|
||||
|
||||
IDS_UNKNOWNERROR, "Unknown error"
|
||||
IDS_NOAPP, "No application object"
|
||||
IDS_OUTOFMEMORY, "Out of memory"
|
||||
IDS_INVALIDMODULE, "Invalid module specified for window"
|
||||
IDS_INVALIDMAINWINDOW, "Invalid MainWindow"
|
||||
IDS_VBXLIBRARYFAIL, "VBX Library init failure"
|
||||
|
||||
IDS_INVALIDWINDOW, "Invalid window %s"
|
||||
IDS_INVALIDCHILDWINDOW, "Invalid child window %s"
|
||||
IDS_INVALIDCLIENTWINDOW, "Invalid client window %s"
|
||||
|
||||
IDS_CLASSREGISTERFAIL, "Class registration fail for window %s"
|
||||
IDS_CHILDREGISTERFAIL, "Child class registration fail for window %s"
|
||||
IDS_WINDOWCREATEFAIL, "Create fail for window %s"
|
||||
IDS_WINDOWEXECUTEFAIL, "Execute fail for window %s"
|
||||
IDS_CHILDCREATEFAIL, "Child create fail for window %s"
|
||||
|
||||
IDS_MENUFAILURE, "Menu creation failure"
|
||||
IDS_VALIDATORSYNTAX, "Validator syntax error"
|
||||
IDS_PRINTERERROR, "Printer error"
|
||||
|
||||
IDS_LAYOUTINCOMPLETE, "Incomplete layout constraints specified in window %s"
|
||||
IDS_LAYOUTBADRELWIN, "Invalid relative window specified in layout constraint in window %s"
|
||||
|
||||
IDS_GDIFAILURE, "GDI failure"
|
||||
IDS_GDIALLOCFAIL, "GDI allocate failure"
|
||||
IDS_GDICREATEFAIL, "GDI creation failure"
|
||||
IDS_GDIRESLOADFAIL, "GDI resource load failure"
|
||||
IDS_GDIFILEREADFAIL, "GDI file read failure"
|
||||
IDS_GDIDELETEFAIL, "GDI object %X delete failure"
|
||||
IDS_GDIDESTROYFAIL, "GDI object %X destroy failure"
|
||||
IDS_INVALIDDIBHANDLE, "Invalid DIB handle %X"
|
||||
END
|
||||
|
||||
|
||||
// General Window's status bar messages. (include\owl\statusba.rc)
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_MODES "EXT|CAPS|NUM|SCRL|OVR|REC"
|
||||
IDS_MODESOFF " | | | | | "
|
||||
SC_SIZE, "Changes the size of the window"
|
||||
SC_MOVE, "Moves the window to another position"
|
||||
SC_MINIMIZE, "Reduces the window to an icon"
|
||||
SC_MAXIMIZE, "Enlarges the window to it maximum size"
|
||||
SC_RESTORE, "Restores the window to its previous size"
|
||||
SC_CLOSE, "Closes the window"
|
||||
SC_TASKLIST, "Opens task list"
|
||||
SC_NEXTWINDOW, "Switches to next window"
|
||||
END
|
||||
|
||||
|
||||
// Validator messages (include\owl\validate.rc)
|
||||
STRINGTABLE LOADONCALL MOVEABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_VALPXPCONFORM "Input does not conform to picture:\n""%s"""
|
||||
IDS_VALINVALIDCHAR "Invalid character in input"
|
||||
IDS_VALNOTINRANGE "Value is not in the range %ld to %ld."
|
||||
IDS_VALNOTINLIST "Input is not in valid-list"
|
||||
END
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##--BEGIN-- @OPT_APPL_TOOLBAR
|
||||
|
||||
|
||||
//
|
||||
// Bitmaps used by the speedbar. Each bitmap is associated with a
|
||||
// particular menu command.
|
||||
//
|
||||
##@QUERY_APPL_MODEL == VALUE_MDI 2
|
||||
CM_MDIFILENEW BITMAP "new.bmp"
|
||||
CM_MDIFILEOPEN BITMAP "open.bmp"
|
||||
##((@QUERY_APPL_MODEL == VALUE_SDI) || (@QUERY_APPL_MODEL == VALUE_DIALOG)) 2
|
||||
CM_FILENEW BITMAP "new.bmp"
|
||||
CM_FILEOPEN BITMAP "open.bmp"
|
||||
CM_FILESAVE BITMAP "save.bmp"
|
||||
|
||||
CM_EDITUNDO BITMAP "undo.bmp"
|
||||
CM_EDITCUT BITMAP "cut.bmp"
|
||||
CM_EDITCOPY BITMAP "copy.bmp"
|
||||
CM_EDITPASTE BITMAP "paste.bmp"
|
||||
|
||||
CM_EDITFIND BITMAP "find.bmp"
|
||||
CM_EDITFINDNEXT BITMAP "findnext.bmp"
|
||||
##@OPT_APPL_PRINTING 2
|
||||
|
||||
CM_FILEPRINTPREVIEW BITMAP "preview.bmp"
|
||||
##@OPT_APPL_HELP 2
|
||||
|
||||
CM_HELPCONTENTS BITMAP "help.bmp"
|
||||
##--END-- @OPT_APPL_TOOLBAR
|
||||
##(((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU) || (@QUERY_APPL_MODEL != VALUE_DIALOG))
|
||||
##(@OPT_APPL_TOOLBAR || @OPT_APPL_PRINTING) 2
|
||||
|
||||
CM_FILEPRINT BITMAP "print.bmp"
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
|
||||
|
||||
//
|
||||
// Print Preview speed bar bitmaps
|
||||
//
|
||||
APX_PPR_PREVIOUS BITMAP "previous.bmp"
|
||||
APX_PPR_NEXT BITMAP "next.bmp"
|
||||
APX_PPR_ONEUP BITMAP "preview1.bmp"
|
||||
APX_PPR_TWOUP BITMAP "preview2.bmp"
|
||||
APX_PPR_DONE BITMAP "prexit.bmp"
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
|
||||
|
||||
//
|
||||
// Misc application definitions
|
||||
//
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
|
||||
// MDI document ICON
|
||||
##:<<TMDIChild QUERY_WIND_ICON [[Icon]]
|
||||
IDI_DOC ICON "[[Icon]]"
|
||||
|
||||
// Application ICON
|
||||
##<<TApplication QUERY_WIND_ICON [[Icon]]
|
||||
IDI_MDIAPPLICATION ICON "[[Icon]]"
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_MDI
|
||||
##--BEGIN-- ((@QUERY_APPL_MODEL == VALUE_SDI) || (@QUERY_APPL_MODEL == VALUE_DIALOG))
|
||||
|
||||
// Application ICON
|
||||
##<<TApplication QUERY_WIND_ICON [[Icon]]
|
||||
IDI_SDIAPPLICATION ICON "[[Icon]]"
|
||||
##--END-- ((@QUERY_APPL_MODEL == VALUE_SDI) || (@QUERY_APPL_MODEL == VALUE_DIALOG))
|
||||
|
||||
|
||||
##--BEGIN-- @QUERY_APPL_MODEL == VALUE_DIALOG
|
||||
// Client Dialog
|
||||
## :0 [[HAXRes]]
|
||||
## :@QUERY_APPL_DLGCLIENT [[ClientClass]]
|
||||
## :<<*ClientClass QUERY_DLOG [[DLogRsrc]]
|
||||
## --BEGIN-- TRUE
|
||||
## :CreateRsrc("DIALOG", \\"[[DLogRsrc]]", [[AssociatedID]])
|
||||
## :AssociatedID HAXRes
|
||||
## --BEGIN-- @QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
[[DLogRsrc]] DIALOG 6, 15, 189, 124
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CLASS "BorDlg_Gray"
|
||||
CAPTION "Dialog Client"
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
CONTROL "", -1, "BorShade", BSS_HDIP | BSS_LEFT | WS_CHILD | WS_VISIBLE, 0, 83, 189, 3
|
||||
## :AddRsrcItem(HAXRes, "BUTTON", "DEFPUSHBUTTON", "IDOK")
|
||||
CONTROL "", IDOK, "BorBtn", BS_DEFPUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 48, 92, 37, 25
|
||||
## :AddRsrcItem(HAXRes, "BUTTON", "PUSHBUTTON", "IDCANCEL")
|
||||
CONTROL "", IDCANCEL, "BorBtn", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 104, 92, 37, 25
|
||||
END
|
||||
## --END-- @QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
## --BEGIN-- @QUERY_APPL_CONTROL != VALUE_BWCC
|
||||
[[DLogRsrc]] DIALOG 6, 15, 207, 111
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Dialog Client"
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
## :AddRsrcItem(HAXRes, "BUTTON", "DEFPUSHBUTTON", "IDOK")
|
||||
DEFPUSHBUTTON "OK", IDOK, 40, 88, 50, 14
|
||||
## :AddRsrcItem(HAXRes, "BUTTON", "PUSHBUTTON", "IDCANCEL")
|
||||
PUSHBUTTON "Cancel", IDCANCEL, 116, 88, 50, 14
|
||||
END
|
||||
## --END-- @QUERY_APPL_CONTROL != VALUE_BWCC
|
||||
|
||||
|
||||
## --END-- TRUE
|
||||
##--END-- @QUERY_APPL_MODEL == VALUE_DIALOG
|
||||
// About box.
|
||||
##--BEGIN-- @QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
|
||||
// BWCC bitmaps for the about box.
|
||||
#define IDB_BWCC_ABOUT_ICON 1450
|
||||
#define IDB_BWCC_ABOUT_ICON2 2450 // This definition is for EGA and related video modes.
|
||||
|
||||
IDB_BWCC_ABOUT_ICON BITMAP "borabout.bmp"
|
||||
IDB_BWCC_ABOUT_ICON2 BITMAP "borabout.bmp"
|
||||
|
||||
##--END-- @QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
##0 [[HAXRes]]
|
||||
##"" [[DLogRsrc]]
|
||||
##--BEGIN-- ((@QUERY_APPL_MODEL != VALUE_DIALOG) || ((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU))
|
||||
## :<<TDialog QUERY_DLOG DLogRsrc
|
||||
## :CreateRsrc("DIALOG", \\"[[DLogRsrc]]", [[AssociatedID]])
|
||||
## :AssociatedID HAXRes
|
||||
## :@QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
[[DLogRsrc]] DIALOG 56, 40, 199, 98
|
||||
## :@QUERY_APPL_CONTROL != VALUE_BWCC
|
||||
[[DLogRsrc]] DIALOG 12, 17, 204, 65
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
## :@QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
CLASS "bordlg_gray"
|
||||
## :@QUERY_PRJ_NAME [[Project]]
|
||||
CAPTION "About [[Project]]"
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
##--BEGIN-- @QUERY_APPL_CONTROL != VALUE_BWCC
|
||||
## :@QUERY_PRJ_NAME [[Project]]
|
||||
## :@QUERY_APPL_VERINFO [[Version]]
|
||||
CTEXT "Version", IDC_VERSION, 2, 14, 200, 8, SS_NOPREFIX
|
||||
## :@QUERY_APPL_ABOUT [[AboutText]]
|
||||
CTEXT "[[AboutText]]", -1, 2, 4, 200, 8, SS_NOPREFIX
|
||||
CTEXT "", IDC_COPYRIGHT, 2, 27, 200, 17, SS_NOPREFIX
|
||||
RTEXT "", IDC_DEBUG, 136, 55, 66, 8, SS_NOPREFIX
|
||||
## :@QUERY_APPL_MODEL == VALUE_MDI
|
||||
ICON IDI_MDIAPPLICATION, -1, 2, 2, 34, 34
|
||||
## :((@QUERY_APPL_MODEL == VALUE_SDI) || (@QUERY_APPL_MODEL == VALUE_DIALOG))
|
||||
ICON IDI_SDIAPPLICATION, -1, 2, 2, 34, 34
|
||||
DEFPUSHBUTTON "OK", IDOK, 82, 48, 40, 14
|
||||
##--END-- @QUERY_APPL_CONTROL != VALUE_BWCC
|
||||
##--BEGIN-- @QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
CONTROL "", -1, "BorShade", BSS_GROUP | BSS_CAPTION | BSS_LEFT | WS_CHILD | WS_VISIBLE, 48, 6, 144, 51
|
||||
CONTROL "Version", IDC_VERSION, "BorStatic", SS_LEFT | WS_CHILD | WS_VISIBLE | SS_NOPREFIX | WS_GROUP, 51, 18, 138, 9
|
||||
CONTROL "Button", IDB_BWCC_ABOUT_ICON - 1000, "BorBtn", BBS_BITMAP | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 6, 9, 39, 42
|
||||
## :@QUERY_APPL_ABOUT [[AboutText]]
|
||||
CONTROL "[[AboutText]]", -1, "BorStatic", SS_LEFT | WS_CHILD | WS_VISIBLE | SS_NOPREFIX | WS_GROUP, 51, 9, 138, 9
|
||||
CONTROL "", IDC_COPYRIGHT, "BorStatic", SS_LEFT | WS_CHILD | WS_VISIBLE | SS_NOPREFIX | WS_GROUP, 51, 27, 138, 27
|
||||
CONTROL "", IDC_DEBUG, "BorStatic", SS_RIGHT | WS_CHILD | WS_VISIBLE | SS_NOPREFIX | WS_GROUP, 131, 87, 66, 8
|
||||
CONTROL "", IDOK, "BorBtn", BS_DEFPUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 81, 66, 37, 25
|
||||
##--END-- @QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
## :AddRsrcItem(HAXRes, "STATIC", "TEXT", "IDC_VERSION")
|
||||
## :AddRsrcItem(HAXRes, "STATIC", "TEXT", "IDC_COPYRIGHT")
|
||||
## :AddRsrcItem(HAXRes, "STATIC", "TEXT", "IDC_DEBUG")
|
||||
## :AddRsrcItem(HAXRes, "BUTTON", "DEFPUSHBUTTON", "IDOK")
|
||||
END
|
||||
##--END-- ((@QUERY_APPL_MODEL != VALUE_DIALOG) || ((@QUERY_APPL_MODEL == VALUE_DIALOG) && @QUERY_APPL_DLGCLIENT_MENU))
|
||||
##--BEGIN-- @OPT_APPL_PRINTING
|
||||
|
||||
|
||||
// Printer abort box.
|
||||
##@QUERY_APPL_CONTROL != VALUE_BWCC
|
||||
IDD_ABORTDIALOG DIALOG 84, 51, 130, 60
|
||||
##@QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
IDD_ABORTDIALOG DIALOG 70, 50, 163, 65
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
##@QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
CLASS "bordlg"
|
||||
CAPTION "Printing"
|
||||
BEGIN
|
||||
##@QUERY_APPL_CONTROL != VALUE_BWCC 6
|
||||
PUSHBUTTON "Cancel", IDCANCEL, 46, 40, 40, 14, WS_TABSTOP
|
||||
CTEXT "Now printing Page %d of", ID_PAGE, 0, 8, 130, 8, SS_CENTER | NOT WS_VISIBLE | WS_GROUP
|
||||
CTEXT "Now printing", -1, 0, 8, 130, 8,
|
||||
CTEXT "'%s' on the", ID_TITLE, 0, 16, 130, 8
|
||||
CTEXT "", ID_PORT, 0, 24, 130, 8, SS_CENTER | NOT WS_VISIBLE | WS_GROUP
|
||||
CTEXT "%s on %s", ID_DEVICE, 0, 24, 130, 8
|
||||
##@QUERY_APPL_CONTROL == VALUE_BWCC 6
|
||||
CONTROL "Button", IDCANCEL, "BorBtn", BS_DEFPUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 48, 36, 33, 21
|
||||
CTEXT "Now printing Page %d of", ID_PAGE, 0, 8, 130, 8, SS_CENTER | NOT WS_VISIBLE | WS_GROUP | SS_NOPREFIX
|
||||
CTEXT "Now printing", -1, 0, 8, 130, 8, SS_NOPREFIX
|
||||
CTEXT "'%s' on the", ID_TITLE, 0, 16, 130, 8, SS_NOPREFIX
|
||||
CTEXT "", ID_PORT, 0, 24, 130, 8, SS_CENTER | NOT WS_VISIBLE | WS_GROUP | SS_NOPREFIX
|
||||
CTEXT "%s on %s", ID_DEVICE, 0, 24, 130, 8, SS_NOPREFIX
|
||||
END
|
||||
##--END-- @OPT_APPL_PRINTING
|
||||
|
||||
|
||||
// TInputDialog class dialog box.
|
||||
##@QUERY_APPL_CONTROL != VALUE_BWCC
|
||||
IDD_INPUTDIALOG DIALOG 20, 24, 180, 64
|
||||
##@QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
IDD_INPUTDIALOG DIALOG 20, 24, 180, 70
|
||||
STYLE WS_POPUP | WS_CAPTION | DS_SETFONT
|
||||
##@QUERY_APPL_CONTROL == VALUE_BWCC
|
||||
CLASS "bordlg"
|
||||
FONT 8, "Helv"
|
||||
BEGIN
|
||||
LTEXT "", ID_PROMPT, 10, 8, 160, 10, SS_NOPREFIX
|
||||
CONTROL "", ID_INPUT, "EDIT", WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP | ES_AUTOHSCROLL, 10, 20, 160, 12
|
||||
##@QUERY_APPL_CONTROL != VALUE_BWCC 2
|
||||
DEFPUSHBUTTON "&OK", IDOK, 47, 42, 40, 14
|
||||
PUSHBUTTON "&Cancel", IDCANCEL, 93, 42, 40, 14
|
||||
##@QUERY_APPL_CONTROL == VALUE_BWCC 2
|
||||
CONTROL "Button", IDOK, "BorBtn", BS_DEFPUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 47, 42, 37, 26
|
||||
CONTROL "Button", IDCANCEL, "BorBtn", BS_DEFPUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 93, 42, 38, 25
|
||||
END
|
||||
|
||||
|
||||
// Horizontal slider thumb bitmap for TSlider and VSlider (include\owl\slider.rc)
|
||||
IDB_HSLIDERTHUMB BITMAP PRELOAD MOVEABLE DISCARDABLE
|
||||
BEGIN
|
||||
'42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
|
||||
'00 00 12 00 00 00 14 00 00 00 01 00 04 00 00 00'
|
||||
'00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
|
||||
'00 00 10 00 00 00 00 00 00 00 00 00 C0 00 00 C0'
|
||||
'00 00 00 C0 C0 00 C0 00 00 00 C0 00 C0 00 C0 C0'
|
||||
'00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
|
||||
'00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
|
||||
'00 00 FF FF FF 00 BB BB 0B BB BB BB B0 BB BB 00'
|
||||
'00 00 BB B0 80 BB BB BB 08 0B BB 00 00 00 BB 08'
|
||||
'F8 0B BB B0 87 70 BB 00 00 00 B0 8F F8 80 BB 08'
|
||||
'77 77 0B 00 00 00 08 F8 88 88 00 88 88 87 70 00'
|
||||
'00 00 0F F7 77 88 00 88 77 77 70 00 00 00 0F F8'
|
||||
'88 88 00 88 88 87 70 00 00 00 0F F7 77 88 00 88'
|
||||
'77 77 70 00 00 00 0F F8 88 88 00 88 88 87 70 00'
|
||||
'00 00 0F F7 77 88 00 88 77 77 70 00 00 00 0F F8'
|
||||
'88 88 00 88 88 87 70 00 00 00 0F F7 77 88 00 88'
|
||||
'77 77 70 00 00 00 0F F8 88 88 00 88 88 87 70 00'
|
||||
'00 00 0F F7 77 88 00 88 77 77 70 00 00 00 0F F8'
|
||||
'88 88 00 88 88 87 70 00 00 00 0F F7 77 88 00 88'
|
||||
'77 77 70 00 00 00 0F F8 88 88 00 88 88 87 70 00'
|
||||
'00 00 0F F7 77 78 00 88 77 77 70 00 00 00 0F FF'
|
||||
'FF FF 00 88 88 88 80 00 00 00 B0 00 00 00 BB 00'
|
||||
'00 00 0B 00 00 00'
|
||||
END
|
||||
|
||||
|
||||
// Vertical slider thumb bitmap for TSlider and HSlider (include\owl\slider.rc)
|
||||
IDB_VSLIDERTHUMB BITMAP PRELOAD MOVEABLE DISCARDABLE
|
||||
BEGIN
|
||||
'42 4D 2A 01 00 00 00 00 00 00 76 00 00 00 28 00'
|
||||
'00 00 28 00 00 00 09 00 00 00 01 00 04 00 00 00'
|
||||
'00 00 B4 00 00 00 00 00 00 00 00 00 00 00 00 00'
|
||||
'00 00 10 00 00 00 00 00 00 00 00 00 C0 00 00 C0'
|
||||
'00 00 00 C0 C0 00 C0 00 00 00 C0 00 C0 00 C0 C0'
|
||||
'00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
|
||||
'00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
|
||||
'00 00 FF FF FF 00 B0 00 00 00 00 00 00 00 00 0B'
|
||||
'B0 00 00 00 00 00 00 00 00 0B 0F 88 88 88 88 88'
|
||||
'88 88 88 80 08 88 88 88 88 88 88 88 88 80 0F 77'
|
||||
'77 77 77 77 77 77 77 80 08 77 77 77 77 77 77 77'
|
||||
'77 80 0F 77 FF FF FF FF FF FF F7 80 08 77 FF FF'
|
||||
'FF FF FF FF F7 80 0F 70 00 00 00 00 00 00 77 80'
|
||||
'08 70 00 00 00 00 00 00 77 80 0F 77 77 77 77 77'
|
||||
'77 77 77 80 08 77 77 77 77 77 77 77 77 80 0F 77'
|
||||
'77 77 77 77 77 77 77 80 08 77 77 77 77 77 77 77'
|
||||
'77 80 0F FF FF FF FF FF FF FF FF F0 08 88 88 88'
|
||||
'88 88 88 88 88 80 B0 00 00 00 00 00 00 00 00 0B'
|
||||
'B0 00 00 00 00 00 00 00 00 0B'
|
||||
END
|
||||
|
||||
|
||||
// Version info.
|
||||
//
|
||||
#if !defined(__DEBUG_)
|
||||
// Non-Debug VERSIONINFO
|
||||
1 VERSIONINFO LOADONCALL MOVEABLE
|
||||
##@QUERY_RCVERSION [[RCVersion]] 2
|
||||
FILEVERSION [[RCVersion]]
|
||||
PRODUCTVERSION [[RCVersion]]
|
||||
FILEFLAGSMASK 0
|
||||
FILEFLAGS VS_FFI_FILEFLAGSMASK
|
||||
FILEOS VOS__WINDOWS16
|
||||
FILETYPE VFT_APP
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
// Language type = U.S. English (0x0409) and Character Set = Windows, Multilingual(0x04e4)
|
||||
BLOCK "040904E4" // Matches VarFileInfo Translation hex value.
|
||||
BEGIN
|
||||
##--BEGIN-- @QUERY_PRJ_COMPANY [[CompanyName]]
|
||||
##--BEGIN-- @QUERY_PRJ_NAME [[Project]]
|
||||
VALUE "CompanyName", "[[CompanyName]]\000"
|
||||
VALUE "FileDescription", "[[Project]] for Windows\000"
|
||||
##@QUERY_APPL_VERINFO [[Version]]
|
||||
VALUE "FileVersion", "[[Version]]\000"
|
||||
VALUE "InternalName", "[[Project]]\000"
|
||||
##@QUERY_PRJ_COPYRIGHT [[Copyright]]
|
||||
##\\Copyright Copyright
|
||||
VALUE "LegalCopyright", "[[Copyright]]\000"
|
||||
VALUE "LegalTrademarks", "Windows (TM) is a trademark of Microsoft Corporation\000"
|
||||
VALUE "OriginalFilename", "[[Project]].EXE\000"
|
||||
VALUE "ProductName", "[[Project]]\000"
|
||||
##@QUERY_APPL_VERINFO [[Version]]
|
||||
VALUE "ProductVersion", "[[Version]]\000"
|
||||
##--END-- @QUERY_PRJ_NAME [[Project]]
|
||||
##--END-- @QUERY_PRJ_COMPANY [[CompanyName]]
|
||||
END
|
||||
END
|
||||
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x0409, 0x04e4 // U.S. English(0x0409) & Windows Multilingual(0x04e4) 1252
|
||||
END
|
||||
|
||||
END
|
||||
#else
|
||||
|
||||
// Debug VERSIONINFO
|
||||
1 VERSIONINFO LOADONCALL MOVEABLE
|
||||
##@QUERY_RCVERSION [[RCVersion]] 2
|
||||
FILEVERSION [[RCVersion]]
|
||||
PRODUCTVERSION [[RCVersion]]
|
||||
FILEFLAGSMASK VS_FF_DEBUG | VS_FF_PRERELEASE | VS_FF_PATCHED | VS_FF_PRIVATEBUILD | VS_FF_SPECIALBUILD
|
||||
FILEFLAGS VS_FFI_FILEFLAGSMASK
|
||||
FILEOS VOS__WINDOWS16
|
||||
FILETYPE VFT_APP
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
// Language type = U.S. English (0x0409) and Character Set = Windows, Multilingual(0x04e4)
|
||||
BLOCK "040904E4" // Matches VarFileInfo Translation hex value.
|
||||
BEGIN
|
||||
##--BEGIN-- @QUERY_PRJ_COMPANY [[CompanyName]]
|
||||
##--BEGIN-- @QUERY_PRJ_NAME [[Project]]
|
||||
##--BEGIN-- @QUERY_PRJ_USER [[Author]]
|
||||
VALUE "CompanyName", "[[CompanyName]]\000"
|
||||
VALUE "FileDescription", "[[Project]] for Windows\000"
|
||||
##@QUERY_APPL_VERINFO [[Version]]
|
||||
VALUE "FileVersion", "[[Version]]\000"
|
||||
VALUE "InternalName", "[[Project]]\000"
|
||||
##@QUERY_PRJ_COPYRIGHT [[Copyright]]
|
||||
##\\Copyright Copyright
|
||||
VALUE "LegalCopyright", "[[Copyright]]\000"
|
||||
VALUE "LegalTrademarks", "Windows (TM) is a trademark of Microsoft Corporation\000"
|
||||
VALUE "OriginalFilename", "[[Project]].EXE\000"
|
||||
VALUE "ProductName", "[[Project]]\000"
|
||||
##@QUERY_APPL_VERINFO [[Version]]
|
||||
VALUE "ProductVersion", "[[Version]]\000"
|
||||
VALUE "SpecialBuild", "Debug Version\000"
|
||||
VALUE "PrivateBuild", "Built by [[Author]]\000"
|
||||
##--END-- @QUERY_PRJ_USER [[Author]]
|
||||
##--END-- @QUERY_PRJ_NAME [[Project]]
|
||||
##--END-- @QUERY_PRJ_COMPANY [[CompanyName]]
|
||||
END
|
||||
END
|
||||
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x0409, 0x04e4 // U.S. English(0x0409) & Windows Multilingual(0x04e4) 1252
|
||||
END
|
||||
|
||||
END
|
||||
#endif
|
||||
@@ -0,0 +1,41 @@
|
||||
<<[H]
|
||||
##QUERY_PASSED_PARAM [[NewClassName]]
|
||||
##QUERY_BASE_NAME [[BaseClass]]
|
||||
##0 [[count]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##^BOF
|
||||
##Replace(\\"[[ClassName]] ([[BaseClass]])", \\"[[NewClassName]] ([[BaseClass]])") count
|
||||
##^BOF
|
||||
##Replace(\\"//{{[[ClassName]]", \\"//{{[[NewClassName]]") count
|
||||
##^BOF
|
||||
##Replace(\\"class [[ClassName]] ", \\"class [[NewClassName]] ") count
|
||||
##^BOF
|
||||
##Replace(\\"[[ClassName]] (", \\"[[NewClassName]] (") count
|
||||
##^BOF
|
||||
##Replace(\\"([[ClassName]])", \\"([[NewClassName]])") count
|
||||
##^BOF
|
||||
##Replace(\\"= [[ClassName]]}}", \\"= [[NewClassName]]}}") count
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[H]
|
||||
|
||||
<<[CPP]
|
||||
##QUERY_PASSED_PARAM [[NewClassName]]
|
||||
##QUERY_BASE_NAME [[BaseClass]]
|
||||
##0 [[count]]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##^BOF
|
||||
##Replace(\\"[[ClassName]], [[BaseClass]]", \\"[[NewClassName]], [[BaseClass]]") count
|
||||
##^BOF
|
||||
##Replace(\\"[[ClassName]] ([[BaseClass]])", \\"[[NewClassName]] ([[BaseClass]])") count
|
||||
##^BOF
|
||||
##Replace(\\"//{{[[ClassName]]", \\"//{{[[NewClassName]]") count
|
||||
##^BOF
|
||||
##Replace(\\"[[ClassName]]::~[[ClassName]]", \\"[[NewClassName]]::~[[NewClassName]]") count
|
||||
##^BOF
|
||||
##Replace(\\"[[ClassName]]::[[ClassName]]", \\"[[NewClassName]]::[[NewClassName]]") count
|
||||
##^BOF
|
||||
##Replace(\\"[[ClassName]]::", \\"[[NewClassName]]::") count
|
||||
##^BOF
|
||||
##Replace(\\"// [[ClassName]]", \\"// [[NewClassName]]") count
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[CPP]
|
||||
@@ -0,0 +1,22 @@
|
||||
<<[H]
|
||||
##QUERY_PASSED_PARAM [[NewConstant]]
|
||||
##0 [[count]]
|
||||
##--BEGIN-- QUERY_SNP_RES_CONSTANT [[Constant]]
|
||||
##^BOF
|
||||
##Replace(\\"[[Constant]]", \\"[[NewConstant]]") count
|
||||
##^BOL
|
||||
##^^
|
||||
##--END-- QUERY_SNP_RES_CONSTANT [[Constant]]
|
||||
>>[H]
|
||||
|
||||
<<[CPP]
|
||||
##QUERY_PASSED_PARAM [[NewConstant]]
|
||||
##0 [[count]]
|
||||
##--BEGIN-- QUERY_SNP_RES_CONSTANT [[Constant]]
|
||||
##^BOF
|
||||
##Replace(\\"[[Constant]]", \\"[[NewConstant]]") count
|
||||
##^BOL
|
||||
##^^
|
||||
##--END-- QUERY_SNP_RES_CONSTANT [[Constant]]
|
||||
>>[CPP]
|
||||
|
||||
@@ -0,0 +1,130 @@
|
||||
<<[H]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##QUERY_BASE_NAME [[BaseName]]
|
||||
##^BOF
|
||||
##--BEGIN-- ? \\"//{{[[BaseName]] = [[ClassName]]}}" [[Search]]
|
||||
## Search == FALSE
|
||||
## :%\\"Class [[ClassName]] derived from [[BaseName]] definition not found in header file. "
|
||||
##*
|
||||
##--END-- ? \\"//{{[[BaseName]] = [[ClassName]]}}"
|
||||
##0 [[StartLine]]
|
||||
##0 [[EndLine]]
|
||||
##--BEGIN-- ? \\"//{{[[ClassName]]VIRTUAL_BEGIN}}"
|
||||
## :(YPos() + 2) StartLine
|
||||
## --BEGIN-- ? \\"//{{[[ClassName]]VIRTUAL_END}}"
|
||||
## :YPos() EndLine
|
||||
## :^@StartLine
|
||||
## :^BOL
|
||||
## --BEGIN-- ((StartLine - 1) != EndLine) && (StartLine != EndLine)
|
||||
## :--FOR-- VEntries = 1 TO (EndLine - StartLine)
|
||||
## :ScanVEntry([[FunctionName]])
|
||||
## :DBVirtual(ClassName, FunctionName)
|
||||
## :^1
|
||||
##*
|
||||
## :--NEXT-- VEntries = 1 TO (EndLine - StartLine)
|
||||
## --END-- ((StartLine - 2) != EndLine) && (StartLine != EndLine)
|
||||
## --END-- ? \\"//{{[[ClassName]]VIRTUAL_END}}"
|
||||
##--END-- ? \\"//{{[[ClassName]]VIRTUAL_BEGIN}}"
|
||||
##--BEGIN-- QUERY_BASE_NAME == "TDialog"
|
||||
## :^BOF
|
||||
## --BEGIN-- ? \\"[[ClassName]] (TWindow"
|
||||
## :^BOL
|
||||
## :ScanDialog([[RCDialogID]])
|
||||
## :DBDialog(ClassName, RCDialogID)
|
||||
##*
|
||||
## --END-- ? \\"[[ClassName]]::[[ClassName]] "
|
||||
##--END-- QUERY_BASE_NAME == "TDialog"
|
||||
##^BOF
|
||||
##--BEGIN-- ? \\"//{{[[ClassName]]AUTO_TBL_BEGIN}}"
|
||||
## :AutomateClass(ClassName)
|
||||
## :{HResAuto.SNP}
|
||||
##*
|
||||
##--END-- ? \\"//{{[[ClassName]]AUTO_TBL_BEGIN}}"
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[H]
|
||||
|
||||
|
||||
<<[CPP]
|
||||
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
||||
##--BEGIN-- QUERY_BASE_NAME == "TDialog"
|
||||
## ^BOF
|
||||
## --BEGIN-- ? \\"//{{[[ClassName]]XFER_USE}}"
|
||||
## :(YPos() + 1) [[StartLine]]
|
||||
## --BEGIN-- ? \\"//{{[[ClassName]]XFER_USE_END}}"
|
||||
## :(YPos() - 2) [[EndLine]]
|
||||
## :^@StartLine
|
||||
## :^BOL
|
||||
## :--FOR-- IEntries = 1 TO (EndLine - StartLine)
|
||||
## :ScanIEntry([[ResourceID]], [[MemberName]], [[MemberType]])
|
||||
## :DBInstance(ClassName, ResourceID, MemberName, MemberType)
|
||||
## :^1
|
||||
##*
|
||||
## :--NEXT-- IEntries = 1 TO (EndLine - StartLine)
|
||||
## --END-- ? \\"//{{[[ClassName]]XFER_DEF_END}}"
|
||||
## --END-- ? \\"//{{[[ClassName]]XFER_DEF}}"
|
||||
##--END-- QUERY_BASE_NAME == "TDialog"
|
||||
##--BEGIN-- @OPT_APPL_DOCVIEW
|
||||
## 0 [[StartLine]]
|
||||
## 1 [[EndLine]]
|
||||
## --BEGIN-- QUERY_BASE_NAME == "TApplication"
|
||||
## :^BOF
|
||||
## --BEGIN-- ? "//{{DOC_VIEW}}"
|
||||
## :@QUERY_APPL_OLE != VALUE_NOOLE
|
||||
## :{ResDVOle.snp}
|
||||
##*
|
||||
## --BEGIN-- @QUERY_APPL_OLE == VALUE_NOOLE
|
||||
## :^1
|
||||
## :YPos() StartLine
|
||||
## --BEGIN-- ? "//{{DOC_VIEW_END}}"
|
||||
## :^-1
|
||||
## :YPos() EndLine
|
||||
## :^@StartLine
|
||||
## :^BOL
|
||||
## :0 [[CurrViewLine]]
|
||||
## --FOR-- ViewEntry = 1 TO ((EndLine - StartLine) + 1)
|
||||
## :ScanViewEntry([[Template]], [[TDocument]], [[TView]]) [[viewResult]]
|
||||
## :YPos() CurrViewLine
|
||||
## :? "//{{DOC_MANAGER}}"
|
||||
## :--BEGIN-- ? \\"[[Template]]"
|
||||
## :^BOL
|
||||
## :ScanDocEntry([[Style]], [[Descr]], [[Filter]], [[Ext]])
|
||||
## :DBDocView(Style, Descr, Filter, Ext, TDocument, TView)
|
||||
##*
|
||||
## :--END-- ? \\"[[Template]]"
|
||||
## :^@CurrViewLine
|
||||
##*
|
||||
## :^1
|
||||
## --NEXT-- ViewEntry
|
||||
## --END-- ? "//{{DOC_VIEW_END}}"
|
||||
## --END-- @QUERY_APPL_OLE == VALUE_NOOLE
|
||||
## --END-- ? "//{{DOC_VIEW}}"
|
||||
## --END-- QUERY_BASE_NAME == "TApplication"
|
||||
##--END-- @OPT_APPL_DOCVIEW
|
||||
##^BOF
|
||||
##0 [[StartLine]]
|
||||
##0 [[EndLine]]
|
||||
##--BEGIN-- ? \\"//{{[[ClassName]]RSP_TBL_BEGIN}}"
|
||||
## :^1
|
||||
## :YPos() StartLine
|
||||
## --BEGIN-- ? \\"//{{[[ClassName]]RSP_TBL_END}}"
|
||||
## :YPos() EndLine
|
||||
## :^@StartLine
|
||||
## :^BOL
|
||||
## --BEGIN-- 0 != (EndLine - StartLine)
|
||||
## :--FOR-- RespEntry = 1 TO (EndLine - StartLine)
|
||||
## :ScanRespEntry([[RspConstant]], [[RspFunctionName]], [[RspEventType]], [[RspMenuType]])
|
||||
## :RspEventType != "OWLVIEW"
|
||||
## :DBResponse(ClassName, RspConstant, RspFunctionName, RspEventType, RspMenuType)
|
||||
##*
|
||||
## :^1
|
||||
## :--NEXT-- RespEntry
|
||||
## --END-- 0 != (EndLine - StartLine)
|
||||
## --END-- ? \\"//{{[[ClassName]]RSP_TBL_END}}"
|
||||
##--END-- ? \\"//{{[[ClassName]]RSP_TBL_BEGIN}}"
|
||||
##^BOF
|
||||
##--BEGIN-- ? \\"//{{[[ClassName]]SYM_TBL_BEGIN}}"
|
||||
## :{CResAuto.SNP}
|
||||
##*
|
||||
##--END-- ? \\"//{{[[ClassName]]SYM_TBL_BEGIN}}"
|
||||
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
||||
>>[CPP]
|
||||