summaryrefslogtreecommitdiff
path: root/ui/SyncDialog.h
blob: 9e79c7d2bf89f7d66617c2f656d54d6271cd7d05 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#ifndef SYNCDIALOG_H_INCLUDED
#define SYNCDIALOG_H_INCLUDED

#include "../FreeFileSync.h"
#include "guiGenerated.h"

class SyncDialog: public SyncDlgGenerated
{
public:
    SyncDialog(wxWindow* window,
               const FileCompareResult& gridDataRef,
               Configuration& config,
               bool synchronizationEnabled);

    ~SyncDialog();

    static const int StartSynchronizationProcess = 15;

    static void updateConfigIcons(wxBitmapButton* button1,
                                  wxBitmapButton* button2,
                                  wxBitmapButton* button3,
                                  wxBitmapButton* button4,
                                  wxBitmapButton* button5,
                                  const SyncConfiguration& syncConfig);

private:
    void calculatePreview();

    void OnSyncLeftToRight( wxCommandEvent& event);
    void OnSyncBothSides(   wxCommandEvent& event);

    void OnExLeftSideOnly(  wxCommandEvent& event);
    void OnExRightSideOnly( wxCommandEvent& event);
    void OnLeftNewer(       wxCommandEvent& event);
    void OnRightNewer(      wxCommandEvent& event);
    void OnDifferent(       wxCommandEvent& event);

    void OnStartSync(       wxCommandEvent& event);
    void OnClose(           wxCloseEvent&   event);
    void OnBack(            wxCommandEvent& event);
    void OnCancel(          wxCommandEvent& event);

    void OnSelectRecycleBin(wxCommandEvent& event);

    //temporal copy of maindialog.cfg.syncConfiguration
    SyncConfiguration localSyncConfiguration;
    const FileCompareResult& gridData;
    Configuration& cfg;
};


class BatchDialog: public BatchDlgGenerated
{
public:
    BatchDialog(wxWindow* window,
                const Configuration& config,
                const wxString& leftDir,
                const wxString& rightDir);

    ~BatchDialog();

    static const int batchFileCreated = 15;

private:
    void OnExLeftSideOnly(  wxCommandEvent& event);
    void OnExRightSideOnly( wxCommandEvent& event);
    void OnLeftNewer(       wxCommandEvent& event);
    void OnRightNewer(      wxCommandEvent& event);
    void OnDifferent(       wxCommandEvent& event);

    void OnFilterButton(    wxCommandEvent& event);
    void OnSelectRecycleBin(wxCommandEvent& event);

    void OnClose(           wxCloseEvent&   event);
    void OnCancel(          wxCommandEvent& event);
    void OnCreateJob(       wxCommandEvent& event);

    void updateFilterButton();
    wxString parseConfiguration();

    SyncConfiguration localSyncConfiguration;
    bool filterIsActive;
};

#endif // SYNCDIALOG_H_INCLUDED
bgstack15