Simon Grossenbacher 9 éve
szülő
commit
19cab8d22a
5 módosított fájl, 73 hozzáadás és 46 törlés
  1. 5 4
      AppConfig.json
  2. BIN
      RESTDebugger.exe
  3. 6 6
      prj/RESTDebugger.stat
  4. 26 28
      src/_frmMain.dfm
  5. 36 8
      src/_frmMain.pas

+ 5 - 4
AppConfig.json

@@ -1,15 +1,16 @@
 {
 	"Dialogs": {
 		"LastOpenDir": "C:\\dev\\RESTDebugger\\",
-		"LastSaveDir": "C:\\dev\\RESTDebugger\\"
+		"LastSaveDir": "C:\\dev\\Simnet\\SmartHome\\"
 	},
 	"Project": {
 		"AutoOpenLastUsed": true,
-		"LastUsed": "C:\\dev\\RESTDebugger\\Test-Config.rdproj"
+		"LastUsed": "C:\\dev\\Simnet\\SmartHome\\SmartHomeService\\SmartHome.rdproj",
+		"AutoSaveProject": true
 	},
 	"MainWindowPos": {
-		"Left": 848,
-		"Top": 233,
+		"Left": 990,
+		"Top": 360,
 		"Width": 720,
 		"Height": 930,
 		"StayOnTop": false

BIN
RESTDebugger.exe


+ 6 - 6
prj/RESTDebugger.stat

@@ -1,10 +1,10 @@
 [Stats]
-EditorSecs=4301
-DesignerSecs=2140
-InspectorSecs=1070
-CompileSecs=119665
-OtherSecs=1391
+EditorSecs=4531
+DesignerSecs=2224
+InspectorSecs=1106
+CompileSecs=126392
+OtherSecs=1430
 StartTime=27.10.2016 18:27:37
 RealKeys=0
 EffectiveKeys=0
-DebugSecs=3269
+DebugSecs=3405

+ 26 - 28
src/_frmMain.dfm

@@ -32,7 +32,6 @@ object frmMain: TfrmMain
     Color = clWhite
     ParentBackground = False
     TabOrder = 0
-    ExplicitWidth = 1004
     object Label1: TLabel
       Left = 25
       Top = 31
@@ -105,8 +104,6 @@ object frmMain: TfrmMain
     Font.Height = -11
     Font.Name = 'Tahoma'
     Font.Style = []
-    ExplicitTop = 904
-    ExplicitWidth = 1004
   end
   object cxPageControl1: TcxPageControl
     Left = 0
@@ -114,11 +111,9 @@ object frmMain: TfrmMain
     Width = 726
     Height = 439
     Align = alClient
-    TabOrder = 4
+    TabOrder = 3
     Properties.ActivePage = tabContent
     Properties.CustomButtons.Buttons = <>
-    ExplicitWidth = 1004
-    ExplicitHeight = 433
     ClientRectBottom = 437
     ClientRectLeft = 2
     ClientRectRight = 724
@@ -126,8 +121,6 @@ object frmMain: TfrmMain
     object tabContent: TcxTabSheet
       Caption = 'Response Content'
       ImageIndex = 0
-      ExplicitWidth = 1000
-      ExplicitHeight = 405
       object EditorContent: TBCEditor
         Left = 0
         Top = 0
@@ -225,16 +218,11 @@ object frmMain: TfrmMain
           FF00}
         WordWrap.Indicator.MaskColor = clFuchsia
         WordWrap.Width = wwwPage
-        ExplicitLeft = 3
-        ExplicitWidth = 1000
-        ExplicitHeight = 405
       end
     end
     object tabHeaders: TcxTabSheet
       Caption = 'Response Headers'
       ImageIndex = 1
-      ExplicitWidth = 1000
-      ExplicitHeight = 405
       object EditorHeaders: TBCEditor
         Left = 0
         Top = 0
@@ -331,8 +319,6 @@ object frmMain: TfrmMain
           FF00}
         WordWrap.Indicator.MaskColor = clFuchsia
         WordWrap.Width = wwwPage
-        ExplicitWidth = 1000
-        ExplicitHeight = 405
       end
     end
   end
@@ -344,7 +330,6 @@ object frmMain: TfrmMain
     Align = alTop
     BevelOuter = bvNone
     TabOrder = 7
-    ExplicitWidth = 1004
     object Label2: TLabel
       Left = 8
       Top = 16
@@ -482,7 +467,6 @@ object frmMain: TfrmMain
       object cxTabSheet1: TcxTabSheet
         Caption = 'URL Parameters'
         ImageIndex = 0
-        ExplicitWidth = 573
         object EditorURLParams: TBCEditor
           Left = 0
           Top = 31
@@ -583,7 +567,6 @@ object frmMain: TfrmMain
             FF00}
           WordWrap.Indicator.MaskColor = clFuchsia
           WordWrap.Width = wwwPage
-          ExplicitWidth = 573
         end
         object Panel3: TPanel
           Left = 0
@@ -593,7 +576,6 @@ object frmMain: TfrmMain
           Align = alTop
           BevelOuter = bvNone
           TabOrder = 1
-          ExplicitWidth = 573
           object Label5: TLabel
             Left = 8
             Top = 8
@@ -606,7 +588,6 @@ object frmMain: TfrmMain
       object cxTabSheet2: TcxTabSheet
         Caption = 'Extra Headers'
         ImageIndex = 1
-        ExplicitWidth = 573
         object EditorExtraHeaders: TBCEditor
           Left = 0
           Top = 31
@@ -707,7 +688,6 @@ object frmMain: TfrmMain
             FF00}
           WordWrap.Indicator.MaskColor = clFuchsia
           WordWrap.Width = wwwPage
-          ExplicitWidth = 573
         end
         object Panel4: TPanel
           Left = 0
@@ -717,7 +697,6 @@ object frmMain: TfrmMain
           Align = alTop
           BevelOuter = bvNone
           TabOrder = 1
-          ExplicitWidth = 573
           object Label7: TLabel
             Left = 8
             Top = 8
@@ -766,7 +745,6 @@ object frmMain: TfrmMain
       object tabPostData: TcxTabSheet
         Caption = 'Post Data'
         ImageIndex = 2
-        ExplicitWidth = 573
         object EditorPostData: TBCEditor
           Left = 0
           Top = 46
@@ -867,9 +845,6 @@ object frmMain: TfrmMain
             FF00}
           WordWrap.Indicator.MaskColor = clFuchsia
           WordWrap.Width = wwwPage
-          ExplicitTop = 95
-          ExplicitWidth = 573
-          ExplicitHeight = 70
         end
         object Panel5: TPanel
           Left = 0
@@ -879,7 +854,6 @@ object frmMain: TfrmMain
           Align = alTop
           BevelOuter = bvNone
           TabOrder = 1
-          ExplicitWidth = 573
           object Label8: TLabel
             Left = 20
             Top = 8
@@ -1026,6 +1000,10 @@ object frmMain: TfrmMain
       Category = 0
       Visible = ivAlways
       ItemLinks = <
+        item
+          Visible = True
+          ItemName = 'dxBarButton2'
+        end
         item
           Visible = True
           ItemName = 'dxBarButton3'
@@ -1111,7 +1089,7 @@ object frmMain: TfrmMain
       OnClick = tbbtnRunClick
     end
     object dxBarSubItem4: TdxBarSubItem
-      Caption = 'View'
+      Caption = 'Settings'
       Category = 0
       Visible = ivAlways
       ItemLinks = <
@@ -1122,6 +1100,10 @@ object frmMain: TfrmMain
         item
           Visible = True
           ItemName = 'tbbtnAutoOpenLastUsed'
+        end
+        item
+          Visible = True
+          ItemName = 'tbbtnAutoSaveProject'
         end>
     end
     object tbbtnStayOnTop: TdxBarButton
@@ -1140,6 +1122,22 @@ object frmMain: TfrmMain
       ButtonStyle = bsChecked
       OnClick = tbbtnAutoOpenLastUsedClick
     end
+    object dxBarButton2: TdxBarButton
+      Caption = 'New'
+      Category = 0
+      Hint = 'New'
+      Visible = ivAlways
+      ShortCut = 16462
+      OnClick = dxBarButton2Click
+    end
+    object tbbtnAutoSaveProject: TdxBarButton
+      Caption = 'Auto save project'
+      Category = 0
+      Hint = 'Auto save project'
+      Visible = ivAlways
+      ButtonStyle = bsChecked
+      OnClick = tbbtnAutoSaveProjectClick
+    end
   end
   object PopupMenuEditorContent: TPopupMenu
     Left = 28

+ 36 - 8
src/_frmMain.pas

@@ -86,6 +86,8 @@ type
     edtAuthUsername: TcxTextEdit;
     edtAuthPassword: TcxTextEdit;
     Label10: TLabel;
+    dxBarButton2: TdxBarButton;
+    tbbtnAutoSaveProject: TdxBarButton;
     procedure FormShow(Sender: TObject);
     procedure FormCreate(Sender: TObject);
     procedure FormDestroy(Sender: TObject);
@@ -112,6 +114,8 @@ type
     procedure EditorURLParamsChange(Sender: TObject);
     procedure comboMethodPropertiesChange(Sender: TObject);
     procedure tbbtnAutoOpenLastUsedClick(Sender: TObject);
+    procedure dxBarButton2Click(Sender: TObject);
+    procedure tbbtnAutoSaveProjectClick(Sender: TObject);
   private
     FMainConfig: TJSONConfig;
     FProjectConfig: TJSONConfig;
@@ -193,6 +197,18 @@ begin
   FMainConfig.WriteBool('Project', 'AutoOpenLastUsed', tbbtnAutoOpenLastUsed.Down);
 end;
 
+procedure TfrmMain.tbbtnAutoSaveProjectClick(Sender: TObject);
+begin
+  FMainConfig.WriteBool('Project', 'AutoSaveProject', tbbtnAutoSaveProject.Down);
+end;
+
+procedure TfrmMain.dxBarButton2Click(Sender: TObject);
+begin
+  FActiveProject := GetTempProjectFile;
+  FIsTempProjectLoaded := True;
+  LoadProject;
+end;
+
 procedure TfrmMain.dxBarButton3Click(Sender: TObject);
 begin
   OpenDialog.InitialDir := FMainConfig.ReadString('Dialogs', 'LastOpenDir', ExtractFilePath(ParamStr(0)));
@@ -231,7 +247,7 @@ begin
   end
   else
   begin
-    if MessageDlg('Preset "' + comboPresets.Text + '" wirklich löschen?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
+    if MessageDlg('Really delete preset "' + comboPresets.Text + '"?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
     begin
       DeletePreset(comboPresets.ItemIndex);
       FProjectConfig.WriteString('Presets', 'Presets', comboPresets.Properties.Items.Text);
@@ -244,6 +260,7 @@ var
   dmy: string;
   idx: Integer;
 begin
+  SavePreset;
   dmy := comboPresets.Text;
   idx := comboPresets.ItemIndex;
   if InputQuery('Edit Preset', 'Rename preset:', dmy) then
@@ -352,15 +369,22 @@ begin
 
   if FProjectConfig.FileModified then
   begin
-    if MessageDlg('The project file has changed. Do you want to save it?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
+    if (tbbtnAutoSaveProject.Down) and (not FIsTempProjectLoaded) then
     begin
-      if FIsTempProjectLoaded then
-      begin
-        SaveProjectAs(False);
-      end
-      else
+      SaveProject;
+    end
+    else
+    begin
+      if MessageDlg('The project file has changed. Do you want to save it?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
       begin
-        SaveProject;
+        if FIsTempProjectLoaded then
+        begin
+          SaveProjectAs(False);
+        end
+        else
+        begin
+          SaveProject;
+        end;
       end;
     end;
   end;
@@ -432,6 +456,7 @@ begin
   end;
 
   tbbtnAutoOpenLastUsed.Down := FMainConfig.ReadBool('Project', 'AutoOpenLastUsed', True);
+  tbbtnAutoSaveProject.Down := FMainConfig.ReadBool('Project', 'AutoSaveProject', True);
 
   EditorContent.Lines.Clear;
   EditorHeaders.Lines.Clear;
@@ -521,6 +546,9 @@ var
   dmy: string;
   tick: Cardinal;
 begin
+  EditorContent.Lines.Clear;
+  EditorHeaders.Lines.Clear;
+
   tick := GetTickCount;
   try
     HTTP.Request.CustomHeaders.AddStrings(EditorExtraHeaders.Lines);