Compare commits

..

No commits in common. "7283b7ac28410c2a8083606429a1cca6ca5c2b2c" and "fec9adacd33aeef3b0da34a058dd417afe316abe" have entirely different histories.

26 changed files with 31 additions and 3538 deletions

View File

@ -1,371 +0,0 @@
Type TSDocxApplication = Class(TSVbaBase)
public
Function Create();
Function Init();
public
Function Activate();
Function AddAddress(TagID, Value);
Function AutomaticChange();
Function BuildKeyCode(Arg1, Arg2, Arg3, Arg4);
Function CentimetersToPoints(Centimeters);
Function ChangeFileOpenDirectory(Path);
Function CheckGrammar(String);
Function CheckSpelling(Word, CustomDictionary, IgnoreUppercase, MainDictionary, CustomDictionary2, CustomDictionary3, CustomDictionary4, CustomDictionary5, CustomDictionary6, CustomDictionary7, CustomDictionary8, CustomDictionary9, CustomDictionary10);
Function CleanString(String);
Function CompareDocuments(OriginalDocument, RevisedDocument, Destination, Granularity, CompareFormatting, CompareCaseChanges, CompareWhitespace, CompareTables, CompareHeaders, CompareFootnotes, CompareTextboxes, CompareFields, CompareComments, CompareMoves, RevisedAuthor, IgnoreAllComparisonWarnings);
Function DDEExecute(Channel, Command);
Function DDEInitiate(App, Topic);
Function DDEPoke(Channel, Item, Data);
Function DDERequest(Channel, Item);
Function DDETerminate(Channel);
Function DDETerminateAll();
Function DefaultWebOptions();
Function GetAddress(Name, AddressProperties, UseAutoText, DisplaySelectDialog, SelectDialog, CheckNamesDialog, RecentAddressesChoice, UpdateRecentAddresses);
Function GetDefaultTheme(DocumentType);
Function GetSpellingSuggestions(Word, CustomDictionary, IgnoreUppercase, MainDictionary, SuggestionMode, CustomDictionary2, CustomDictionary3, CustomDictionary4, CustomDictionary5, CustomDictionary6, CustomDictionary7, CustomDictionary8, CustomDictionary9, CustomDictionary10);
Function GoBack();
Function GoForward();
Function Help(HelpType);
Function InchesToPoints(Inches);
Function Keyboard(LangId);
Function KeyboardBidi();
Function KeyboardLatin();
Function KeyString(KeyCode, KeyCode2);
Function LinesToPoints(Lines);
Function ListCommands(ListAllCommands);
Function LoadMasterList(FileName);
Function LookupNameProperties(Name);
Function MergeDocuments(OriginalDocument, RevisedDocument, Destination, Granularity, CompareFormatting, CompareCaseChanges, CompareWhitespace, CompareTables, CompareHeaders, CompareFootnotes, CompareTextboxes, CompareFields, CompareComments, OriginalAuthor, RevisedAuthor, FormatFrom);
Function MillimetersToPoints(Millimeters);
Function Move(Left, Top);
Function NewWindow();
Function OnTime(When, Name, Tolerance);
Function OrganizerCopy(Source, Destination, Name, Object);
Function OrganizerDelete(Source, Name, Object);
Function OrganizerRename(Source, Name, NewName, Object);
Function PicasToPoints(Picas);
Function PixelsToPoints(Pixels, fVertical);
Function PointsToCentimeters(Points);
Function PointsToInches(Points);
Function PointsToLines(Points);
Function PointsToMillimeters(Points);
Function PointsToPicas(Points);
Function PointsToPixels(Points, fVertical);
Function PrintOut(Background, Append, Range, OutputFileName, From_, To_, Item, Copies, Pages, PageType, PrintToFile, Collate, FileName, ActivePrinterMacGX, ManualDuplexPrint, PrintZoomColumn, PrintZoomRow, PrintZoomPaperWidth, PrintZoomPaperHeight);
Function ProductCode();
Function PutFocusInMailHeader();
Function Quit(SaveChanges, OriginalFormat, RouteDocument);
Function Repeat(Times);
Function ResetIgnoreAll();
Function Resize (Width, Height);
Function Run(MacroName, varg1, varg2, varg3, varg4, varg5, varg6, varg7, varg8, varg9, varg10, varg11, varg12, varg13, varg14, varg15, varg16, varg17, varg18, varg19, varg20, varg21, varg22, varg23, varg24, varg25, varg26, varg27, varg28, varg29, varg30);
Function ScreenRefresh();
Function SetDefaultTheme(Name, DocumentType);
Function ShowClipboard();
Function SubstituteFont(UnavailableFont, SubstituteFont);
Function ToggleKeyboard();
property ActiveDocument read ReadActiveDocument;
property ActiveEncryptionSession read ReadActiveEncryptionSession;
property ActivePrinter read ReadActivePrinter write WriteActivePrinter;
property ActiveProtectedViewWindow read ReadActiveProtectedViewWindow;
property ActiveWindow read ReadActiveWindow;
property AddIns read ReadAddIns;
property ArbitraryXMLSupportAvailable read ReadArbitraryXMLSupportAvailable;
property Assistance read ReadAssistance;
property AutoCaptions read ReadAutoCaptions;
property AutoCorrect read ReadAutoCorrect;
property AutoCorrectEmail read ReadAutoCorrectEmail;
property AutomationSecurity read ReadAutomationSecurity write WriteAutomationSecurity;
property BackgroundPrintingStatus read ReadBackgroundPrintingStatus;
property BackgroundSavingStatus read ReadBackgroundSavingStatus;
property Bibliography read ReadBibliography;
property BrowseExtraFileTypes read ReadBrowseExtraFileTypes write WriteBrowseExtraFileTypes;
property Browser read ReadBrowser;
property Build read ReadBuild;
property CapsLock read ReadCapsLock;
property Caption read ReadCaption write WriteCaption;
property CaptionLabels read ReadCaptionLabels;
property ChartDataPointTrack read ReadChartDataPointTrack write WriteChartDataPointTrack;
property CheckLanguage read ReadCheckLanguage write WriteCheckLanguage;
property COMAddIns read ReadCOMAddIns;
property CommandBars read ReadCommandBars;
property CustomDictionaries read ReadCustomDictionaries;
property CustomizationContext read ReadCustomizationContext write WriteCustomizationContext;
property DefaultLegalBlackline read ReadDefaultLegalBlackline write WriteDefaultLegalBlackline;
property DefaultSaveFormat read ReadDefaultSaveFormat write WriteDefaultSaveFormat;
property DefaultTableSeparator read ReadDefaultTableSeparator write WriteDefaultTableSeparator;
property Dialogs read ReadDialogs;
property DisplayAlerts read ReadDisplayAlerts write WriteDisplayAlerts;
property DisplayAutoCompleteTips read ReadDisplayAutoCompleteTips write WriteDisplayAutoCompleteTips;
property DisplayDocumentInformationPanel read ReadDisplayDocumentInformationPanel write WriteDisplayDocumentInformationPanel;
property DisplayRecentFiles read ReadDisplayRecentFiles write WriteDisplayRecentFiles;
property DisplayScreenTips read ReadDisplayScreenTips write WriteDisplayScreenTips;
property DisplayScrollBars read ReadDisplayScrollBars write WriteDisplayScrollBars;
property Documents read ReadDocuments;
property DontResetInsertionPointProperties read ReadDontResetInsertionPointProperties write WriteDontResetInsertionPointProperties;
property EmailOptions read ReadEmailOptions;
property EmailTemplate read ReadEmailTemplate write WriteEmailTemplate;
property EnableCancelKey read ReadEnableCancelKey write WriteEnableCancelKey;
property FeatureInstall read ReadFeatureInstall write WriteFeatureInstall;
property FileConverters read ReadFileConverters;
property FileDialog read ReadFileDialog;
property FileValidation read ReadFileValidation write WriteFileValidation;
property FindKey read ReadFindKey;
property FocusInMailHeader read ReadFocusInMailHeader;
property FontNames read ReadFontNames;
property HangulHanjaDictionaries read ReadHangulHanjaDictionaries;
property Height read ReadHeight write WriteHeight;
property International read ReadInternational;
property IsObjectValid read ReadIsObjectValid;
property IsSandboxed read ReadIsSandboxed;
property KeyBindings read ReadKeyBindings;
property KeysBoundTo read ReadKeysBoundTo;
property LandscapeFontNames read ReadLandscapeFontNames;
property Language read ReadLanguage;
property Languages read ReadLanguages;
property LanguageSettings read ReadLanguageSettings;
property Left read ReadLeft write WriteLeft;
property ListGalleries read ReadListGalleries;
property MacroContainer read ReadMacroContainer;
property MailingLabel read ReadMailingLabel;
property MailMessage read ReadMailMessage;
property MailSystem read ReadMailSystem;
property MAPIAvailable read ReadMAPIAvailable;
property MathCoprocessorAvailable read ReadMathCoprocessorAvailable;
property MouseAvailable read ReadMouseAvailable;
property Name read ReadName;
property NewDocument read ReadNewDocument;
property NormalTemplate read ReadNormalTemplate;
property NumLock read ReadNumLock;
property OMathAutoCorrect read ReadOMathAutoCorrect;
property OpenAttachmentsInFullScreen read ReadOpenAttachmentsInFullScreen write WriteOpenAttachmentsInFullScreen;
property Options read ReadOptions;
property Path read ReadPath;
property PathSeparator read ReadPathSeparator;
property PickerDialog read ReadPickerDialog;
property PortraitFontNames read ReadPortraitFontNames;
property PrintPreview read ReadPrintPreview write WritePrintPreview;
property ProtectedViewWindows read ReadProtectedViewWindows;
property RecentFiles read ReadRecentFiles;
property RestrictLinkedStyles read ReadRestrictLinkedStyles write WriteRestrictLinkedStyles;
property ScreenUpdating read ReadScreenUpdating write WriteScreenUpdating;
property Selection read ReadSelection;
property SensitivityLabelPolicy read ReadSensitivityLabelPolicy;
property ShowStartupDialog read ReadShowStartupDialog write WriteShowStartupDialog;
property ShowStylePreviews read ReadShowStylePreviews write WriteShowStylePreviews;
property ShowVisualBasicEditor read ReadShowVisualBasicEditor write WriteShowVisualBasicEditor;
property SmartArtColors read ReadSmartArtColors;
property SmartArtLayouts read ReadSmartArtLayouts;
property SmartArtQuickStyles read ReadSmartArtQuickStyles;
property SpecialMode read ReadSpecialMode;
property StartupPath read ReadStartupPath write WriteStartupPath;
property SynonymInfo read ReadSynonymInfo;
property System read ReadSystem;
property TaskPanes read ReadTaskPanes;
property Tasks read ReadTasks;
property Templates read ReadTemplates;
property Top read ReadTop write WriteTop;
property UndoRecord read ReadUndoRecord;
property UsableHeight read ReadUsableHeight;
property UsableWidth read ReadUsableWidth;
property UserAddress read ReadUserAddress write WriteUserAddress;
property UserControl read ReadUserControl;
property UserInitials read ReadUserInitials write WriteUserInitials;
property UserName read ReadUserName write WriteUserName;
property VBE read ReadVBE;
property Version read ReadVersion;
property Visible read ReadVisible write WriteVisible;
property Width read ReadWidth write WriteWidth;
property Windows read ReadWindows;
property WindowState read ReadWindowState write WriteWindowState;
property WordBasic read ReadWordBasic;
property XMLNamespaces read ReadXMLNamespaces;
Function ReadXMLNamespaces();
Function ReadWordBasic();
Function WriteWindowState(value);
Function ReadWindowState();
Function ReadWindows();
Function WriteWidth(value);
Function ReadWidth();
Function WriteVisible(value);
Function ReadVisible();
Function ReadVersion();
Function ReadVBE();
Function WriteUserName(value);
Function ReadUserName();
Function WriteUserInitials(value);
Function ReadUserInitials();
Function ReadUserControl();
Function WriteUserAddress(value);
Function ReadUserAddress();
Function ReadUsableWidth();
Function ReadUsableHeight();
Function ReadUndoRecord();
Function WriteTop(value);
Function ReadTop();
Function ReadTemplates();
Function ReadTasks();
Function ReadTaskPanes();
Function ReadSystem();
Function ReadSynonymInfo();
Function WriteStartupPath(value);
Function ReadStartupPath();
Function ReadSpecialMode();
Function ReadSmartArtQuickStyles();
Function ReadSmartArtLayouts();
Function ReadSmartArtColors();
Function WriteShowVisualBasicEditor(value);
Function ReadShowVisualBasicEditor();
Function WriteShowStylePreviews(value);
Function ReadShowStylePreviews();
Function WriteShowStartupDialog(value);
Function ReadShowStartupDialog();
Function ReadSensitivityLabelPolicy();
Function ReadSelection();
Function WriteScreenUpdating(value);
Function ReadScreenUpdating();
Function WriteRestrictLinkedStyles(value);
Function ReadRestrictLinkedStyles();
Function ReadRecentFiles();
Function ReadProtectedViewWindows();
Function WritePrintPreview(value);
Function ReadPrintPreview();
Function ReadPortraitFontNames();
Function ReadPickerDialog();
Function ReadPathSeparator();
Function ReadPath();
Function ReadOptions();
Function WriteOpenAttachmentsInFullScreen(value);
Function ReadOpenAttachmentsInFullScreen();
Function ReadOMathAutoCorrect();
Function ReadNumLock();
Function ReadNormalTemplate();
Function ReadNewDocument();
Function ReadName();
Function ReadMouseAvailable();
Function ReadMathCoprocessorAvailable();
Function ReadMAPIAvailable();
Function ReadMailSystem();
Function ReadMailMessage();
Function ReadMailingLabel();
Function ReadMacroContainer();
Function ReadListGalleries();
Function WriteLeft(value);
Function ReadLeft();
Function ReadLanguageSettings();
Function ReadLanguages();
Function ReadLanguage();
Function ReadLandscapeFontNames();
Function ReadKeysBoundTo();
Function ReadKeyBindings();
Function ReadIsSandboxed();
Function ReadIsObjectValid();
Function ReadInternational();
Function WriteHeight(value);
Function ReadHeight();
Function ReadHangulHanjaDictionaries();
Function ReadFontNames();
Function ReadFocusInMailHeader();
Function ReadFindKey();
Function WriteFileValidation(value);
Function ReadFileValidation();
Function ReadFileDialog();
Function ReadFileConverters();
Function WriteFeatureInstall(value);
Function ReadFeatureInstall();
Function WriteEnableCancelKey(value);
Function ReadEnableCancelKey();
Function WriteEmailTemplate(value);
Function ReadEmailTemplate();
Function ReadEmailOptions();
Function WriteDontResetInsertionPointProperties(value);
Function ReadDontResetInsertionPointProperties();
Function ReadDocuments(Index);
Function WriteDisplayScrollBars(value);
Function ReadDisplayScrollBars();
Function WriteDisplayScreenTips(value);
Function ReadDisplayScreenTips();
Function WriteDisplayRecentFiles(value);
Function ReadDisplayRecentFiles();
Function WriteDisplayDocumentInformationPanel(value);
Function ReadDisplayDocumentInformationPanel();
Function WriteDisplayAutoCompleteTips(value);
Function ReadDisplayAutoCompleteTips();
Function WriteDisplayAlerts(value);
Function ReadDisplayAlerts();
Function ReadDialogs();
Function WriteDefaultTableSeparator(value);
Function ReadDefaultTableSeparator();
Function WriteDefaultSaveFormat(value);
Function ReadDefaultSaveFormat();
Function WriteDefaultLegalBlackline(value);
Function ReadDefaultLegalBlackline();
Function WriteCustomizationContext(value);
Function ReadCustomizationContext();
Function ReadCustomDictionaries();
Function ReadCommandBars();
Function ReadCOMAddIns();
Function WriteCheckLanguage(value);
Function ReadCheckLanguage();
Function WriteChartDataPointTrack(value);
Function ReadChartDataPointTrack();
Function ReadCaptionLabels();
Function WriteCaption(value);
Function ReadCaption();
Function ReadCapsLock();
Function ReadBuild();
Function ReadBrowser();
Function WriteBrowseExtraFileTypes(value);
Function ReadBrowseExtraFileTypes();
Function ReadBibliography();
Function ReadBackgroundSavingStatus();
Function ReadBackgroundPrintingStatus();
Function WriteAutomationSecurity(value);
Function ReadAutomationSecurity();
Function ReadAutoCorrectEmail();
Function ReadAutoCorrect();
Function ReadAutoCaptions();
Function ReadAssistance();
Function ReadArbitraryXMLSupportAvailable();
Function ReadAddIns();
Function ReadActiveWindow();
Function ReadActiveProtectedViewWindow();
Function WriteActivePrinter(value);
Function ReadActivePrinter();
Function ReadActiveEncryptionSession();
Function ReadActiveDocument();
private
documents_;
End;
// ============== 实现 ================= //
Function TSDocxApplication.Create();
Begin
Class(TSVbaBase).Create(self, random(10000000), self);
Init();
End;
Function TSDocxApplication.Init();
Begin
documents_ := new TSDocxDocuments(self.Application, self.Creator, self);
documents_.Init();
End;
// property
Function TSDocxApplication.ReadDocuments(Index)
Begin
if ifnil(Index) then return documents_;
return documents_[Index];
End;
Function TSDocxApplication.ReadActiveDocument();
Begin
return documents_.GetActivation();
End;

View File

@ -1,144 +0,0 @@
Type TSDocxBorder = Class(TSVbaBase)
Uses TSDocxEnumerations;
public
Function Init(borders, borderType);
private
border_;
public
property ArtStyle read ReadArtStyle write WriteArtStyle;
property ArtWidth read ReadArtWidth write WriteArtWidth;
property Color read ReadColor write WriteColor;
property ColorIndex read ReadColorIndex write WriteColorIndex;
property Inside read ReadInside;
property LineStyle read ReadLineStyle write WriteLineStyle;
property LineWidth read ReadLineWidth write WriteLineWidth;
property Visible read ReadVisible write WriteVisible;
Function WriteVisible();
Function ReadVisible();
Function WriteLineWidth();
Function ReadLineWidth();
Function WriteLineStyle(value);virtual;
Function ReadLineStyle();
Function ReadInside();
Function WriteColorIndex();
Function ReadColorIndex();
Function WriteColor();
Function ReadColor();
Function WriteArtWidth();
Function ReadArtWidth();
Function WriteArtStyle();
Function ReadArtStyle();
End;
// ============== 实现 ================= //
Function TSDocxBorder.Init(borders, borderType);
Begin
case borderType of
TSDocxEnumerations.wdBorderBottom():
border_ := borders.Bottom;
TSDocxEnumerations.wdBorderDiagonalDown():
border_ := borders.tl2br;
TSDocxEnumerations.wdBorderDiagonalUp():
border_ := borders.tr2bl;
TSDocxEnumerations.wdBorderHorizontal():
border_ := borders.InsideH;
TSDocxEnumerations.wdBorderLeft():
border_ := borders.Left;
TSDocxEnumerations.wdBorderRight():
border_ := borders.Right;
TSDocxEnumerations.wdBorderTop():
border_ := borders.Top;
TSDocxEnumerations.wdBorderVertical():
border_ := borders.InsideV;
end;
End;
// property
Function TSDocxBorder.WriteLineStyle(value);virtual;
Begin
case value of
TSDocxEnumerations.wdLineStyleDashDot():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleDashDotDot():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleDashDotStroked():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleDashLargeGap():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleDashSmallGap():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleDot():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleDouble():
border_.Val := "double";
TSDocxEnumerations.wdLineStyleDoubleWavy():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleEmboss3D():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleEngrave3D():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleInset():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleNone():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleOutset():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleSingle():
border_.Val := "single";
TSDocxEnumerations.wdLineStyleSingleWavy():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleThickThinLargeGap():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleThickThinMedGap():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleThickThinSmallGap():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleThinThickLargeGap():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleThinThickMedGap():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleThinThickSmallGap():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleThinThickThinLargeGap():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleThinThickThinMedGap():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleThinThickThinSmallGap():
border_.Val := "nil";
TSDocxEnumerations.wdLineStyleTriple():
border_.Val := "nil";
end;
border_.Update();
End;

View File

@ -1,36 +0,0 @@
Type TSDocxBorderTable = Class(TSDocxBorder)
public
Function Init(table, borderType);
public
Function WriteLineStyle(value);override;
private
table_;
border_type_;
End;
// ============== 实现 ================= //
Function TSDocxBorderTable.Init(table, borderType);
Begin
table_ := table;
border_type_ := borderType;
End;
// property
Function TSDocxBorderTable.WriteLineStyle(value);override;
Begin
for r:=1 to table_.Rows() do
begin
for c:=1 to table_.Cols() do
begin
cell := new TSDocxCell(self.Application, self.Creator, self.Parent);
cell.Init(table_, r, c);
cell.Borders(border_type_).LineStyle := value;
end
end
End;

View File

@ -1,106 +0,0 @@
Type TSDocxBorders = Class(TSVbaBase)
public
Function Init(borders);
Function Operator[](index);virtual;
private
borders_;
public
Function ApplyPageBordersToAllSections();
Function Item(Index);
property AlwaysInFront read ReadAlwaysInFront write WriteAlwaysInFront;
property Count read ReadCount;
property DistanceFrom read ReadDistanceFrom write WriteDistanceFrom;
property DistanceFromBottom read ReadDistanceFromBottom write WriteDistanceFromBottom;
property DistanceFromLeft read ReadDistanceFromLeft write WriteDistanceFromLeft;
property DistanceFromRight read ReadDistanceFromRight write WriteDistanceFromRight;
property DistanceFromTop read ReadDistanceFromTop write WriteDistanceFromTop;
property Enable read ReadEnable write WriteEnable;
property EnableFirstPageInSection read ReadEnableFirstPageInSection write WriteEnableFirstPageInSection;
property EnableOtherPagesInSection read ReadEnableOtherPagesInSection write WriteEnableOtherPagesInSection;
property HasHorizontal read ReadHasHorizontal;
property HasVertical read ReadHasVertical;
property InsideColor read ReadInsideColor write WriteInsideColor;
property InsideColorIndex read ReadInsideColorIndex write WriteInsideColorIndex;
property InsideLineStyle read ReadInsideLineStyle write WriteInsideLineStyle;
property InsideLineWidth read ReadInsideLineWidth write WriteInsideLineWidth;
property JoinBorders read ReadJoinBorders write WriteJoinBorders;
property OutsideColor read ReadOutsideColor write WriteOutsideColor;
property OutsideColorIndex read ReadOutsideColorIndex write WriteOutsideColorIndex;
property OutsideLineStyle read ReadOutsideLineStyle write WriteOutsideLineStyle;
property OutsideLineWidth read ReadOutsideLineWidth write WriteOutsideLineWidth;
property Shadow read ReadShadow write WriteShadow;
property SurroundFooter read ReadSurroundFooter write WriteSurroundFooter;
property SurroundHeader read ReadSurroundHeader write WriteSurroundHeader;
Function WriteSurroundHeader();
Function ReadSurroundHeader();
Function WriteSurroundFooter();
Function ReadSurroundFooter();
Function WriteShadow();
Function ReadShadow();
Function WriteOutsideLineWidth();
Function ReadOutsideLineWidth();
Function WriteOutsideLineStyle();
Function ReadOutsideLineStyle();
Function WriteOutsideColorIndex();
Function ReadOutsideColorIndex();
Function WriteOutsideColor();
Function ReadOutsideColor();
Function WriteJoinBorders();
Function ReadJoinBorders();
Function WriteInsideLineWidth();
Function ReadInsideLineWidth();
Function WriteInsideLineStyle();
Function ReadInsideLineStyle();
Function WriteInsideColorIndex();
Function ReadInsideColorIndex();
Function WriteInsideColor();
Function ReadInsideColor();
Function ReadHasVertical();
Function ReadHasHorizontal();
Function WriteEnableOtherPagesInSection();
Function ReadEnableOtherPagesInSection();
Function WriteEnableFirstPageInSection();
Function ReadEnableFirstPageInSection();
Function WriteEnable();
Function ReadEnable();
Function WriteDistanceFromTop();
Function ReadDistanceFromTop();
Function WriteDistanceFromRight();
Function ReadDistanceFromRight();
Function WriteDistanceFromLeft();
Function ReadDistanceFromLeft();
Function WriteDistanceFromBottom();
Function ReadDistanceFromBottom();
Function WriteDistanceFrom();
Function ReadDistanceFrom();
Function ReadCount();
Function WriteAlwaysInFront();
Function ReadAlwaysInFront();
End;
// ============== 实现 ================= //
Function TSDocxBorders.Init(borders);
Begin
borders_ := borders;
End;
Function Operator TSDocxBorders.[](index);virtual;
Begin
border_obj := new TSDocxBorder(self.Application, self.Creator, self);
border_obj.Init(borders_, index);
return border_obj;
End;
// function
Function TSDocxBorders.Item(Index);
Begin
return self[Index];
End;
// property

View File

@ -1,24 +0,0 @@
Type TSDocxBordersTable = Class(TSDocxBorders)
public
Function Init(table);
Function Operator[](index);overload;
private
table_;
End;
// ============== 实现 ================= //
Function TSDocxBordersTable.Init(table);
Begin
table_ := table;
End;
Function Operator TSDocxBordersTable.[](index);overload;
Begin
border_table_obj := new TSDocxBorderTable(self.Application, self.Creator, self.Parent);
border_table_obj.Init(table_, index);
return border_table_obj;
End;

View File

@ -1,366 +0,0 @@
Type TSDocxCell = Class(TSVbaBase)
Uses TSDocxEnumerations;
public
Function Init(table, row, column);
private
Function GetCell();
Function SetCellTcPrWidth(row, col, widthValue, widthType);
private
table_; // TOfficeObj("TTable")
row_;
column_;
tcpr_; // TOfficeObj("TwTcPr")
cell_; // TOfficeObj("TCell")
min_dxa_width_; // 最小宽度 321
public
Function AutoSum();
Function Delete(ShiftCells);
Function Formula(Formula, NumFormat);
Function Merge(MergeTo);
Function Select();
Function SetHeight(RowHeight, HeightRule);
Function SetWidth(ColumnWidth, RulerStyle);
Function Split(NumRows, NumColumns);
property Borders read ReadBorders;
property BottomPadding read ReadBottomPadding write WriteBottomPadding;
property Column read ReadColumn;
property ColumnIndex read ReadColumnIndex;
property FitText read ReadFitText write WriteFitText;
property Height read ReadHeight write WriteHeight;
property HeightRule read ReadHeightRule write WriteHeightRule;
property ID read ReadID write WriteID;
property LeftPadding read ReadLeftPadding write WriteLeftPadding;
property NestingLevel read ReadNestingLevel;
property Next read ReadNext;
property PreferredWidth read ReadPreferredWidth write WritePreferredWidth;
property PreferredWidthType read ReadPreferredWidthType write WritePreferredWidthType;
property Previous read ReadPrevious;
property Range read ReadRange;
property RightPadding read ReadRightPadding write WriteRightPadding;
property Row read ReadRow;
property RowIndex read ReadRowIndex;
property Shading read ReadShading;
property Tables read ReadTables;
property TopPadding read ReadTopPadding write WriteTopPadding;
property VerticalAlignment read ReadVerticalAlignment write WriteVerticalAlignment;
property Width read ReadWidth write WriteWidth;
property WordWrap read ReadWordWrap write WriteWordWrap;
Function WriteWordWrap(wrap);
Function ReadWordWrap();
Function WriteWidth(width);
Function ReadWidth();
Function WriteVerticalAlignment(alignment);
Function ReadVerticalAlignment();
Function WriteTopPadding(top);
Function ReadTopPadding();
Function ReadTables(index);
Function ReadShading();
Function ReadRowIndex();
Function ReadRow();
Function WriteRightPadding(right);
Function ReadRightPadding();
Function ReadRange();
Function ReadPrevious();
Function WritePreferredWidthType(value);
Function ReadPreferredWidthType();
Function WritePreferredWidth(value);
Function ReadPreferredWidth();
Function ReadNext();
Function ReadNestingLevel();
Function WriteLeftPadding(left);
Function ReadLeftPadding();
Function WriteID();
Function ReadID();
Function WriteHeightRule();
Function ReadHeightRule();
Function WriteHeight();
Function ReadHeight();
Function WriteFitText();
Function ReadFitText();
Function ReadColumnIndex();
Function ReadColumn();
Function WriteBottomPadding(bottom);
Function ReadBottomPadding();
Function ReadBorders(index);
End;
// ============== 实现 ================= //
Function TSDocxCell.Init(table, row, column);
Begin
table_ := table;
row_ := row;
column_ := column;
min_dxa_width_ := 321;
cell := table_.GetCells()[row_-1, column_-1];
if not ifnil(cell) then
begin
tcpr_node := class(TSXml).GetNode(cell[0], "w:tcPr", "first");
tcpr_ := TOfficeObj("TwTcPr");
tcpr_.InitRootNode(tcpr_node);
end
End;
Function TSDocxCell.GetCell();
Begin
if ifObj(cell_) then return cell_;
cell_ := table_.Cell(row_, column_);
return cell_;
End;
Function TSDocxCell.SetCellTcPrWidth(row, col, widthValue, widthType);
Begin
cell := table_.GetCells()[row-1, col-1];
if ifnil(cell) then return;
tcpr_node := class(TSXml).GetNode(cell[0], "w:tcPr", "first");
tcpr_obj := TOfficeObj("TwTcPr");
tcpr_obj.InitRootNode(tcpr_node);
tcpr_obj.Width := widthValue;
tcpr_obj.Type := widthType;
tcpr_obj.Update();
End;
// function
Function TSDocxCell.Delete(ShiftCells);
Begin
if ifnil(ShiftCells) then ShiftCells := TSDocxEnumerations.wdDeleteCellsShiftLeft();
case ShiftCells of
TSDocxEnumerations.wdDeleteCellsEntireColumn():
table_.DeleteCell(nil, column_);
TSDocxEnumerations.wdDeleteCellsEntireRow():
table_.DeleteCell(row_, nil);
TSDocxEnumerations.wdDeleteCellsShiftLeft():
table_.DeleteCell(row_, column_);
TSDocxEnumerations.wdDeleteCellsShiftUp():
table_.DeleteCell(row_, column_, 0);
end;
End;
Function TSDocxCell.Merge(MergeTo);
Begin
table_.Merge(self.RowIndex, self.ColumnIndex, MergeTo.RowIndex, MergeTo.ColumnIndex, false);
End;
// property
Function TSDocxCell.ReadColumnIndex();
Begin
return column_;
End;
Function TSDocxCell.ReadColumn();
Begin
column_obj := new TSDocxColumn(self.Application, self.Creator, self);
column_obj.Init(table_, column_);
return column_obj;
End;
Function TSDocxCell.ReadRowIndex();
Begin
return row_;
End;
// VBA width=100xml是2000
Function TSDocxCell.WriteWidth(width);
Begin
tcpr_.Width := width * 20;
tcpr_.Type := "dxa";
tcpr_.Update();
End;
Function TSDocxCell.ReadWidth();
Begin
return tcpr_.Value("width") / 20;
End;
Function TSDocxCell.WriteWordWrap(wrap);
Begin
tcpr_.noWrap := wrap ? 0 : 1;
tcpr_.Update();
End;
Function TSDocxCell.ReadWordWrap();
Begin
return tcpr_.Value("noWrap") ? false : true;
End;
Function TSDocxCell.WriteVerticalAlignment(alignment);
Begin
case alignment of
TSDocxEnumerations.wdCellAlignVerticalBottom():
begin
tcpr_.vAlign := "bottom";
tcpr_.Update();
end
TSDocxEnumerations.wdCellAlignVerticalCenter():
begin
tcpr_.vAlign := "center";
tcpr_.Update();
end
TSDocxEnumerations.wdCellAlignVerticalTop():
begin
tcpr_.vAlign := "top";
tcpr_.Update();
end;
end;
End;
Function TSDocxCell.ReadVerticalAlignment();
Begin
alignment := tcpr_.Value("vAlign");
case alignment of
"bottom": return TSDocxEnumerations.wdCellAlignVerticalBottom();
"center": return TSDocxEnumerations.wdCellAlignVerticalCenter();
else return TSDocxEnumerations.wdCellAlignVerticalTop();
end;
End;
Function TSDocxCell.WriteTopPadding(top);
Begin
tcpr_.CellMar.Top := 20 * top;
tcpr_.CellMar.TopType := "dxa";
tcpr_.Update();
End;
Function TSDocxCell.ReadTopPadding();
Begin
return tcpr_.CellMar.Value("Top") / 20;
End;
Function TSDocxCell.WriteLeftPadding(left);
Begin
tcpr_.CellMar.Left := 20 * left;
tcpr_.CellMar.LeftType := "dxa";
tcpr_.Update();
End;
Function TSDocxCell.ReadLeftPadding();
Begin
return tcpr_.CellMar.Value("Left") / 20;
End;
Function TSDocxCell.WriteBottomPadding(bottom);
Begin
tcpr_.CellMar.Bottom := 20 * bottom;
tcpr_.CellMar.BottomType := "dxa";
tcpr_.Update();
End;
Function TSDocxCell.ReadBottomPadding();
Begin
return tcpr_.CellMar.Value("Bottom") / 20;
End;
Function TSDocxCell.WriteRightPadding(right);
Begin
tcpr_.CellMar.Right := 20 * right;
tcpr_.CellMar.RightType := "dxa";
tcpr_.Update();
End;
Function TSDocxCell.ReadRightPadding();
Begin
return tcpr_.CellMar.Value("Right") / 20;
End;
Function TSDocxCell.ReadTables(index);
Begin
tables_obj := new TSDocxTables(self.Application, self.Creator, self);
tables_obj.Init(GetCell());
return ifnil(index) ? tables_obj : tables_obj[index];
End;
Function TSDocxCell.ReadShading();
Begin
shading_obj := new TSDocxShading(self.Application, self.Creator, self);
shading_obj.Init(tcpr_);
return shading_obj;
End;
Function TSDocxCell.ReadBorders(index);
Begin
borders_obj := new TSDocxBorders(self.Application, self.Creator, self);
borders_obj.Init(tcpr_.Borders);
return ifnil(index) ? obj : obj[index];
End;
Function TSDocxCell.WritePreferredWidthType(value);
Begin
width_value := nil;
width_type := nil;
case value of
TSDocxEnumerations.wdPreferredWidthAuto():
begin
table_.TblPr.Width := 0;
table_.TblPr.WidthType := "auto";
table_.TblPr.Update();
width_value := 0;
width_type := "auto";
end
TSDocxEnumerations.wdPreferredWidthPercent():
begin
table_.TblPr.Width := 5000;
table_.TblPr.WidthType := "pct";
table_.TblPr.Update();
width_value := integer(5000 / table_.Cols());
width_type := "pct";
end
TSDocxEnumerations.wdPreferredWidthPoints():
begin
width_value := nil;
width_type := "dxa";
end
end;
if ifnil(width_value) and ifnil(width_type) then return;
for r:=1 to table_.Rows() do
for c:=1 to table_.Cols() do
SetCellTcPrWidth(r, c, width_value, width_type);
End;
Function TSDocxCell.ReadPreferredWidthType();
Begin
width_type := tcpr_.Value("Type");
case width_type of
"auto": return TSDocxEnumerations.wdPreferredWidthAuto();
"dxa": return TSDocxEnumerations.wdPreferredWidthPoints();
"pct": return TSDocxEnumerations.wdPreferredWidthPercent();
end;
End;
Function TSDocxCell.WritePreferredWidth(value);
Begin
width_type := self.PreferredWidthType;
width_value := 0;
case width_type of
TSDocxEnumerations.wdPreferredWidthAuto(),
TSDocxEnumerations.wdPreferredWidthPoints():
begin
width_type := "dxa";
width_value := 20 * value;
if width_type > min_dxa_width_ then width_type := min_dxa_width_;
SetCellTcPrWidth(row_, column_, width_value, width_type);
end
TSDocxEnumerations.wdPreferredWidthPercent():
begin
width_type := "pct";
if value < 0 or value > 100 then return;
width_value := 50 * value;
SetCellTcPrWidth(row_, column_, width_value, width_type);
end
end;
End;
Function TSDocxCell.ReadPreferredWidth();
Begin
width_type := tcpr_.Value("Type");
width_value := tcpr_.Value("Width");
case width_type of
"auto", "dxa": return width_value / 20;
"pct": return width_value / 50;
end;
End;

View File

@ -1,50 +0,0 @@
Type TSDocxCells = Class(TSVbaBase)
public
Function Init(table);
private
table_; // TOfficeObj("TTable")
public
Function Add(BeforeCell);
Function AutoFit();
Function Delete(ShiftCells);
Function DistributeHeight();
Function DistributeWidth();
Function Item(Index);
Function Merge();
Function SetHeight(RowHeight, HeightRule);
Function SetWidth(ColumnWidth, RulerStyle);
Function Split(NumRows, NumColumns, MergeBeforeSplit);
property Borders read ReadBorders;
property Count read ReadCount;
property Height read ReadHeight write WriteHeight;
property HeightRule read ReadHeightRule write WriteHeightRule;
property NestingLevel read ReadNestingLevel;
property PreferredWidth read ReadPreferredWidth write WritePreferredWidth;
property PreferredWidthType read ReadPreferredWidthType write WritePreferredWidthType;
property Shading read ReadShading;
property VerticalAlignment read ReadVerticalAlignment write WriteVerticalAlignment;
property Width read ReadWidth write WriteWidth;
Function WriteWidth();
Function ReadWidth();
Function WriteVerticalAlignment();
Function ReadVerticalAlignment();
Function ReadShading();
Function WritePreferredWidthType();
Function ReadPreferredWidthType();
Function WritePreferredWidth();
Function ReadPreferredWidth();
Function ReadNestingLevel();
Function WriteHeightRule();
Function ReadHeightRule();
Function WriteHeight();
Function ReadHeight();
Function ReadCount();
Function ReadBorders();
End;
// ============== 实现 ================= //

View File

@ -1,238 +0,0 @@
Type TSDocxColumn = Class(TSVbaBase)
Uses TSDocxEnumerations;
public
Function Init(table, column);
private
Function SetColumnWidth(column, wvalue, type);
Function SerializeTblGrid();
private
table_;
column_;
min_dxa_width_; // 最小宽度 321
public
Function AutoFit();
Function Delete();
Function Select();
Function SetWidth(ColumnWidth, RulerStyle);
Function Sort(ExcludeHeader, SortFieldType, SortOrder, CaseSensitive, BidiSort, IgnoreThe, IgnoreKashida, IgnoreDiacritics, IgnoreHe, LanguageID);
property Borders read ReadBorders;
property Cells read ReadCells;
property Index read ReadIndex;
property IsFirst read ReadIsFirst;
property IsLast read ReadIsLast;
property NestingLevel read ReadNestingLevel;
property Next read ReadNext;
property PreferredWidth read ReadPreferredWidth write WritePreferredWidth;
property PreferredWidthType read ReadPreferredWidthType write WritePreferredWidthType;
property Previous read ReadPrevious;
property Shading read ReadShading;
property Width read ReadWidth write WriteWidth;
Function WriteWidth(value);
Function ReadWidth();
Function ReadShading();
Function ReadPrevious();
Function WritePreferredWidthType(value);
Function ReadPreferredWidthType();
Function WritePreferredWidth(value);
Function ReadPreferredWidth();
Function ReadNext();
Function ReadNestingLevel();
Function ReadIsLast();
Function ReadIsFirst();
Function ReadIndex();
Function ReadCells();
Function ReadBorders();
End;
// ============== 实现 ================= //
Function TSDocxColumn.Init(table, column);
Begin
table_ := table;
column_ := column;
min_dxa_width_ := 321;
End;
Function TSDocxColumn.SetColumnWidth(column, wvalue, type);
Begin
if ifnil(wvalue) and ifnil(type) then return;
tcells := table_.GetCells();
for r:=0 to table_.Rows()-1 do
begin
cell := tcells[r, column-1];
if ifnil(cell) then continue;
tcpr := class(TSXml).GetNode(cell[0], "w:tcPr", "first");
obj := TOfficeObj("TwTcPr");
obj.InitRootNode(tcpr);
obj.Width := wvalue;
obj.Type := type;
obj.Update();
end
End;
Function TSDocxColumn.SerializeTblGrid();
Begin
grid_col_arr := array();
total_width := 0;
grid_col := class(TSXml).GetNode(table_.Root(), "w:tblGrid/w:gridCol");
while ifObj(grid_col) do
begin
ww := strtoint(grid_col.GetAttribute("w:w"));
total_width += ww;
grid_col_arr[length(grid_col_arr)] := array(grid_col, ww);
grid_col := grid_col.NextElement();
end
return array(total_width, grid_col_arr);
End;
// function
Function TSDocxColumn.SetWidth(ColumnWidth, RulerStyle);
Begin
if ifnil(RulerStyle) then RulerStyle := TSDocxEnumerations.wdAdjustNone();
width_value := ColumnWidth * 20;
[total_width, grid_col_arr] := SerializeTblGrid();
// 设置w:tblPr的总宽度
table_.TblPr.Width := total_width;
table_.TblPr.WidthType := "dxa";
table_.TblPr.Update();
case RulerStyle of
TSDocxEnumerations.wdAdjustFirstColumn():
begin
if column_ < length(grid_col_arr)-1 then
begin
new_width := grid_col_arr[column_][1] + grid_col_arr[column_-1][1] - width_value;
if new_width < min_dxa_width_ then new_width := min_dxa_width_;
grid_col_arr[column_][0].SetAttribute("w:w", new_width);
SetColumnWidth(column_ + 1, new_w, "dxa");
end
end
TSDocxEnumerations.wdAdjustNone():
begin
end
TSDocxEnumerations.wdAdjustProportional():
begin
// TODO : 需要搞懂算法
end
TSDocxEnumerations.wdAdjustSameWidth():
begin
after_width := grid_col_arr[column_-1][1] - width_value;
for i:=column_ to length(grid_col_arr)-1 do
after_width += grid_col_arr[i][1];
if length(grid_col_arr) > column_ then // 不是最后一列
begin
num := length(grid_col_arr) - column_;
new_width := integer(after_width / num);
for c:=column_+1 to length(grid_col_arr) do
begin
grid_col_arr[c-1][0].SetAttribute("w:w", new_width);
SetColumnWidth(c, new_width, "dxa");
end
end
end
end;
grid_col_arr[column_-1][0].SetAttribute("w:w", width_value);
SetColumnWidth(column_, width_value, "dxa");
End;
//property
Function TSDocxColumn.WriteWidth(value);
Begin
End;
Function TSDocxColumn.ReadWidth();
Begin
End;
Function TSDocxColumn.WritePreferredWidthType(value);
Begin
case value of
TSDocxEnumerations.wdPreferredWidthAuto():
begin
table_.TblPr.Width := 0;
table_.TblPr.WidthType := "auto";
table_.TblPr.Update();
for c:=1 to table_.Cols() do
SetColumnWidth(c, 0, "auto");
end
TSDocxEnumerations.wdPreferredWidthPercent():
begin
table_.TblPr.Width := 5000;
table_.TblPr.WidthType := "pct";
table_.TblPr.Update();
width_value := integer(5000 / table_.Cols());
for c:=1 to table_.Cols() do
SetColumnWidth(c, width_value, "pct");
end
TSDocxEnumerations.wdPreferredWidthPoints():
begin
for c:=1 to table_.Cols() do
SetColumnWidth(c, nil, "dxa");
end
end;
End;
Function TSDocxColumn.ReadPreferredWidthType();
Begin
tcells := table_.GetCells();
cell := tcells[1, column_ - 1];
if ifnil(cell) then return nil;
tcpr := class(TSXml).GetNode(cell[0], "w:tcPr", "first");
obj := TOfficeObj("TwTcPr");
obj.InitRootNode(tcpr);
width_type := obj.Value("Type");
tcpr.print;
case width_type of
"auto": return TSDocxEnumerations.wdPreferredWidthAuto();
"dxa": return TSDocxEnumerations.wdPreferredWidthPoints();
"pct": return TSDocxEnumerations.wdPreferredWidthPercent();
end;
End;
Function TSDocxColumn.WritePreferredWidth(value);
Begin
width_type := self.PreferredWidthType;
width_value := 0;
case width_type of
TSDocxEnumerations.wdPreferredWidthAuto(),
TSDocxEnumerations.wdPreferredWidthPoints():
begin
width_type := "dxa";
width_value := 20 * value;
if width_type > min_dxa_width_ then width_type := min_dxa_width_;
SetColumnWidth(column_, width_value, width_type);
end
TSDocxEnumerations.wdPreferredWidthPercent():
begin
width_type := "pct";
if value < 0 or value > 100 then return;
width_value := 50 * value;
SetColumnWidth(column_, width_value, width_type);
end
end;
End;
Function TSDocxColumn.ReadPreferredWidth();
Begin
tcells := table_.GetCells();
cell := tcells[1, column_ - 1];
if ifnil(cell) then return nil;
tcpr := class(TSXml).GetNode(cell[0], "w:tcPr", "first");
obj := TOfficeObj("TwTcPr");
obj.InitRootNode(tcpr);
width_type := obj.Value("Type");
width_value := obj.Value("Width");
case width_type of
"auto", "dxa": return width_value / 20;
"pct": return width_value / 50;
end;
End;

View File

@ -1,81 +0,0 @@
Type TSDocxColumns = Class(TSVbaBase)
public
Function Init(table);
Function Operator[](index);
private
application_;
table_;
public
Function Add(BeforeColumn);
Function AutoFit();
Function Delete();
Function DistributeWidth();
Function Item(Index);
Function Select();
Function SetWidth(ColumnWidth, RulerStyle);
property Borders read ReadBorders;
property Count read ReadCount;
property First read ReadFirst;
property Last read ReadLast;
property NestingLevel read ReadNestingLevel;
property PreferredWidth read ReadPreferredWidth write WritePreferredWidth;
property PreferredWidthType read ReadPreferredWidthType write WritePreferredWidthType;
property Shading read ReadShading;
property Width read ReadWidth write WriteWidth;
Function WriteWidth();
Function ReadWidth();
Function ReadShading();
Function WritePreferredWidthType(value);
Function ReadPreferredWidthType();
Function WritePreferredWidth(value);
Function ReadPreferredWidth();
Function ReadNestingLevel();
Function ReadLast();
Function ReadFirst();
Function ReadCount();
Function ReadBorders();
End;
// ============== 实现 ================= //
Function TSDocxColumns.Init(table);
Begin
table_ := table;
End;
Function Operator TSDocxColumns.[](index);
Begin
column_obj := TSDocxColumn(self.Application, self.Creator, self);
column_obj.Init(table_, index);
return column_obj;
End;
// function
Function TSDocxColumns.Item(Index);
Begin
return self[Index];
End;
//property
Function TSDocxColumns.ReadCount();
Begin
return table_.Cols();
End;
Function TSDocxColumns.WritePreferredWidthType(value);
Begin
End;
Function TSDocxColumns.ReadPreferredWidthType();
Begin
End;
Function TSDocxColumns.WritePreferredWidth(value);
Begin
End;
Function TSDocxColumns.ReadPreferredWidth();
Begin
End;

View File

@ -1,642 +0,0 @@
Type TSDocxDocument = Class(TSVbaBase)
public
Function Init(docx, name, fullname);
private
collection_;
docx_;
file_name_;
full_name_;
tables_;
public
Function AcceptAllRevisions();
Function AcceptAllRevisionsShown();
Function Activate(); // Completed
Function AddToFavorite();
Function ApplyTSDocxDocumentTheme(FileName);
Function ApplyQuickStyleSet2(Style);
Function ApplyTheme(Name);
Function AutoFormat();
Function CanCheckIn();
Function CheckConsistency();
Function CheckGrammar();
Function CheckIn(SaveChanges, Comments, MakePublic);
Function CheckInWithVersion(SaveChanges, Comments, MakePublic, VersionType);
Function CheckSpelling(CustomDictionary, IgnoreUppercase, AlwaysSuggest, CustomDictionary2, CustomDictionary3, CustomDictionary4, CustomDictionary5, CustomDictionary6, CustomDictionary7, CustomDictionary8, CustomDictionary9, CustomDictionary10);
Function Close(SaveChanges, OriginalFormat, RouteTSDocxDocument); // Completed
Function ClosePrintPreview();
Function Compare(Name, AuthorName, CompareTarget, DetectFormatChanges, IgnoreAllComparisonWarnings, AddToRecentFiles, RemovePersonalInformation, RemoveDateAndTime);
Function ComputeStatistics(Statistic, IncludeFootnotesAndEndnotes);
Function Convert();
Function ConvertAutoHyphens();
Function ConvertNumbersToText();
Function ConvertVietDoc(CodePageOrigin);
Function CopyStylesFromTemplate(Template);
Function CountNumberedItems(NumberType, Level);
Function CreateLetterContent(DateFormat, IncludeHeaderFooter, PageDesign, LetterStyle, Letterhead, LetterheadLocation, LetterheadSize, RecipientName, RecipientAddress, Salutation, SalutationType, RecipientReference, MailingInstructions, AttentionLine, Subject, CCList, ReturnAddress, SenderName, Closing, SenderCompany, SenderJobTitle, SenderInitials, EnclosureNumber, InfoBlock, RecipientCode, RecipientGender, ReturnAddressShortForm, SenderCity, SenderCode, SenderGender, SenderReference);
Function DataForm();
Function DeleteAllComments(); // TODO
Function DeleteAllCommentsShown(); // TODO
Function DeleteAllEditableRanges(EditorID);
Function DeleteAllInkAnnotations();
Function DetectLanguage();
Function DowngradeTSDocxDocument();
Function EndReview();
Function ExportAsFixedFormat(OutputFileName, ExportFormat, OpenAfterExport, OptimizeFor, Range, From_, To_, Item, IncludeDocProps, KeepIRM, CreateBookmarks, DocStructureTags, BitmapMissingFonts, UseISO19005_1, FixedFormatExtClassPtr);
Function ExportAsFixedFormat2(OutputFileName, ExportFormat, OpenAfterExport, OptimizeFor, Range, From_, To_, Item, IncludeDocProps, KeepIRM, CreateBookmarks, DocStructureTags, BitmapMissingFonts, UseISO19005_1, OptimizeForImageQuality, FixedFormatExtClassPtr);
Function FitToPages();
Function FollowHyperlink (Address, SubAddress, NewWindow, AddHistory, ExtraInfo, Method, HeaderInfo);
Function FreezeLayout();
Function GetCrossReferenceItems(ReferenceType);
Function GetLetterContent();
Function GetWorkflowTasks();
Function GetWorkflowTemplates();
Function GoTo(What, Which, Count, Name);
Function LockServerFile();
Function MakeCompatibilityDefault();
Function ManualHyphenation();
Function Merge(Name, MergeTarget, DetectFormatChanges, UseFormattingFrom, AddToRecentFiles);
Function Post();
Function PresentIt();
Function PrintOut(Background, Append, Range, OutputFileName, From_, To_, Item, Copies, Pages, PageType, PrintToFile, Collate, FileName, ActivePrinterMacGX, ManualDuplexPrint, PrintZoomColumn, PrintZoomRow, PrintZoomPaperWidth, PrintZoomPaperHeight);
Function PrintPreview();
Function Protect(Type, NoReset, Password, UseIRM, EnforceStyleLock);
Function Range(Start, End_); // TODO
Function Redo(Times);
Function RejectAllRevisions();
Function RejectAllRevisionsShown();
Function Reload();
Function ReloadAs(Encoding);
Function RemoveTSDocxDocumentInformation(RemoveDocInfoType);
Function RemoveLockedStyles();
Function RemoveNumbers(NumberType);
Function RemoveTheme();
Function Repaginate();
Function ReplyWithChanges(ShowMessage);
Function ResetFormFields();
Function ReturnToLastReadPosition();
Function RunAutoMacro(Which);
Function RunLetterWizard(LetterContent, WizardMode);
Function Save(); // Completed
Function SaveAs2(FileName, FileFormat, LockComments, Password, AddToRecentFiles, WritePassword,
ReadOnlyRecommended, EmbedTrueTypeFonts, SaveNativePictureFormat, SaveFormsData,
SaveAsAOCELetter, Encoding, InsertLineBreaks, AllowSubstitutions, LineEnding,
AddBiDiMarks, CompatibilityMode); // Completed
Function SaveAsQuickStyleSet(FileName);
Function Select();
Function SelectAllEditableRanges(EditorID);
Function SelectContentControlsByTag(Tag);
Function SelectContentControlsByTitle(Title);
Function SelectLinkedControls(Node);
Function SelectNodes(XPath, PrefixMapping, FastSearchSkippingTextNodes);
Function SelectSingleNode(XPath, PrefixMapping, FastSearchSkippingTextNodes);
Function SelectUnlinkedControls(Stream);
Function SendFax(Address, Subject);
Function SendFaxOverInternet(Recipients, Subject, ShowMessage);
Function SendForReview(Recipients, Subject, ShowMessage, IncludeAttachment);
Function SendMail();
Function SetCompatibilityMode(Mode);
Function SetDefaultTableStyle(Style, SetInTemplate);
Function SetLetterContent(LetterContent);
Function SetPasswordEncryptionOptions(PasswordEncryptionProvider, PasswordEncryptionAlgorithm, PasswordEncryptionKeyLength, PasswordEncryptionFileProperties);
Function ToggleFormsDesign();
Function TransformTSDocxDocument(Path, DataOnly);
Function Undo(Times);
Function UndoClear();
Function Unprotect(Password);
Function UpdateStyles();
Function ViewCode();
Function ViewPropertyBrowser();
Function WebPagePreview();
property ActiveTheme read ReadActiveTheme;
property ActiveThemeDisplayName read ReadActiveThemeDisplayName;
property ActiveWindow read ReadActiveWindow; // TODO
property ActiveWritingStyle read ReadActiveWritingStyle write WriteActiveWritingStyle;
property AttachedTemplate read ReadAttachedTemplate write WriteAttachedTemplate;
property AutoFormatOverride read ReadAutoFormatOverride write WriteAutoFormatOverride;
property AutoHyphenation read ReadAutoHyphenation write WriteAutoHyphenation;
property AutoSaveOn read ReadAutoSaveOn write WriteAutoSaveOn;
property Background read ReadBackground;
property Bibliography read ReadBibliography;
property Bookmarks read ReadBookmarks;
property Broadcast read ReadBroadcast;
property BuiltInTSDocxDocumentProperties read ReadBuiltInTSDocxDocumentProperties;
property Characters read ReadCharacters;
property ChartDataPointTrack read ReadChartDataPointTrack write WriteChartDataPointTrack;
property ClickAndTypeParagraphStyle read ReadClickAndTypeParagraphStyle write WriteClickAndTypeParagraphStyle;
property CoAuthoring read ReadCoAuthoring;
property CodeName read ReadCodeName;
property CommandBars read ReadCommandBars;
property Comments read ReadComments;
property Compatibility read ReadCompatibility write WriteCompatibility;
property CompatibilityMode read ReadCompatibilityMode write WriteCompatibilityMode;
property ConsecutiveHyphensLimit read ReadConsecutiveHyphensLimit write WriteConsecutiveHyphensLimit;
property Container read ReadContainer;
property Content read ReadContent;
property ContentControls read ReadContentControls;
property ContentTypeProperties read ReadContentTypeProperties;
property CurrentRsid read ReadCurrentRsid;
property CustomTSDocxDocumentProperties read ReadCustomTSDocxDocumentProperties;
property CustomXMLParts read ReadCustomXMLParts;
property DefaultTableStyle read ReadDefaultTableStyle;
property DefaultTabStop read ReadDefaultTabStop write WriteDefaultTabStop;
property DefaultTargetFrame read ReadDefaultTargetFrame write WriteDefaultTargetFrame;
property DisableFeatures read ReadDisableFeatures write WriteDisableFeatures;
property DisableFeaturesIntroducedAfter read ReadDisableFeaturesIntroducedAfter write WriteDisableFeaturesIntroducedAfter;
property TSDocxDocumentInspectors read ReadTSDocxDocumentInspectors;
property TSDocxDocumentLibraryVersions read ReadTSDocxDocumentLibraryVersions;
property TSDocxDocumentTheme read ReadTSDocxDocumentTheme;
property DoNotEmbedSystemFonts read ReadDoNotEmbedSystemFonts write WriteDoNotEmbedSystemFonts;
property Email read ReadEmail;
property EmbedLinguisticData read ReadEmbedLinguisticData write WriteEmbedLinguisticData;
property EmbedTrueTypeFonts read ReadEmbedTrueTypeFonts write WriteEmbedTrueTypeFonts;
property EncryptionProvider read ReadEncryptionProvider write WriteEncryptionProvider;
property Endnotes read ReadEndnotes;
property EnforceStyle read ReadEnforceStyle write WriteEnforceStyle;
property Envelope read ReadEnvelope;
property FarEastLineBreakLanguage read ReadFarEastLineBreakLanguage write WriteFarEastLineBreakLanguage;
property FarEastLineBreakLevel read ReadFarEastLineBreakLevel write WriteFarEastLineBreakLevel;
property Fields read ReadFields;
property Final read ReadFinal write WriteFinal;
property Footnotes read ReadFootnotes;
property FormattingShowClear read ReadFormattingShowClear write WriteFormattingShowClear;
property FormattingShowFilter read ReadFormattingShowFilter write WriteFormattingShowFilter;
property FormattingShowFont read ReadFormattingShowFont write WriteFormattingShowFont;
property FormattingShowNextLevel read ReadFormattingShowNextLevel write WriteFormattingShowNextLevel;
property FormattingShowNumbering read ReadFormattingShowNumbering write WriteFormattingShowNumbering;
property FormattingShowParagraph read ReadFormattingShowParagraph write WriteFormattingShowParagraph;
property FormattingShowUserStyleName read ReadFormattingShowUserStyleName write WriteFormattingShowUserStyleName;
property FormFields read ReadFormFields;
property FormsDesign read ReadFormsDesign;
property Frames read ReadFrames;
property Frameset read ReadFrameset;
property FullName read ReadFullName;
property GrammarChecked read ReadGrammarChecked;
property GrammaticalErrors read ReadGrammaticalErrors;
property GridDistanceHorizontal read ReadGridDistanceHorizontal write WriteGridDistanceHorizontal;
property GridDistanceVertical read ReadGridDistanceVertical write WriteGridDistanceVertical;
property GridOriginFromMargin read ReadGridOriginFromMargin write WriteGridOriginFromMargin;
property GridOriginHorizontal read ReadGridOriginHorizontal write WriteGridOriginHorizontal;
property GridSpaceBetweenHorizontalLinesroperty read ReadGridSpaceBetweenHorizontalLinesroperty write WriteGridSpaceBetweenHorizontalLinesroperty;
property GridSpaceBetweenVerticalLines read ReadGridSpaceBetweenVerticalLines write WriteGridSpaceBetweenVerticalLines;
property HasPassword read ReadHasPassword;
property HasVBProject read ReadHasVBProject;
property HTMLDivisions read ReadHTMLDivisions;
property Hyperlinks read ReadHyperlinks;
property HyphenateCaps read ReadHyphenateCaps write WriteHyphenateCaps;
property HyphenationZone read ReadHyphenationZone write WriteHyphenationZone;
property Indexes read ReadIndexes;
property InlineShapes read ReadInlineShapes;
property IsInAutosave read ReadIsInAutosave;
property IsMasterTSDocxDocument read ReadIsMasterTSDocxDocument;
property IsSubdocument read ReadIsSubdocument;
property JustificationMode read ReadJustificationMode write WriteJustificationMode;
property KerningByAlgorithm read ReadKerningByAlgorithm write WriteKerningByAlgorithm;
property Kind read ReadKind write WriteKind;
property LanguageDetected read ReadLanguageDetected write WriteLanguageDetected;
property ListParagraphs read ReadListParagraphs;
property Lists read ReadLists;
property ListTemplates read ReadListTemplates;
property LockQuickStyleSet read ReadLockQuickStyleSet write WriteLockQuickStyleSet;
property LockTheme read ReadLockTheme write WriteLockTheme;
property MailEnvelope read ReadMailEnvelope;
property MailMerge read ReadMailMerge;
property Name read ReadName;
property NoLineBreakAfter read ReadNoLineBreakAfter write WriteNoLineBreakAfter;
property NoLineBreakBefore read ReadNoLineBreakBefore write WriteNoLineBreakBefore;
property OMathBreakBin read ReadOMathBreakBin write WriteOMathBreakBin;
property OMathBreakSub read ReadOMathBreakSub write WriteOMathBreakSub;
property OMathFontName read ReadOMathFontName write WriteOMathFontName;
property OMathIntSubSupLim read ReadOMathIntSubSupLim write WriteOMathIntSubSupLim;
property OMathJc read ReadOMathJc write WriteOMathJc;
property OMathLeftMargin read ReadOMathLeftMargin write WriteOMathLeftMargin;
property OMathNarySupSubLim read ReadOMathNarySupSubLim write WriteOMathNarySupSubLim;
property OMathNarySupSubLim read ReadOMathNarySupSubLim write WriteOMathNarySupSubLim;
property OMathRightMargin read ReadOMathRightMargin write WriteOMathRightMargin;
property OMaths read ReadOMaths;
property OMathSmallFrac read ReadOMathSmallFrac write WriteOMathSmallFrac;
property OMathWrap read ReadOMathWrap write WriteOMathWrap;
property OpenEncoding read ReadOpenEncoding;
property OptimizeForWord97 read ReadOptimizeForWord97 write WriteOptimizeForWord97;
property OriginalTSDocxDocumentTitle read ReadOriginalTSDocxDocumentTitle;
property PageSetup read ReadPageSetup;
property Paragraphs read ReadParagraphs;
property Password write WritePassword;
property PasswordEncryptionAlgorithm read ReadPasswordEncryptionAlgorithm;
property PasswordEncryptionFileProperties read ReadPasswordEncryptionFileProperties;
property PasswordEncryptionKeyLength read ReadPasswordEncryptionKeyLength;
property PasswordEncryptionProvider read ReadPasswordEncryptionProvider;
property Path read ReadPath;
property Permission read ReadPermission;
property PrintFormsData read ReadPrintFormsData write WritePrintFormsData;
property PrintPostScriptOverText read ReadPrintPostScriptOverText write WritePrintPostScriptOverText;
property PrintRevisions read ReadPrintRevisions write WritePrintRevisions;
property ProtectionType read ReadProtectionType;
property ReadabilityStatistics read ReadReadabilityStatistics;
property ReadingLayoutSizeX read ReadReadingLayoutSizeX write WriteReadingLayoutSizeX;
property ReadingLayoutSizeY read ReadReadingLayoutSizeY write WriteReadingLayoutSizeY;
property ReadingModeLayoutFrozen read ReadReadingModeLayoutFrozen write WriteReadingModeLayoutFrozen;
property ReadOnly read ReadReadOnly;
property ReadOnlyRecommended read ReadReadOnlyRecommended write WriteReadOnlyRecommended;
property RemoveDateAndTime read ReadRemoveDateAndTime write WriteRemoveDateAndTime;
property RemovePersonalInformation read ReadRemovePersonalInformation write WriteRemovePersonalInformation;
property Research read ReadResearch;
property RevisedTSDocxDocumentTitle read ReadRevisedTSDocxDocumentTitle;
property Revisions read ReadRevisions;
property Saved read ReadSaved write WriteSaved;
property SaveEncoding read ReadSaveEncoding write WriteSaveEncoding;
property SaveFormat read ReadSaveFormat;
property SaveFormsData read ReadSaveFormsData write WriteSaveFormsData;
property SaveSubsetFonts read ReadSaveSubsetFonts write WriteSaveSubsetFonts;
property Scripts read ReadScripts;
property Sections read ReadSections;
property SensitivityLabel read ReadSensitivityLabel;
property Sentences read ReadSentences;
property ServerPolicy read ReadServerPolicy;
property Shapes read ReadShapes;
property ShowGrammaticalErrors read ReadShowGrammaticalErrors write WriteShowGrammaticalErrors;
property ShowSpellingErrors read ReadShowSpellingErrors write WriteShowSpellingErrors;
property Signatures read ReadSignatures;
property SmartTSDocxDocument read ReadSmartTSDocxDocument;
property SnapToGrid read ReadSnapToGrid write WriteSnapToGrid;
property SnapToShapes read ReadSnapToShapes write WriteSnapToShapes;
property SpellingChecked read ReadSpellingChecked write WriteSpellingChecked;
property SpellingErrors read ReadSpellingErrors;
property StoryRanges read ReadStoryRanges;
property Styles read ReadStyles;
property StyleSheets read ReadStyleSheets;
property StyleSortMethod read ReadStyleSortMethod write WriteStyleSortMethod;
property Subdocuments read ReadSubdocuments;
property Tables read ReadTables;
property TablesOfAuthorities read ReadTablesOfAuthorities write WriteTablesOfAuthorities;
property TablesOfAuthoritiesCategories read ReadTablesOfAuthoritiesCategories write WriteTablesOfAuthoritiesCategories;
property TablesOfContents read ReadTablesOfContents write WriteTablesOfContents;
property TablesOfFigures read ReadTablesOfFigures write WriteTablesOfFigures;
property TextEncoding read ReadTextEncoding write WriteTextEncoding;
property TextLineEnding read ReadTextLineEnding write WriteTextLineEnding;
property TrackFormatting read ReadTrackFormatting write WriteTrackFormatting;
property TrackMoves read ReadTrackMoves write WriteTrackMoves;
property TrackRevisions read ReadTrackRevisions write WriteTrackRevisions;
property Type read ReadType;
property UpdateStylesOnOpen read ReadUpdateStylesOnOpen write WriteUpdateStylesOnOpen;
property UseMathDefaults read ReadUseMathDefaults write WriteUseMathDefaults;
property UserControl read ReadUserControl write WriteUserControl;
property Variables read ReadVariables;
property VBASigned read ReadVBASigned;
property VBProject read ReadVBProject;
property WebOptions read ReadWebOptions;
property Windows read ReadWindows;
property WordOpenXML read ReadWordOpenXML;
property Words read ReadWords;
property WritePassword write WriteWritePassword;
property WriteReserved read ReadWriteReserved;
property XMLSaveThroughXSLT read ReadXMLSaveThroughXSLT write WriteXMLSaveThroughXSLT;
property XMLSchemaReferences read ReadXMLSchemaReferences;
property XMLShowAdvancedErrors read ReadXMLShowAdvancedErrors write WriteXMLShowAdvancedErrors;
property XMLUseXSLTWhenSaving read ReadXMLUseXSLTWhenSaving write WriteXMLUseXSLTWhenSaving;
Function WriteXMLUseXSLTWhenSaving();
Function ReadXMLUseXSLTWhenSaving();
Function WriteXMLShowAdvancedErrors();
Function ReadXMLShowAdvancedErrors();
Function ReadXMLSchemaReferences();
Function WriteXMLSaveThroughXSLT();
Function ReadXMLSaveThroughXSLT();
Function ReadWriteReserved();
Function WriteWritePassword();
Function ReadWords();
Function ReadWordOpenXML();
Function ReadWindows();
Function ReadWebOptions();
Function ReadVBProject();
Function ReadVBASigned();
Function ReadVariables();
Function WriteUserControl();
Function ReadUserControl();
Function WriteUseMathDefaults();
Function ReadUseMathDefaults();
Function WriteUpdateStylesOnOpen();
Function ReadUpdateStylesOnOpen();
Function ReadType();
Function WriteTrackRevisions();
Function ReadTrackRevisions();
Function WriteTrackMoves();
Function ReadTrackMoves();
Function WriteTrackFormatting();
Function ReadTrackFormatting();
Function WriteTextLineEnding();
Function ReadTextLineEnding();
Function WriteTextEncoding();
Function ReadTextEncoding();
Function WriteTablesOfFigures();
Function ReadTablesOfFigures();
Function WriteTablesOfContents();
Function ReadTablesOfContents();
Function WriteTablesOfAuthoritiesCategories();
Function ReadTablesOfAuthoritiesCategories();
Function WriteTablesOfAuthorities();
Function ReadTablesOfAuthorities();
Function ReadTables(index);
Function ReadSubdocuments();
Function WriteStyleSortMethod();
Function ReadStyleSortMethod();
Function ReadStyleSheets();
Function ReadStyles();
Function ReadStoryRanges();
Function ReadSpellingErrors();
Function WriteSpellingChecked();
Function ReadSpellingChecked();
Function WriteSnapToShapes();
Function ReadSnapToShapes();
Function WriteSnapToGrid();
Function ReadSnapToGrid();
Function ReadSmartTSDocxDocument();
Function ReadSignatures();
Function WriteShowSpellingErrors();
Function ReadShowSpellingErrors();
Function WriteShowGrammaticalErrors();
Function ReadShowGrammaticalErrors();
Function ReadShapes();
Function ReadServerPolicy();
Function ReadSentences();
Function ReadSensitivityLabel();
Function ReadSections();
Function ReadScripts();
Function WriteSaveSubsetFonts();
Function ReadSaveSubsetFonts();
Function WriteSaveFormsData();
Function ReadSaveFormsData();
Function ReadSaveFormat();
Function WriteSaveEncoding();
Function ReadSaveEncoding();
Function WriteSaved();
Function ReadSaved();
Function ReadRevisions();
Function ReadRevisedTSDocxDocumentTitle();
Function ReadResearch();
Function WriteRemovePersonalInformation();
Function ReadRemovePersonalInformation();
Function WriteRemoveDateAndTime();
Function ReadRemoveDateAndTime();
Function WriteReadOnlyRecommended();
Function ReadReadOnlyRecommended();
Function ReadReadOnly();
Function WriteReadingModeLayoutFrozen();
Function ReadReadingModeLayoutFrozen();
Function WriteReadingLayoutSizeY();
Function ReadReadingLayoutSizeY();
Function WriteReadingLayoutSizeX();
Function ReadReadingLayoutSizeX();
Function ReadReadabilityStatistics();
Function ReadProtectionType();
Function WritePrintRevisions();
Function ReadPrintRevisions();
Function WritePrintPostScriptOverText();
Function ReadPrintPostScriptOverText();
Function WritePrintFormsData();
Function ReadPrintFormsData();
Function ReadPermission();
Function ReadPath();
Function ReadPasswordEncryptionProvider();
Function ReadPasswordEncryptionKeyLength();
Function ReadPasswordEncryptionFileProperties();
Function ReadPasswordEncryptionAlgorithm();
Function WritePassword(password);
Function ReadParagraphs();
Function ReadPageSetup();
Function ReadOriginalTSDocxDocumentTitle();
Function WriteOptimizeForWord97();
Function ReadOptimizeForWord97();
Function ReadOpenEncoding();
Function WriteOMathWrap();
Function ReadOMathWrap();
Function WriteOMathSmallFrac();
Function ReadOMathSmallFrac();
Function ReadOMaths();
Function WriteOMathRightMargin();
Function ReadOMathRightMargin();
Function WriteOMathNarySupSubLim();
Function ReadOMathNarySupSubLim();
Function WriteOMathLeftMargin();
Function ReadOMathLeftMargin();
Function WriteOMathJc();
Function ReadOMathJc();
Function WriteOMathIntSubSupLim();
Function ReadOMathIntSubSupLim();
Function WriteOMathFontName();
Function ReadOMathFontName();
Function WriteOMathBreakSub();
Function ReadOMathBreakSub();
Function WriteOMathBreakBin();
Function ReadOMathBreakBin();
Function WriteNoLineBreakBefore();
Function ReadNoLineBreakBefore();
Function WriteNoLineBreakAfter();
Function ReadNoLineBreakAfter();
Function ReadName();
Function ReadMailEnvelope();
Function ReadMailMerge();
Function WriteLockTheme();
Function ReadLockTheme();
Function WriteLockQuickStyleSet();
Function ReadLockQuickStyleSet();
Function ReadListTemplates();
Function ReadLists();
Function ReadListParagraphs();
Function WriteLanguageDetected();
Function ReadLanguageDetected();
Function WriteKind();
Function ReadKind();
Function WriteKerningByAlgorithm();
Function ReadKerningByAlgorithm();
Function WriteJustificationMode();
Function ReadJustificationMode();
Function ReadIsSubdocument();
Function ReadIsMasterTSDocxDocument();
Function ReadIsInAutosave();
Function ReadInlineShapes();
Function ReadIndexes();
Function WriteHyphenationZone();
Function ReadHyphenationZone();
Function WriteHyphenateCaps();
Function ReadHyphenateCaps();
Function ReadHyperlinks();
Function ReadHTMLDivisions();
Function ReadHasVBProject();
Function ReadHasPassword();
Function WriteGridSpaceBetweenVerticalLines();
Function ReadGridSpaceBetweenVerticalLines();
Function WriteGridSpaceBetweenHorizontalLinesroperty();
Function ReadGridSpaceBetweenHorizontalLinesroperty();
Function WriteGridOriginVertical();
Function ReadGridOriginVertical();
Function WriteGridOriginHorizontal();
Function ReadGridOriginHorizontal();
Function WriteGridOriginFromMargin();
Function ReadGridOriginFromMargin();
Function WriteGridDistanceVertical();
Function ReadGridDistanceVertical();
Function WriteGridDistanceHorizontal();
Function ReadGridDistanceHorizontal();
Function ReadGrammaticalErrors();
Function ReadGrammarChecked();
Function ReadFullName();
Function ReadFrameset();
Function ReadFrames();
Function ReadFormsDesign();
Function ReadFormFields();
Function WriteFormattingShowUserStyleName();
Function ReadFormattingShowUserStyleName();
Function WriteFormattingShowParagraph();
Function ReadFormattingShowParagraph();
Function WriteFormattingShowNumbering();
Function ReadFormattingShowNumbering();
Function WriteFormattingShowNextLevel();
Function ReadFormattingShowNextLevel();
Function WriteFormattingShowFont();
Function ReadFormattingShowFont();
Function WriteFormattingShowFilter();
Function ReadFormattingShowFilter();
Function WriteFormattingShowClear();
Function ReadFormattingShowClear();
Function ReadFootnotes();
Function WriteFinal();
Function ReadFinal();
Function ReadFields();
Function WriteFarEastLineBreakLevel();
Function ReadFarEastLineBreakLevel();
Function WriteFarEastLineBreakLanguage();
Function ReadFarEastLineBreakLanguage();
Function ReadEnvelope();
Function WriteEnforceStyle();
Function ReadEnforceStyle();
Function ReadEndnotes();
Function WriteEncryptionProvider();
Function ReadEncryptionProvider();
Function WriteEmbedTrueTypeFonts();
Function ReadEmbedTrueTypeFonts();
Function WriteEmbedLinguisticData();
Function ReadEmbedLinguisticData();
Function ReadEmail();
Function WriteDoNotEmbedSystemFonts();
Function ReadDoNotEmbedSystemFonts();
Function ReadTSDocxDocumentTheme();
Function ReadTSDocxDocumentLibraryVersions();
Function ReadTSDocxDocumentInspectors();
Function WriteDisableFeaturesIntroducedAfter();
Function ReadDisableFeaturesIntroducedAfter();
Function WriteDisableFeatures();
Function ReadDisableFeatures();
Function WriteDefaultTargetFrame();
Function ReadDefaultTargetFrame();
Function WriteDefaultTabStop();
Function ReadDefaultTabStop();
Function ReadDefaultTableStyle();
Function ReadCustomXMLParts();
Function ReadCustomTSDocxDocumentProperties();
Function ReadCurrentRsid();
Function ReadContentTypeProperties();
Function ReadContentControls();
Function ReadContent();
Function ReadContainer();
Function WriteConsecutiveHyphensLimit();
Function ReadConsecutiveHyphensLimit();
Function WriteCompatibilityMode();
Function ReadCompatibilityMode();
Function WriteCompatibility();
Function ReadCompatibility();
Function ReadComments();
Function ReadCommandBars();
Function ReadCodeName();
Function ReadCoAuthoring();
Function WriteClickAndTypeParagraphStyle();
Function ReadClickAndTypeParagraphStyle();
Function WriteChartDataPointTrack();
Function ReadChartDataPointTrack();
Function ReadCharacters();
Function ReadBuiltInTSDocxDocumentProperties();
Function ReadBroadcast();
Function ReadBookmarks();
Function ReadBibliography();
Function ReadBackground();
Function WriteAutoSaveOn();
Function ReadAutoSaveOn();
Function WriteAutoHyphenation();
Function ReadAutoHyphenation();
Function WriteAutoFormatOverride();
Function ReadAutoFormatOverride();
Function WriteAttachedTemplate();
Function ReadAttachedTemplate();
Function WriteActiveWritingStyle();
Function ReadActiveWritingStyle();
Function ReadActiveWindow();
Function ReadActiveThemeDisplayName();
Function ReadActiveTheme();
End;
// ============== 实现 ================= //
Function TSDocxDocument.Init(docx, name, fullname);
Begin
docx_ := docx;
file_name_ := name;
full_name_ := fullname;
collection_ := class(Collection).GetInstance('document');
tables_ := new TSDocxTables(self.Application, self.Parent, self);
tables.Init(docx);
End;
// function
Function TSDocxDocument.Activate();
Begin
collection_.SetActivation(file_name_);
End;
Function TSDocxDocument.Close(SaveChanges, OriginalFormat, RouteTSDocxDocument)
Begin
[err, msg] := docx_.Save();
if not err then collection_.RemoveCollection(file_name_);
End;
Function TSDocxDocument.Save();
Begin
docx_.Save();
End;
Function TSDocxDocument.SaveAs2(FileName, FileFormat, LockComments, Password, AddToRecentFiles, WritePassword,
ReadOnlyRecommended, EmbedTrueTypeFonts, SaveNativePictureFormat, SaveFormsData,
SaveAsAOCELetter, Encoding, InsertLineBreaks, AllowSubstitutions, LineEnding,
AddBiDiMarks, CompatibilityMode);
Begin
docx_.SetPassword(Password);
docx_.SaveAs("", FileName);
End;
// property
Function TSDocxDocument.ReadFullName();
Begin
return full_name_;
End;
Function TSDocxDocument.ReadName();
Begin
return file_name_;
End;
Function TSDocxDocument.WritePassword(passwd);
Begin
docx_.SetPassword(passwd);
End;
Function TSDocxDocument.ReadPath();
Begin
return ExtractFileDir(full_name_);
End;
Function TSDocxDocument.ReadTables(index);
Begin
if ifnil(index) then return tables_;
return tables_[index];
End;

View File

@ -1,94 +0,0 @@
Type TSDocxDocuments = Class(TSVbaBase)
public
Function Init();
Function Operator[](index);
Function GetActivation();
private
Function AddDocument(xlsx, name); // Completed
private
collection_;
public
Function Add(Template, NewTemplate, DocumentType, Visible); // Completed
Function AddBlogDocument(ProviderID, PostURL, BlogName, PostID);
Function CanCheckOut(FileName);
Function CheckOut(FileName);
Function Close(SaveChanges, OriginalFormat, RouteDocument);
Function Item(Index); // Completed
Function Open(FileName, ConfirmConversions, ReadOnly, AddToRecentFiles, PasswordDocument,
PasswordTemplate, Revert, WritePasswordDocument, WritePasswordTemplate, Format,
Encoding, Visible, OpenConflictDocument, OpenAndRepair, DocumentDirection, NoEncodingDialog); // Completed
Function OpenNoRepairDialog(FileName, ConfirmConversions, ReadOnly, AddToRecentFiles,
PasswordDocument, PasswordTemplate, Revert, WritePasswordDocument,
WritePasswordTemplate, Format, Encoding, Visible, OpenAndRepair,
DocumentDirection, NoEncodingDialog, XMLTransform);
Function Save(NoPrompt, OriginalFormat); // Completed
property Count read ReadCount;
Function ReadCount(); // Completed
End;
// ============== 实现 ================= //
Function TSDocxDocuments.Init();
Begin
collection_ := class(Collection).GetInstance('document');
End;
Function TSDocxDocuments.AddDocument(docx, fullname);
Begin
name := ExtractFileName(fullname);
document := new TSDocxDocument(self.Application, self.Creator, self);
document.Init(docx, name, fullname);
collection_.AddCollection(document, name);
End;
Function Operator TSDocxDocuments.[](index);
Begin
return collection_[index];
End;
Function TSDocxDocuments.GetActivation();
Begin
return collection_.GetActivation();
End;
// function
Function TSDocxDocuments.Add(Template, NewTemplate, DocumentType, Visible);
Begin
docx := new TSDocxFile();
docx.NewFile();
AddDocument(docx, collection_.CalNewName("文档"));
End;
Function TSDocxDocuments.Item(index);
Begin
return self[index];
End;
Function TSDocxDocuments.Open(FileName, ConfirmConversions, ReadOnly, AddToRecentFiles, PasswordDocument,
PasswordTemplate, Revert, WritePasswordDocument, WritePasswordTemplate, Format,
Encoding, Visible, OpenConflictDocument, OpenAndRepair, DocumentDirection, NoEncodingDialog);
Begin
docx := new TSDocxFile();
[err, msg] := docx.OpenFile("", FileName, PasswordDocument);
if err then return;
AddDocument(docx, docx.FileName());
End;
Function TSDocxDocuments.Save(NoPrompt, OriginalFormat);
Begin
num := self.Count;
for i:=1 to num do
self[i].Save();
End;
// property
Function TSDocxDocuments.ReadCount();
Begin
return collection_.GetCount();
End;

View File

@ -1,593 +0,0 @@
Unit TSDocxEnumerations;
Interface
// WdSaveOptions enumeration
Function TEST123();
Function wdDoNotSaveChanges();
Function wdPromptToSaveChanges();
Function wdSaveChanges();
// WdAutoFitBehavior enumeration
Function wdAutoFitContent();
Function wdAutoFitFixed();
Function wdAutoFitWindow();
// WdDeleteCells enumeration
Function wdDeleteCellsEntireColumn();
Function wdDeleteCellsEntireRow();
Function wdDeleteCellsShiftLeft();
Function wdDeleteCellsShiftUp();
// WdCellVerticalAlignment
Function wdCellAlignVerticalBottom();
Function wdCellAlignVerticalCenter();
Function wdCellAlignVerticalTop();
// WdTextureIndex
Function wdTexture10Percent();
Function wdTexture12Pt5Percent();
Function wdTexture15Percent();
Function wdTexture17Pt5Percent();
Function wdTexture20Percent();
Function wdTexture22Pt5Percent();
Function wdTexture25Percent();
Function wdTexture27Pt5Percent();
Function wdTexture2Pt5Percent();
Function wdTexture30Percent();
Function wdTexture32Pt5Percent();
Function wdTexture35Percent();
Function wdTexture37Pt5Percent();
Function wdTexture40Percent();
Function wdTexture42Pt5Percent();
Function wdTexture45Percent();
Function wdTexture47Pt5Percent();
Function wdTexture50Percent();
Function wdTexture52Pt5Percent();
Function wdTexture55Percent();
Function wdTexture57Pt5Percent();
Function wdTexture5Percent();
Function wdTexture60Percent();
Function wdTexture62Pt5Percent();
Function wdTexture65Percent();
Function wdTexture67Pt5Percent();
Function wdTexture70Percent();
Function wdTexture72Pt5Percent();
Function wdTexture75Percent();
Function wdTexture77Pt5Percent();
Function wdTexture7Pt5Percent();
Function wdTexture80Percent();
Function wdTexture82Pt5Percent();
Function wdTexture85Percent();
Function wdTexture87Pt5Percent();
Function wdTexture90Percent();
Function wdTexture92Pt5Percent();
Function wdTexture95Percent();
Function wdTexture97Pt5Percent();
Function wdTextureCross();
Function wdTextureDarkCross();
Function wdTextureDarkDiagonalCross();
Function wdTextureDarkDiagonalDown();
Function wdTextureDarkDiagonalUp();
Function wdTextureDarkHorizontal();
Function wdTextureDarkVertical();
Function wdTextureDiagonalCross();
Function wdTextureDiagonalDown();
Function wdTextureDiagonalUp();
Function wdTextureHorizontal();
Function wdTextureNone();
Function wdTextureSolid();
Function wdTextureVertical();
// WdRowHeightRule
Function wdRowHeightAtLeast();
Function wdRowHeightAuto();
Function wdRowHeightExactly();
// WdBorderType
Function wdBorderBottom();
Function wdBorderDiagonalDown();
Function wdBorderDiagonalUp();
Function wdBorderHorizontal();
Function wdBorderLeft();
Function wdBorderRight();
Function wdBorderTop();
Function wdBorderVertical();
// WdLineStyle
Function wdLineStyleDashDot();
Function wdLineStyleDashDotDot();
Function wdLineStyleDashDotStroked();
Function wdLineStyleDashLargeGap();
Function wdLineStyleDashSmallGap();
Function wdLineStyleDot();
Function wdLineStyleDouble();
Function wdLineStyleDoubleWavy();
Function wdLineStyleEmboss3D();
Function wdLineStyleEngrave3D();
Function wdLineStyleInset();
Function wdLineStyleNone();
Function wdLineStyleOutset();
Function wdLineStyleSingle();
Function wdLineStyleSingleWavy();
Function wdLineStyleThickThinLargeGap();
Function wdLineStyleThickThinMedGap();
Function wdLineStyleThickThinSmallGap();
Function wdLineStyleThinThickLargeGap();
Function wdLineStyleThinThickMedGap();
Function wdLineStyleThinThickSmallGap();
Function wdLineStyleThinThickThinLargeGap();
Function wdLineStyleThinThickThinMedGap();
Function wdLineStyleThinThickThinSmallGap();
Function wdLineStyleTriple();
// WdRulerStyle
Function wdAdjustFirstColumn();
Function wdAdjustNone();
Function wdAdjustProportional();
Function wdAdjustSameWidth();
// WdPreferredWidthType
Function wdPreferredWidthAuto();
Function wdPreferredWidthPercent();
Function wdPreferredWidthPoints();
Implementation
Function wdDoNotSaveChanges();
Begin
return 0;
End;
Function wdPromptToSaveChanges();
Begin
return -2;
End;
Function wdSaveChanges();
Begin
return -1;
End;
// WdAutoFitBehavior enumeration
Function wdAutoFitContent();
Begin
return 1;
End;
Function wdAutoFitFixed();
Begin
return 0;
End;
Function wdAutoFitWindow();
Begin
return 2;
End;
// WdDeleteCells enumeration
Function wdDeleteCellsEntireColumn();
Begin
return 3;
End;
Function wdDeleteCellsEntireRow();
Begin
return 2;
End;
Function wdDeleteCellsShiftLeft();
Begin
return 1;
End;
Function wdDeleteCellsShiftUp();
Begin
return 0;
End;
// WdCellVerticalAlignment
Function wdCellAlignVerticalBottom();
Begin
return 3;
End;
Function wdCellAlignVerticalCenter();
Begin
return 1;
End;
Function wdCellAlignVerticalTop();
Begin
return 0;
End;
// WdTextureIndex
Function wdTexture10Percent();
Begin
return 100;
End;
Function wdTexture12Pt5Percent();
Begin
return 125;
End;
Function wdTexture15Percent();
Begin
return 150;
End;
Function wdTexture17Pt5Percent();
Begin
return 175;
End;
Function wdTexture20Percent();
Begin
return 200;
End;
Function wdTexture22Pt5Percent();
Begin
return 225;
End;
Function wdTexture25Percent();
Begin
return 250;
End;
Function wdTexture27Pt5Percent();
Begin
return 275;
End;
Function wdTexture2Pt5Percent();
Begin
return 25;
End;
Function wdTexture30Percent();
Begin
return 300;
End;
Function wdTexture32Pt5Percent();
Begin
return 325;
End;
Function wdTexture35Percent();
Begin
return 350;
End;
Function wdTexture37Pt5Percent();
Begin
return 375;
End;
Function wdTexture40Percent();
Begin
return 400;
End;
Function wdTexture42Pt5Percent();
Begin
return 425;
End;
Function wdTexture45Percent();
Begin
return 450;
End;
Function wdTexture47Pt5Percent();
Begin
return 475;
End;
Function wdTexture50Percent();
Begin
return 500;
End;
Function wdTexture52Pt5Percent();
Begin
return 525;
End;
Function wdTexture55Percent();
Begin
return 550;
End;
Function wdTexture57Pt5Percent();
Begin
return 575;
End;
Function wdTexture5Percent();
Begin
return 50;
End;
Function wdTexture60Percent();
Begin
return 600;
End;
Function wdTexture62Pt5Percent();
Begin
return 625;
End;
Function wdTexture65Percent();
Begin
return 650;
End;
Function wdTexture67Pt5Percent();
Begin
return 675;
End;
Function wdTexture70Percent();
Begin
return 700;
End;
Function wdTexture72Pt5Percent();
Begin
return 725;
End;
Function wdTexture75Percent();
Begin
return 750;
End;
Function wdTexture77Pt5Percent();
Begin
return 775;
End;
Function wdTexture7Pt5Percent();
Begin
return 75;
End;
Function wdTexture80Percent();
Begin
return 800;
End;
Function wdTexture82Pt5Percent();
Begin
return 825;
End;
Function wdTexture85Percent();
Begin
return 850;
End;
Function wdTexture87Pt5Percent();
Begin
return 875;
End;
Function wdTexture90Percent();
Begin
return 900;
End;
Function wdTexture92Pt5Percent();
Begin
return 925;
End;
Function wdTexture95Percent();
Begin
return 950;
End;
Function wdTexture97Pt5Percent();
Begin
return 975;
End;
Function wdTextureCross();
Begin
return -11;
End;
Function wdTextureDarkCross();
Begin
return -5;
End;
Function wdTextureDarkDiagonalCross();
Begin
return -6;
End;
Function wdTextureDarkDiagonalDown();
Begin
return -3;
End;
Function wdTextureDarkDiagonalUp();
Begin
return -4;
End;
Function wdTextureDarkHorizontal();
Begin
return -1;
End;
Function wdTextureDarkVertical();
Begin
return -2;
End;
Function wdTextureDiagonalCross();
Begin
return -12;
End;
Function wdTextureDiagonalDown();
Begin
return -9;
End;
Function wdTextureDiagonalUp();
Begin
return -10;
End;
Function wdTextureHorizontal();
Begin
return -7;
End;
Function wdTextureNone();
Begin
return 0;
End;
Function wdTextureSolid();
Begin
return 1000;
End;
Function wdTextureVertical();
Begin
return -8;
End;
// WdRowHeightRule
Function wdRowHeightAtLeast();
Begin
return 1;
End;
Function wdRowHeightAuto();
Begin
return 0;
End;
Function wdRowHeightExactly();
Begin
return 2;
End;
// WdBorderType
Function wdBorderBottom();
Begin
return -3;
End;
Function wdBorderDiagonalDown();
Begin
return -7;
End;
Function wdBorderDiagonalUp();
Begin
return -8;
End;
Function wdBorderHorizontal();
Begin
return -5;
End;
Function wdBorderLeft();
Begin
return -2;
End;
Function wdBorderRight();
Begin
return -4;
End;
Function wdBorderTop();
Begin
return -1;
End;
Function wdBorderVertical();
Begin
return -6;
End;
// WdLineStyle
Function wdLineStyleDashDot();
Begin
return 5;
End;
Function wdLineStyleDashDotDot();
Begin
return 6;
End;
Function wdLineStyleDashDotStroked();
Begin
return 20;
End;
Function wdLineStyleDashLargeGap();
Begin
return 4;
End;
Function wdLineStyleDashSmallGap();
Begin
return 3;
End;
Function wdLineStyleDot();
Begin
return 2;
End;
Function wdLineStyleDouble();
Begin
return 7;
End;
Function wdLineStyleDoubleWavy();
Begin
return 19;
End;
Function wdLineStyleEmboss3D();
Begin
return 21;
End;
Function wdLineStyleEngrave3D();
Begin
return 22;
End;
Function wdLineStyleInset();
Begin
return 24;
End;
Function wdLineStyleNone();
Begin
return 0;
End;
Function wdLineStyleOutset();
Begin
return 23;
End;
Function wdLineStyleSingle();
Begin
return 1;
End;
Function wdLineStyleSingleWavy();
Begin
return 18;
End;
Function wdLineStyleThickThinLargeGap();
Begin
return 16;
End;
Function wdLineStyleThickThinMedGap();
Begin
return 13;
End;
Function wdLineStyleThickThinSmallGap();
Begin
return 10;
End;
Function wdLineStyleThinThickLargeGap();
Begin
return 15;
End;
Function wdLineStyleThinThickMedGap();
Begin
return 12;
End;
Function wdLineStyleThinThickSmallGap();
Begin
return 9;
End;
Function wdLineStyleThinThickThinLargeGap();
Begin
return 17;
End;
Function wdLineStyleThinThickThinMedGap();
Begin
return 14;
End;
Function wdLineStyleThinThickThinSmallGap();
Begin
return 11;
End;
Function wdLineStyleTriple();
Begin
return 8;
End;
// WdRulerStyle
Function wdAdjustFirstColumn();
Begin
return 2;
End;
Function wdAdjustNone();
Begin
return 11111111110;
End;
Function wdAdjustProportional();
Begin
return 1;
End;
Function wdAdjustSameWidth();
Begin
return 3;
End;
// WdPreferredWidthType
Function wdPreferredWidthAuto();
Begin
return 1;
End;
Function wdPreferredWidthPercent();
Begin
return 2;
End;
Function wdPreferredWidthPoints();
Begin
return 3;
End;
Function TEST123();
Begin
println("123");
End;
End.

View File

@ -1,100 +0,0 @@
Type TSDocxRow = Class(TSVbaBase)
public
Function Init(table, row);
private
table_;
row_;
public
Function ConvertToText(Separator, NestedTables);
Function Delete();
Function Select();
Function SetHeight(RowHeight, HeightRule);
Function SetLeftIndent(LeftIndent, RulerStyle);
property Alignment read ReadAlignment write WriteAlignment;
property AllowBreakAcrossPages read ReadAllowBreakAcrossPages write WriteAllowBreakAcrossPages;
property Borders read ReadBorders;
property Cells read ReadCells;
property HeadingFormat read ReadHeadingFormat write WriteHeadingFormat;
property Height read ReadHeight write WriteHeight;
property HeightRule read ReadHeightRule write WriteHeightRule;
property ID read ReadID write WriteID;
property Index read ReadIndex;
property IsFirst read ReadIsFirst;
property IsLast read ReadIsLast;
property LeftIndent read ReadLeftIndent write WriteLeftIndent;
property NestingLevel read ReadNestingLevel;
property Next read ReadNext;
property Previous read ReadPrevious;
property Range read ReadRange;
property Shading read ReadShading;
property SpaceBetweenColumns read ReadSpaceBetweenColumns write WriteSpaceBetweenColumns;
Function WriteSpaceBetweenColumns();
Function ReadSpaceBetweenColumns();
Function ReadShading();
Function ReadRange();
Function ReadPrevious();
Function ReadNext();
Function ReadNestingLevel();
Function WriteLeftIndent();
Function ReadLeftIndent();
Function ReadIsLast();
Function ReadIsFirst();
Function ReadIndex();
Function WriteID();
Function ReadID();
Function WriteHeightRule();
Function ReadHeightRule();
Function WriteHeight();
Function ReadHeight();
Function WriteHeadingFormat();
Function ReadHeadingFormat();
Function ReadCells();
Function ReadBorders();
Function WriteAllowBreakAcrossPages();
Function ReadAllowBreakAcrossPages();
Function WriteAlignment();
Function ReadAlignment();
End;
// ============== 实现 ================= //
Function TSDocxRow.Init(table, row);
Begin
table_ := table;
row_ := row;
End;
// function
Function TSDocxRow.Delete();
Begin
table_.DeleteCell(row_, nil);
End;
Function TSDocxRow.Select();
Begin
End;
Function TSDocxRow.SetHeight(RowHeight, HeightRule);
Begin
case HeightRule of
TSDocxEnumerations.wdRowHeightAtLeast:
begin
end
TSDocxEnumerations.wdRowHeightAuto:
begin
end
TSDocxEnumerations.wdRowHeightExactly:
begin
end
end;
End;
Function TSDocxRow.SetLeftIndent(LeftIndent, RulerStyle);
Begin
End;

View File

@ -1,155 +0,0 @@
Type TSDocxRows = Class(TSVbaBase)
Uses TSDocxEnumerations;
public
Function Init(table);
Function Operator[](index);
private
table_;
public
Function Add(BeforeRow);
Function ConvertToText(Separator, NestedTables);
Function Delete();
Function DistributeHeight();
Function Item(Index);
Function Select();
Function SetHeight(RowHeight, HeightRule);
Function SetLeftIndent(LeftIndent, RulerStyle);
property Alignment read ReadAlignment write WriteAlignment;
property AllowBreakAcrossPages read ReadAllowBreakAcrossPages write WriteAllowBreakAcrossPages;
property AllowOverlap read ReadAllowOverlap write WriteAllowOverlap;
property Borders read ReadBorders;
property Count read ReadCount;
property DistanceBottom read ReadDistanceBottom write WriteDistanceBottom;
property DistanceLeft read ReadDistanceLeft write WriteDistanceLeft;
property DistanceRight read ReadDistanceRight write WriteDistanceRight;
property DistanceTop read ReadDistanceTop write WriteDistanceTop;
property First read ReadFirst;
property HeadingFormat read ReadHeadingFormat write WriteHeadingFormat;
property Height read ReadHeight write WriteHeight;
property HeightRule read ReadHeightRule write WriteHeightRule;
property HorizontalPosition read ReadHorizontalPosition write WriteHorizontalPosition;
property Last read ReadLast;
property LeftIndent read ReadLeftIndent write WriteLeftIndent;
property NestingLevel read ReadNestingLevel;
property RelativeHorizontalPosition read ReadRelativeHorizontalPosition write WriteRelativeHorizontalPosition;
property RelativeVerticalPosition read ReadRelativeVerticalPosition write WriteRelativeVerticalPosition;
property Shading read ReadShading;
property SpaceBetweenColumns read ReadSpaceBetweenColumns;
property TableDirection read ReadTableDirection write WriteTableDirection;
property VerticalPosition read ReadVerticalPosition write WriteVerticalPosition;
property WrapAroundText read ReadWrapAroundText write WriteWrapAroundText;
Function WriteWrapAroundText(value);
Function ReadWrapAroundText();
Function WriteVerticalPosition();
Function ReadVerticalPosition();
Function WriteTableDirection();
Function ReadTableDirection();
Function ReadSpaceBetweenColumns();
Function ReadShading();
Function WriteRelativeVerticalPosition();
Function ReadRelativeVerticalPosition();
Function WriteRelativeHorizontalPosition();
Function ReadRelativeHorizontalPosition();
Function ReadNestingLevel();
Function WriteLeftIndent();
Function ReadLeftIndent();
Function ReadLast();
Function WriteHorizontalPosition();
Function ReadHorizontalPosition();
Function WriteHeightRule();
Function ReadHeightRule();
Function WriteHeight();
Function ReadHeight();
Function WriteHeadingFormat();
Function ReadHeadingFormat();
Function ReadFirst();
Function WriteDistanceTop();
Function ReadDistanceTop();
Function WriteDistanceRight();
Function ReadDistanceRight();
Function WriteDistanceLeft();
Function ReadDistanceLeft();
Function WriteDistanceBottom();
Function ReadDistanceBottom();
Function ReadCount();
Function ReadBorders();
Function WriteAllowOverlap();
Function ReadAllowOverlap();
Function WriteAllowBreakAcrossPages();
Function ReadAllowBreakAcrossPages();
Function WriteAlignment();
Function ReadAlignment();
End;
// ============== 实现 ================= //
Function TSDocxRows.Init(table);
Begin
table_ := table;
End;
Function Operator TSDocxRows.[](index);
Begin
row_obj := new TSDocxRow(self.Application, self.Creator, self);
row_obj.Init(table_, index);
return row_obj;
End;
// function
Function TSDocxRows.Select();
Begin
End;
Function TSDocxRows.Item(Index);
Begin
return self[Index];
End;
Function TSDocxRows.SetHeight(RowHeight, HeightRule);
Begin
case HeightRule of
TSDocxEnumerations.wdRowHeightAtLeast:
begin
end
TSDocxEnumerations.wdRowHeightAuto:
begin
end
TSDocxEnumerations.wdRowHeightExactly:
begin
end
end;
End;
Function TSDocxRows.SetLeftIndent(LeftIndent, RulerStyle);
Begin
End;
// property
Function TSDocxRows.ReadWrapAroundText();
Begin
node := class(TSXml).GetNode(table_.Root(), "w:tblPr/w:tblpPr");
return ifObj(node) ? -1 : 0;
End;
Function TSDocxRows.WriteWrapAroundText(value);
Begin
if value then
begin
table_.tblPr.tblpPr.LeftFromText := 180;
table_.tblPr.tblpPr.RightFromText := 180;
table_.tblPr.tblpPr.VertAnchor := "text";
table_.tblPr.tblpPr.tblpY := 1;
table_.tblPr.Overlap := "never";
table_.Apply();
end
else begin
class(TSXml).RemoveNode(table_.Root(), "w:tblPr/w:tblpPr");
class(TSXml).RemoveNode(table_.Root(), "w:tblPr/w:tblOverlap");
end
End;

View File

@ -1,48 +0,0 @@
Type TSDocxShading = Class(TSVbaBase)
public
Function Init(pr);
private
pr_; // xxPr对象比如Cell: tr.tcPr或Paragraph: p.pPr
public
property BackgroundPatternColor read ReadBackgroundPatternColor write WriteBackgroundPatternColor;
property BackgroundPatternColorIndex read ReadBackgroundPatternColorIndex write WriteBackgroundPatternColorIndex;
property ForegroundPatternColor read ReadForegroundPatternColor write WriteForegroundPatternColor;
property ForegroundPatternColorIndex read ReadForegroundPatternColorIndex write WriteForegroundPatternColorIndex;
property Texture read ReadTexture write WriteTexture;
Function WriteTexture(texture);
Function ReadTexture();
Function WriteForegroundPatternColorIndex();
Function ReadForegroundPatternColorIndex();
Function WriteForegroundPatternColor();
Function ReadForegroundPatternColor();
Function WriteBackgroundPatternColorIndex();
Function ReadBackgroundPatternColorIndex();
Function WriteBackgroundPatternColor();
Function ReadBackgroundPatternColor();
End;
// ============== 实现 ================= //
Function TSDocxShading.Init(application, pr);
Begin
pr_ := pr;
End;
// property
Function TSDocxShading.WriteTexture(texture);
Begin
case texture of
TSDocxEnumerations.wdTextureHorizontal():
begin
pr_.Shading.Val := "thinHorzStripe";
pr_.Update();
end
end;
End;
Function TSDocxShading.ReadTexture();
Begin
End;

View File

@ -1,195 +0,0 @@
Type TSDocxTable = Class(TSVbaBase)
Uses TSDocxEnumerations;
public
Function Init(docx, table);
private
docx_;
table_; // TOfficeObj('TTable') 对象
public
Function ApplyStyleDirectFormatting(StyleName);
Function AutoFitBehavior(Behavior);
Function AutoFormat(Format, ApplyBorders, ApplyShading, ApplyFont, ApplyColor, ApplyHeadingRows, ApplyLastRow, ApplyFirstColumn, ApplyLastColumn, AutoFit);
Function Cell(Row, Column);
Function ConvertToText(Separator, NestedTables);
Function Delete();
Function Select();
Function Sort(ExcludeHeader, FieldNumber, SortFieldType, SortOrder, FieldNumber2, SortFieldType2, SortOrder2, FieldNumber3, SortFieldType3, SortOrder3, CaseSensitive, BidiSort, IgnoreThe, IgnoreKashida, IgnoreDiacritics, IgnoreHe, LanguageID);
Function SortAscending();
Function SortDescending();
Function Split(BeforeRow);
Function UpdateAutoFormat();
property AllowAutoFit read ReadAllowAutoFit write WriteAllowAutoFit;
property ApplyStyleColumnBands read ReadApplyStyleColumnBands write WriteApplyStyleColumnBands;
property ApplyStyleFirstColumn read ReadApplyStyleFirstColumn write WriteApplyStyleFirstColumn;
property ApplyStyleHeadingRows read ReadApplyStyleHeadingRows write WriteApplyStyleHeadingRows;
property ApplyStyleLastColumn read ReadApplyStyleLastColumn write WriteApplyStyleLastColumn;
property ApplyStyleLastRow read ReadApplyStyleLastRow write WriteApplyStyleLastRow;
property ApplyStyleRowBands read ReadApplyStyleRowBands write WriteApplyStyleRowBands;
property AutoFormatType read ReadAutoFormatType;
property Borders read ReadBorders;
property BottomPadding read ReadBottomPadding write WriteBottomPadding;
property Columns read ReadColumns;
property Descr read ReadDescr write WriteDescr;
property ID read ReadID write WriteID;
property LeftPadding read ReadLeftPadding write WriteLeftPadding;
property NestingLevel read ReadNestingLevel;
property PreferredWidth read ReadPreferredWidth write WritePreferredWidth;
property PreferredWidthType read ReadPreferredWidthType write WritePreferredWidthType;
property Range read ReadRange;
property RightPadding read ReadRightPadding write WriteRightPadding;
property Rows read ReadRows;
property Shading read ReadShading;
property Spacing read ReadSpacing write WriteSpacing;
property Style read ReadStyle write WriteStyle;
property TableDirection read ReadTableDirection write WriteTableDirection;
property Tables read ReadTables;
property Title read ReadTitle write WriteTitle;
property TopPadding read ReadTopPadding write WriteTopPadding;
property Uniform read ReadUniform;
Function ReadUniform();
Function WriteTopPadding();
Function ReadTopPadding();
Function WriteTitle();
Function ReadTitle();
Function ReadTables();
Function WriteTableDirection();
Function ReadTableDirection();
Function WriteStyle();
Function ReadStyle();
Function WriteSpacing();
Function ReadSpacing();
Function ReadShading();
Function ReadRows(index);
Function WriteRightPadding();
Function ReadRightPadding();
Function ReadRange();
Function WritePreferredWidthType(value);
Function ReadPreferredWidthType();
Function WritePreferredWidth(value);
Function ReadPreferredWidth();
Function ReadNestingLevel();
Function WriteLeftPadding();
Function ReadLeftPadding();
Function WriteID();
Function ReadID();
Function WriteDescr();
Function ReadDescr();
Function ReadColumns(index);
Function WriteBottomPadding();
Function ReadBottomPadding();
Function ReadBorders(index);
Function ReadAutoFormatType();
Function WriteApplyStyleRowBands();
Function ReadApplyStyleRowBands();
Function WriteApplyStyleLastRow();
Function ReadApplyStyleLastRow();
Function WriteApplyStyleLastColumn();
Function ReadApplyStyleLastColumn();
Function WriteApplyStyleHeadingRows();
Function ReadApplyStyleHeadingRows();
Function WriteApplyStyleFirstColumn();
Function ReadApplyStyleFirstColumn();
Function WriteApplyStyleColumnBands();
Function ReadApplyStyleColumnBands();
Function WriteAllowAutoFit();
Function ReadAllowAutoFit();
End;
// ============== 实现 ================= //
Function TSDocxTable.Init(docx, table);
Begin
docx_ := docx;
table_ := table;
End;
// function
Function TSDocxTable.ApplyStyleDirectFormatting(StyleName);
Begin
table_.TblPr.StyleId := docx_.StyleObject().GetStyle(StyleName).Value('StyleId');
table_.Apply();
End;
Function TSDocxTable.AutoFitBehavior(Behavior);
Begin
// TODO : 这里应该使用递归去处理每个单元格
// TODO : 等cell方法完善
case Behavior of
TSDocxEnumerations.wdAutoFitContent():
begin
table_.TblPr.WidthType := "auto";
table_.TblPr.Width := 0;
table_.TblApply();
col := table_.Cols();
row := table_.Rows();
for i:=1 to row do
begin
for j:=1 to col do
begin
cell := table_.Cell(i, j);
cell.TcPr.Type := "auto";
cell.TcPr.Width := 0;
cell.Apply();
end
end
end
TSDocxEnumerations.wdAutoFitFixed():
begin
end
TSDocxEnumerations.wdAutoFitWindow():
begin
table_.TblPr.WidthType := "pct";
table_.TblPr.Width := 5000;
table_.Apply();
end
End;
End;
Function TSDocxTable.Cell(Row, Column);
Begin
cell_obj := new TSDocxCell(self.Application, self.Creator, self);
cell_obj.Init(table_, Row, Column);
return cell_obj;
End;
// property
Function TSDocxTable.ReadBorders(index);
Begin
borders_obj := new TSDocxBordersTable(self.Application, self.Creator, self);
borders_obj.Init(table_);
return ifnil(index) ? borders_obj : borders_obj[index];
End;
Function TSDocxTable.ReadColumns(index);
Begin
columns_obj := new TSDocxColumns(self.Application, self.Creator, self);
columns_obj.Init(table);
return ifnil(index) ? columns_obj : columns_obj[index];
End;
Function TSDocxTable.ReadRows(index);
Begin
rows_obj := new TSDocxRows(self.Application, self.Creator, self);
rows_obj.Init(table_);
return ifnil(index) ? rows_obj : rows_obj[index];
End;
Function TSDocxTable.WritePreferredWidthType(value);
Begin
End;
Function TSDocxTable.ReadPreferredWidthType();
Begin
End;
Function TSDocxTable.WritePreferredWidth(value);
Begin
End;
Function TSDocxTable.ReadPreferredWidth();
Begin
End;

View File

@ -1,45 +0,0 @@
Type TSDocxTables = Class(TSVbaBase)
public
Function Init(docx);
Function Operator[](index);
private
docx_;
public
Function Add(Range, NumRows, NumColumns, DefaultTableBehavior, AutoFitBehavior);
Function Item(Index);
property Count read ReadCount;
property NestingLevel read ReadNestingLevel;
Function ReadNestingLevel();
Function ReadCount();
End;
// ============== 实现 ================= //
Function TSDocxTables.Init(docx);
Begin
docx_ := docx;
End;
Function Operator TSDocxTables.[](index);
Begin
table := docx_.GetTable(index - 1);
table_obj := new TSDocxTable(self.Application, self.Creator, self);
table_obj.Init(docx_, table);
return table_obj;
End;
// function
Function TSDocxTables.Item(Index);
Begin
return self[Index];
End;
// property
Function TSDocxTables.ReadCount();
Begin
return docx_.TablesCount();
End;

View File

@ -1,101 +0,0 @@
TestDocuments();
Function TestDocuments();
Begin
openpath := "D:/temp/vbatable.docx";
savepath := "D:/temp/vba.docx";
application := new TSDocxApplication();
application.Documents.Add;
Documents := application.Documents;
Documents.Open(FileName : openpath);
Documents.Save();
println("Documents.Count = {}", Documents.Count);
application.Documents("vbatable.docx").Activate;
println("ActiveDocument.Name = {}", application.ActiveDocument.Name);
println("ActiveDocument.Tables.Count = {}", application.ActiveDocument.Tables.Count);
TestTableCell(application);
Documents[2].SaveAs2(FileName : savepath);
println("savepath = {}", savepath);
return;
End;
Function TestTables(application);
Begin
ActiveDocument := application.ActiveDocument;
// ActiveDocument.Tables(1).ApplyStyleDirectFormatting('样式1');
End;
Function TestTableCell(application);
Begin
ActiveDocument := application.ActiveDocument;
// tables := application.ActiveDocument.Tables;
// tables[1].AutoFitBehavior(class(TSDocxEnumerations).wdAutoFitContent());
// tables[1].Cell(1, 1).Delete(class(TSDocxEnumerations).wdDeleteCellsEntireColumn());
// tables[1].Cell(1, 1).Delete(class(TSDocxEnumerations).wdDeleteCellsEntireRow());
// tables[1].Cell(3, 3).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftLeft());
// tables[1].Cell(1, 2).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftUp());
// tables[1].Cell(5, 3).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftUp());
// tables2 := ActiveDocument.Tables(2);
// tables2.Cell(1, 1).Delete(class(TSDocxEnumerations).wdDeleteCellsEntireColumn());
// tables2.Cell(1, 1).Delete(class(TSDocxEnumerations).wdDeleteCellsEntireRow());
// tables2.Cell(3, 3).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftLeft());
// tables2.Cell(1, 2).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftUp());
// tables2.Cell(5, 3).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftUp());
// ActiveDocument.Tables(1).Cell(Row: 2, Column: 2).Merge(MergeTo: tables[1].Cell(2, 4));
// ActiveDocument.Tables(2).Cell(2, 2).Merge(ActiveDocument.Tables(2).Cell(3, 4));
// ActiveDocument.Tables(2).Cell(2, 2).Width := 100;
// println("ActiveDocument.Tables(2).Cell(2, 2).Width = {}", ActiveDocument.Tables(2).Cell(2, 2).Width);
// ActiveDocument.Tables(2).Cell(2, 3).WordWrap := true;
// println("ActiveDocument.Tables(2).Cell(2, 3).WordWrap = {}", ActiveDocument.Tables(2).Cell(2, 3).WordWrap);
// ActiveDocument.Tables(2).Cell(1, 1).VerticalAlignment := class(TSDocxEnumerations).wdCellAlignVerticalBottom();
// ActiveDocument.Tables(2).Cell(1, 2).VerticalAlignment := class(TSDocxEnumerations).wdCellAlignVerticalCenter();
// ActiveDocument.Tables(2).Cell(2, 2).VerticalAlignment := class(TSDocxEnumerations).wdCellAlignVerticalTop();
// println("ActiveDocument.Tables(2).Cell(1, 1).VerticalAlignment = {}", ActiveDocument.Tables(2).Cell(1, 1).VerticalAlignment);
// println("ActiveDocument.Tables(2).Cell(1, 2).VerticalAlignment = {}", ActiveDocument.Tables(2).Cell(1, 2).VerticalAlignment);
// println("ActiveDocument.Tables(2).Cell(1, 3).VerticalAlignment = {}", ActiveDocument.Tables(2).Cell(1, 3).VerticalAlignment);
// println("ActiveDocument.Tables(2).Cell(2, 2).VerticalAlignment = {}", ActiveDocument.Tables(2).Cell(2, 2).VerticalAlignment);
// ActiveDocument.Tables(2).Cell(1, 1).TopPadding := 30;
// ActiveDocument.Tables(2).Cell(1, 1).LeftPadding := 25;
// ActiveDocument.Tables(2).Cell(1, 1).BottomPadding := 20;
// ActiveDocument.Tables(2).Cell(1, 1).RightPadding := 15;
// println("ActiveDocument.Tables(2).Cell(1, 1).TopPadding = {}", ActiveDocument.Tables(2).Cell(1, 1).TopPadding);
// println("ActiveDocument.Tables(2).Cell(1, 1).LeftPadding = {}", ActiveDocument.Tables(2).Cell(1, 1).LeftPadding);
// println("ActiveDocument.Tables(2).Cell(1, 1).BottomPadding = {}", ActiveDocument.Tables(2).Cell(1, 1).BottomPadding);
// println("ActiveDocument.Tables(2).Cell(1, 1).RightPadding = {}", ActiveDocument.Tables(2).Cell(1, 1).RightPadding);
// ActiveDocument.Tables(2).Cell(3, 3).Tables(1).AutoFitBehavior(class(TSDocxEnumerations).wdAutoFitContent());
// ActiveDocument.Tables(2).Cell(3, 3).Tables(1).Cell(1, 1).Delete(class(TSDocxEnumerations).wdDeleteCellsEntireColumn());
// ActiveDocument.Tables(1).Cell(1, 1).Shading.Texture := class(TSDocxEnumerations).wdTextureHorizontal();
ActiveDocument.Tables(3).Cell(2,1).PreferredWidthType := class(TSDocxEnumerations).wdPreferredWidthAuto;
ActiveDocument.Tables(3).Cell(2,2).PreferredWidth := 1000;
println("ActiveDocument.Tables(3).Cell(2,2).PreferredWidth = {}", ActiveDocument.Tables(3).Cell(2,2).PreferredWidth);
End;
Function TestTableRows();
Begin
// ActiveDocument.Tables(1).Rows.WrapAroundText := true;
// ActiveDocument.Tables(2).Rows.WrapAroundText := false;
// println("Tables(1).Rows.WrapAroundText = {}", ActiveDocument.Tables(1).Rows.WrapAroundText);
// println("Tables(2).Rows.WrapAroundText = {}", ActiveDocument.Tables(2).Rows.WrapAroundText);
// ActiveDocument.Tables(1).Rows.WrapAroundText := false;
// println("Tables(1).Rows.WrapAroundText = {}", ActiveDocument.Tables(1).Rows.WrapAroundText);
End;
Function TestTableBorders();
Begin
// ActiveDocument.Tables(1).Borders(class(TSDocxEnumerations).wdBorderDiagonalUp).LineStyle := class(TSDocxEnumerations).wdLineStyleSingle;
// ActiveDocument.Tables(1).Cell(1, 1).Borders(class(TSDocxEnumerations).wdBorderDiagonalDown).LineStyle := class(TSDocxEnumerations).wdLineStyleSingle;
// ActiveDocument.Tables(1).Columns(1).SetWidth(100, class(TSDocxEnumerations).wdAdjustSameWidth());
// ActiveDocument.Tables(3).Columns(2).PreferredWidthType := class(TSDocxEnumerations).wdPreferredWidthPercent;
// ActiveDocument.Tables(3).Columns(2).PreferredWidth := 50;
// println("ActiveDocument.Tables(3).Columns(2).PreferredWidth = {}", ActiveDocument.Tables(3).Columns(2).PreferredWidth);
End;

View File

@ -1,26 +1,26 @@
Type Collection = Class
Type Collection = class
public
Function Create();
Function SetIgnoreCase(value);
Function SetActivate(value);
Function GetActivate();
Function CalNewName(prefix);
Function CompareFunction(index, data);
Function SetIgnoreCase(value);
Function SetActivation(value);
Function GetActivation();
Function CalNewName(prefix);
Function AddCollection(obj, name);
Function RemoveCollection(index);
Function Operator[](index);
Function GetCount();
public
class Function GetInstance(value);
private
ignorecase_; // 忽略大小写
container_; // 容器对象
fp_; // 函数指针 -- 用来比较
activation_; // 激活的对象
public
class Function GetInstance(value);
activate_; // 激活的对象
private
static collection_;
@ -40,14 +40,14 @@ Begin
ignorecase_ := value;
End;
Function Collection.SetActivation(value);
Function Collection.SetActivate(value);
Begin
activation_ := self[value];
activate_ := self[value];
End;
Function Collection.GetActivation();
Function Collection.GetActivate();
Begin
return activation_;
return activate_;
End;
Function Collection.CompareFunction(index, data);

View File

@ -1,43 +0,0 @@
Type TSVbaBase = class
public
Function Create(app, cre, par);
private
application_;
creator_;
parent_;
public
property Application read ReadApplication;
property Parent read ReadParent;
property Creator read ReadCreator;
Function ReadApplication();
Function ReadParent();
Function ReadCreator();
End;
// ============== 实现 ================= //
Function TSVbaBase.Create(app, cre, par);
Begin
application_ := app;
creator_ := cre;
parent_ := par;
End;
// property
Function TSVbaBase.ReadApplication();
Begin
return application_;
End;
Function TSVbaBase.ReadParent();
Begin
return parent_;
End;
Function TSVbaBase.ReadCreator();
Begin
return creator_;
End;

View File

@ -1,74 +0,0 @@
Type Collection = class
public
Function Create();
Function AddCollection(obj, name);
Function RemoveCollection(index);
Function SetIgnoreCase(value);
Function GetCount();
Function CalNewName(prefix);
Function Operator[](index);
private
name_collection_;
index_collection_;
name_index_;
ignorecase_; // 是否启用大小写无关
End;
// ============== 实现 ================= //
Function Collection.Create();
Begin
name_collection_ := array();
index_collection_ := array();
name_index_ := array();
ignorecase_ := false;
End;
Function Collection.AddCollection(obj, name);
Begin
name_collection_[ignorecase_ ? lowercase(name) : name] := obj;
index := length(index_collection_) + 1;
index_collection_[index] := obj;
name_index_[index] := name;
name_index_[name] := index;
End;
Function Collection.RemoveCollection(index);
Begin
arr1 := array(index : nil);
arr2 := array(name_index_[index] : nil);
reindex(index_collection_, arr1);
reindex(name_collection_, arr2);
reindex(name_index_, arr1);
reindex(name_index_, arr2);
if ifnumber(index) then
for k, v in index_collection_ do
if k > index then reindex(index_collection_, array(k : k - 1));
End;
Function Collection.SetIgnoreCase(value);
Begin
ignorecase_ := value;
End;
Function Collection.GetCount();
Begin
return length(name_collection_);
End;
Function Collection.CalNewName(prefix);
Begin
len := length(name_collection_) + 1;
name := prefix $ len;
while name in name_collection_ do
name := prefix $ ++len;
return name;
End;
Function Operator Collection.[](index);
Begin
if ifnumber(index) then return index_collection_[index];
return name_collection_[ignorecase_ ? lowercase(index) : index];
End;

View File

@ -1,11 +1,11 @@
Type XlsxApplication = class
Type Application = class
public
Function Create();
Function Init();
public
property Workbooks read ReadWorkbooks; // Completed
Property Workbooks read ReadWorkbooks; // Completed
Function ReadWorkbooks(index);
private
@ -14,17 +14,17 @@ private
End;
// ============== 实现 ================= //
Function XlsxApplication.Create();
Function Application.Create();
Begin
Init();
End;
Function XlsxApplication.Init();
Function Application.Init();
Begin
workbooks_ := new Workbooks();
End;
Function XlsxApplication.ReadWorkbooks(index)
Function Application.ReadWorkbooks(index)
Begin
if ifnil(index) then return workbooks_;
return workbooks_[index];

View File

@ -398,12 +398,12 @@ End;
Function Workbook.ReadWorkSheets(index);
Begin
if ifnil(index) then return worksheets_;
return worksheets_[index];
return worksheets_.worksheet(index);
End;
Function Workbook.ReadActiveSheet();
Begin
return worksheets_.GetCollection().GetActivation();
return worksheets_.GetCollection().GetActivate();
End;
Function Workbook.ReadFullName();

View File

@ -4,9 +4,6 @@ public
Function Create();
Function Operator[](index);
private
Function AddWorkbook(xlsx, name); // Completed
private
collection_;
@ -33,6 +30,9 @@ public
Function ReadCreator();
Function ReadParent();
private
Function AddWorkbook(xlsx, name); // Completed
End;
// ============== 实现 ================= //
@ -41,12 +41,6 @@ Begin
collection_ := class(Collection).GetInstance('workbook');
End;
Function Workbooks.AddWorkbook(xlsx, fullname);
Begin
name := ExtractFileName(fullname);
collection_.AddCollection(new Workbook(xlsx, name, fullname), name);
End;
Function Operator Workbooks.[](index);
Begin
return collection_[index];
@ -76,6 +70,11 @@ End;
Function Workbooks.ReadItem(index);
Begin
return self[index];
return collection_[index];
End;
Function Workbooks.AddWorkbook(xlsx, fullname);
Begin
name := ExtractFileName(fullname);
collection_.AddCollection(new Workbook(xlsx, name, fullname), name);
End;

View File

@ -71,7 +71,7 @@ End;
Function Worksheet.Activate();
Begin
collection_.SetActivation(sheet_name_);
collection_.SetActivate(sheet_name_);
return xlsx_.SetDefaultSheet(sheet_name_);
End;

View File

@ -42,7 +42,7 @@ Begin
sheets := xlsx_.GetSheets();
for k, v in sheets do
collection_.AddCollection(new Worksheet(xlsx_, v, collection_), v);
collection_.SetActivation(xlsx_.GetDefaultSheet());
collection_.SetActivate(xlsx_.GetDefaultSheet());
End;
Function Operator Worksheets.[](index);