mirror of
https://github.com/HeidiSQL/HeidiSQL.git
synced 2026-03-13 09:24:25 +08:00
Implement LaTeX output for "Copy as" actions. Code parts from brampton. Fixes issue #2020.
This commit is contained in:
BIN
res/icons/latex.png
Normal file
BIN
res/icons/latex.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 694 B |
@@ -87,6 +87,7 @@ type
|
||||
procedure GridToCsv(Grid: TVirtualStringTree; Separator, Encloser, Terminator: String; S: TStream);
|
||||
procedure GridToXml(Grid: TVirtualStringTree; S: TStream);
|
||||
procedure GridToSql(Grid: TVirtualStringTree; S: TStream);
|
||||
procedure GridToLaTeX(Grid: TVirtualStringTree; S: TStream);
|
||||
function BestTableName(Data: TMySQLQuery): String;
|
||||
function esc2ascii(str: String): String;
|
||||
function urlencode(url: String): String;
|
||||
@@ -937,6 +938,31 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
{***
|
||||
Converts grid contents to LaTeX table.
|
||||
@param Grid Object which holds data to export
|
||||
}
|
||||
procedure GridToLaTeX(Grid: TVirtualStringTree; S: TStream);
|
||||
var
|
||||
i: Integer;
|
||||
tmp: String;
|
||||
begin
|
||||
tmp := '\begin{tabular}{';
|
||||
// Columns
|
||||
for i:=0 to Grid.Header.Columns.Count-1 do begin
|
||||
// Skip hidden key columns
|
||||
if not (coVisible in Grid.Header.Columns[i].Options) then
|
||||
Continue;
|
||||
// Add header item.
|
||||
tmp := tmp + ' c ';
|
||||
end;
|
||||
tmp := tmp + '}\r\n';
|
||||
StreamWrite(S, tmp);
|
||||
GridToCsv(Grid, ' & ', '', '\\ \r\n', s);
|
||||
StreamWrite(S, '\end{tabular}\r\n');
|
||||
end;
|
||||
|
||||
|
||||
function BestTableName(Data: TMySQLQuery): String;
|
||||
begin
|
||||
// Get table name from result if possible. Used by GridToXYZ() functions.
|
||||
|
||||
114
source/main.dfm
114
source/main.dfm
@@ -1850,6 +1850,9 @@ object MainForm: TMainForm
|
||||
object CopyAsSQLdata: TMenuItem
|
||||
Action = actCopyAsSQL
|
||||
end
|
||||
object CopyselectedrowsasLaTextable1: TMenuItem
|
||||
Action = actCopyAsLaTex
|
||||
end
|
||||
object Exportdata1: TMenuItem
|
||||
Action = actExportData
|
||||
end
|
||||
@@ -2016,6 +2019,13 @@ object MainForm: TMainForm
|
||||
ImageIndex = 48
|
||||
OnExecute = actCopyAsXMLExecute
|
||||
end
|
||||
object actCopyAsLaTex: TAction
|
||||
Category = 'Export/Import'
|
||||
Caption = 'Copy selected rows as LaTex table'
|
||||
Enabled = False
|
||||
ImageIndex = 153
|
||||
OnExecute = actCopyAsLaTexExecute
|
||||
end
|
||||
object actExportData: TAction
|
||||
Category = 'Export/Import'
|
||||
Caption = 'Export grid data as CSV, HTML, XML or SQL ...'
|
||||
@@ -2641,133 +2651,133 @@ object MainForm: TMainForm
|
||||
Left = 104
|
||||
Top = 160
|
||||
Bitmap = {
|
||||
494C010199009C00040010001000FFFFFFFF2110FFFFFFFFFFFFFFFF424D3600
|
||||
494C01019A009C00040010001000FFFFFFFF2110FFFFFFFFFFFFFFFF424D3600
|
||||
0000000000003600000028000000400000007002000001002000000000000070
|
||||
0200000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000024000000520000
|
||||
0052000000520000005200000052000000520000005200000052000000290000
|
||||
0001000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000052FDFDFCFFFBFB
|
||||
FBFFFCFCFCFFFDFDFDFFFDFDFDFFFEFEFEFFFDFDFDFFF7F7F7FE888888CA0000
|
||||
002E000000010000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000002B73A8FF296FA4FF286CA0FF2669
|
||||
9CFF246598FF226294FF205F91FF1E5C8DFF1D5A8AFF1C5888FF1B5686FF1B56
|
||||
86FF1B5686FF1B5686FF1B5686FF1B5686FF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
86FF1B5686FF1B5686FF1B5686FF1B5686FF0000000000000052FAFAF9FFF7F7
|
||||
F7FFFAFAFAFFFBFBFBFFFCFCFCFFFEFEFEFFFCFCFCFFF1F1F1FFD4D4D4FF9A9A
|
||||
9AE00000002F0000000100000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000002D76ACFF5198C7FF4D93C3FF4B90
|
||||
C2FF4B8EC0FF4B8EC0FFC0E9EAFF76CDDFFF74CDDFFFABE1E7FF4783BAFF4580
|
||||
B9FF437DB7FF437CB7FF467EB8FF1B5686FF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
B9FF437DB7FF437CB7FF467EB8FF1B5686FF0000000000000052F9F9F9FFF7F7
|
||||
F7FFFAFAFAFFF7F7F7FFEFEFEFFFF8F8F8FFF9F9F9FFEEEEEEFFC9C9C9FFF5F5
|
||||
F5FF9A9A9AE00000002E00000001000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000002F79AFFF5099C7FF3982B4FF296F
|
||||
A4FF286CA0FF26699CFF246598FF226294FF205F91FF1E5C8DFF1D5A8AFF1C58
|
||||
88FF1B5686FF2B669AFF447DB7FF1B5686FF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
88FF1B5686FF2B669AFF447DB7FF1B5686FF0000000000000052F9F9F9FFF6F6
|
||||
F6FFF9F9F9FFFBFBFBFF9D9D9DFFAEAEAEFFA5A5A5FFCACACAFFEBEBEBFFD4D4
|
||||
D4FFDBDBDBFF878787C900000029000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000317CB3FF519CC9FF2D76ACFF76E4
|
||||
A1FF74E39FFF72E39EFF70E29CFF6EE29BFF6CE29AFF6BE199FF69E198FF67E1
|
||||
96FF66E095FF1B5686FF447EB8FF1B5686FF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
96FF66E095FF1B5686FF447EB8FF1B5686FF0000000000000052F2F2F1FFF1F1
|
||||
F0FFF7F7F7FFFAFAFAFF7D7D7DFFE3E3E3FFF1F1F1FF989898FFF8F8F8FFEAEA
|
||||
EAFFEEEEEEFFF8F8F8FE00000052000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000327EB6FF52A0CBFF2F79AFFF55DD
|
||||
8AFF54DC88FF78E4A2FF76E4A1FF74E39FFF4EDA81FF4DDA7EFF4BD97CFF4AD9
|
||||
7AFF49D879FF1C5888FF4582B9FF1B5686FF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
7AFF49D879FF1C5888FF4582B9FF1B5686FF0000000000000052ECECECFFD7D7
|
||||
D7FF545454FFC5C5C5FF828282FFCACACAFFADADADFF878787FFBBBBBBFFFAFA
|
||||
FAFF565656FFD0D0D0FF00000052000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000003381B8FF55A4CDFF317CB3FF69C9
|
||||
5AFF3BBA2FFF4ED572FF46CA58FF23CD58FF53BF46FFA8BD57FFE4A73AFFFC9F
|
||||
2EFFFF9B2CFF1D5A8AFF4886BCFF1B5686FF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
2EFFFF9B2CFF1D5A8AFF4886BCFF1B5686FF0000000000000052EAEAE9FFF3F3
|
||||
F3FF717171FFF8F8F8FF808080FFAEAEAEFFA2A2A2FFE4E4E4FFB3B3B3FF9B9B
|
||||
9BFFBCBCBCFFFEFEFEFF00000052000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000003483BAFF58A8CFFF327EB6FF6ECB
|
||||
5EFF6CCB5DFF3AB926FF3CB92BFFD9BF63FFFFBA62FFFFB960FFFFB85EFFFFB7
|
||||
5DFFFFB65BFF1E5C8DFF4A8ABEFF1C5888FF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
5DFFFFB65BFF1E5C8DFF4A8ABEFF1C5888FF0000000000000052E8E8E8FFF2F2
|
||||
F1FF717170FFF6F6F6FF727272FFDDDDDDFFE0E0E0FF9F9F9FFFD0D0D0FF6161
|
||||
61FFFCFCFCFFFCFCFCFF00000052000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000003483BAFF58AAD1FF3381B8FF72CE
|
||||
62FF3DBD29FF3DBC29FFEFC169FFFFBF68FFFFBD66FFFFBC65FFE4C486FF98C8
|
||||
AEFF61D9EBFF205F91FF4B8DBFFF1D5A8AFF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
AEFF61D9EBFF205F91FF4B8DBFFF1D5A8AFF0000000000000052AFAFAFFFF0F0
|
||||
EFFF707070FFF4F4F4FF797979FFB0B0AFFFB1B1B1FFDDDDDDFF6A6A6AFFB8B8
|
||||
B8FFDDDDDDFFFCFCFCFF00000052000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000003483BAFF58ACD1FF3483BAFF94BD
|
||||
31FF93BC30FFD8C86BFFFFC36EFFFFC26CFFFFC16BFFFFC069FF9ECCB4FF5EDE
|
||||
F8FF85E5F9FF226294FF4B8FC1FF1E5C8DFF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
F8FF85E5F9FF226294FF4B8FC1FF1E5C8DFF0000000000000052B1B1B1FF8C8C
|
||||
8BFF707070FF949494FF949494FFECECECFFEFEFEEFF969696FF8D8D8DFFF6F6
|
||||
F6FF747474FFE7E7E7FF00000052000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000003483BAFF58ADD3FF3483BAFFFFC8
|
||||
74FFFFC773FFFFC772FFFFC571FFFFC470FFFFC36FFFFFC36EFF6EDEEEFF8DE7
|
||||
FAFF8BE7FAFF246598FF4C92C2FF205F91FF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
FAFF8BE7FAFF246598FF4C92C2FF205F91FF0000000000000052EAEAEAFFECEC
|
||||
EBFFEEEEEDFFEAEAE9FFF2F2F1FFF3F3F2FFF4F4F4FFF5F5F5FFF6F6F6FFF7F7
|
||||
F6FFEFEFEFFFFAFAFAFF00000052000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000003483BAFF59B0D4FF4294C3FF3483
|
||||
BAFF3483BAFF3381B8FF327EB6FF317CB3FF2F79AFFF2D76ACFF2B73A8FF296F
|
||||
A4FF286CA0FF367BADFF4E96C4FF226294FF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
A4FF286CA0FF367BADFF4E96C4FF226294FF0000000000000052EAEAE9FFE9E9
|
||||
E8FFE8E8E7FFE6E6E5FFEFEFEFFFF1F1F0FFF2F2F1FFF3F3F2FFF3F3F3FFEEEE
|
||||
EEFFE9E9E9FFF9F9F9FF00000052000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000003483BAFF5DB3D6FF5AB0D4FF59AF
|
||||
D4FF58AED3FF5AADD3FF5AADD2FF5AAAD1FF59A9D0FF57A7CFFF55A3CDFF52A0
|
||||
CBFF519EC9FF519CC9FF539CC8FF246598FF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
CBFF519EC9FF519CC9FF539CC8FF246598FF0000000000000052F0EFEFFFE4E4
|
||||
E3FFE7E6E5FFEAEAE9FFEDEDECFFEEEEEDFFEFEFEEFFF0F0EFFFF0F0EFFFEEEE
|
||||
EEFFEEEEEEFFF8F8F8FF00000052000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000003483BAFF3483BAFF3483BAFF3483
|
||||
BAFF3483BAFF3483BAFF3483BAFF3381B8FF327EB6FF317CB3FF2F79AFFF2D76
|
||||
ACFF2B73A8FF296FA4FF286CA0FF26699CFF0000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
ACFF2B73A8FF296FA4FF286CA0FF26699CFF0000000000000052F9F8F8FFF2F2
|
||||
F2FFF4F3F3FFF4F4F4FFF5F5F5FFF6F6F6FFF7F7F6FFF7F7F7FFF7F7F7FFF7F7
|
||||
F7FFF7F7F7FFFBFBFBFF00000052000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000001F000000520000
|
||||
0052000000520000005200000052000000520000005200000052000000520000
|
||||
0052000000520000005200000024000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000000000000000000
|
||||
@@ -8149,6 +8159,9 @@ object MainForm: TMainForm
|
||||
object CopygriddataasSQL2: TMenuItem
|
||||
Action = actCopyAsSQL
|
||||
end
|
||||
object CopyselectedrowsasLaTextable2: TMenuItem
|
||||
Action = actCopyAsLaTex
|
||||
end
|
||||
end
|
||||
object Exportdata2: TMenuItem
|
||||
Action = actExportData
|
||||
@@ -8257,7 +8270,8 @@ object MainForm: TMainForm
|
||||
DefaultExt = 'csv'
|
||||
Filter =
|
||||
'CSV-Files (*.csv)|*.csv|Hypertext-Files (*.html)|*.html|XML-File' +
|
||||
's (*.xml)|*.xml|SQL script (*.sql)|*.sql'
|
||||
's (*.xml)|*.xml|SQL script (*.sql)|*.sql|LaTeX table (*.latex)|*' +
|
||||
'.latex'
|
||||
Options = [ofOverwritePrompt, ofEnableSizing]
|
||||
OnTypeChange = SaveDialogExportDataTypeChange
|
||||
Left = 40
|
||||
|
||||
@@ -486,6 +486,9 @@ type
|
||||
btnPreviewClose: TToolButton;
|
||||
actDataSaveBlobToFile: TAction;
|
||||
SaveBLOBtofile1: TMenuItem;
|
||||
actCopyAsLaTex: TAction;
|
||||
CopyselectedrowsasLaTextable1: TMenuItem;
|
||||
CopyselectedrowsasLaTextable2: TMenuItem;
|
||||
procedure actCreateDBObjectExecute(Sender: TObject);
|
||||
procedure menuConnectionsPopup(Sender: TObject);
|
||||
procedure actExitApplicationExecute(Sender: TObject);
|
||||
@@ -781,6 +784,7 @@ type
|
||||
procedure spltPreviewMoved(Sender: TObject);
|
||||
procedure actDataSaveBlobToFileExecute(Sender: TObject);
|
||||
procedure DataGridColumnResize(Sender: TVTHeader; Column: TColumnIndex);
|
||||
procedure actCopyAsLaTexExecute(Sender: TObject);
|
||||
private
|
||||
LastHintMousepos: TPoint;
|
||||
LastHintControlIndex: Integer;
|
||||
@@ -2321,12 +2325,32 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
|
||||
procedure TMainForm.actCopyAsLaTexExecute(Sender: TObject);
|
||||
var
|
||||
S: TMemoryStream;
|
||||
begin
|
||||
// Copy data in focused grid as LaTex table
|
||||
Screen.Cursor := crHourglass;
|
||||
S := TMemoryStream.Create;
|
||||
try
|
||||
GridToLatex(ActiveGrid, S);
|
||||
StreamToClipboard(S, S, True);
|
||||
finally
|
||||
ShowStatusMsg('Freeing data...');
|
||||
S.Free;
|
||||
ShowStatusMsg;
|
||||
Screen.Cursor := crDefault;
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
procedure TMainForm.actExportDataExecute(Sender: TObject);
|
||||
var
|
||||
Dialog: TSaveDialog;
|
||||
FS: TFileStream;
|
||||
begin
|
||||
// Save data in current dataset as CSV, HTML or XML
|
||||
// Save data in current dataset into various text file formats
|
||||
Dialog := SaveDialogExportData;
|
||||
Dialog.FileName := BestTableName(GridResult(ActiveGrid));
|
||||
Dialog.Title := 'Export result set from '+Dialog.Filename+'...';
|
||||
@@ -2338,6 +2362,7 @@ begin
|
||||
2: GridToHtml(ActiveGrid, FS);
|
||||
3: GridToXml(ActiveGrid, FS);
|
||||
4: GridToSql(ActiveGrid, FS);
|
||||
5: GridToLaTex(ActiveGrid, FS);
|
||||
end;
|
||||
finally
|
||||
ShowStatusMsg('Freeing data...');
|
||||
@@ -4201,6 +4226,7 @@ begin
|
||||
actCopyAsHTML.Enabled := inDataOrQueryTabNotEmpty;
|
||||
actCopyAsXML.Enabled := inDataOrQueryTabNotEmpty;
|
||||
actCopyAsSQL.Enabled := inDataOrQueryTabNotEmpty;
|
||||
actCopyAsLaTex.Enabled := inDataOrQueryTabNotEmpty;
|
||||
actExportData.Enabled := inDataOrQueryTabNotEmpty;
|
||||
actDataSetNull.Enabled := inDataOrQueryTab and Assigned(Results) and Assigned(Grid.FocusedNode);
|
||||
|
||||
@@ -5069,6 +5095,7 @@ begin
|
||||
2: DefaultExt := 'html';
|
||||
3: DefaultExt := 'xml';
|
||||
4: DefaultExt := 'sql';
|
||||
5: DefaultExt := 'latex';
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
Reference in New Issue
Block a user