source: extensions/PiwigoLib/PiwigoUpload/MainForm.cs @ 12415

Revision 12415, 6.9 KB checked in by bayral, 8 years ago (diff)

editing local data v1

Line 
1using System;
2using System.Windows.Forms;
3
4using Com.Piwigo.Lib.DTO;
5using System.Collections.Generic;
6using Com.Piwigo.Uploader.DTO;
7using Com.Piwigo.Uploader.Service;
8using Com.Piwigo.Uploader.Helper;
9
10using System.IO;
11
12namespace Com.Piwigo.Uploader
13{
14    public partial class MainForm : Form
15    {
16        public MainForm()
17        {
18            InitializeComponent();
19            modelManagerBaseBindingSource.DataSource = ModelManager.Instance;
20           
21            txtAlbName.DataBindings.Add("Text", ModelManager.Instance.AlbumEdited, "Name", false, DataSourceUpdateMode.OnPropertyChanged);
22            txtAlbComment.DataBindings.Add("Text", ModelManager.Instance.AlbumEdited, "MessageInfo", false, DataSourceUpdateMode.OnPropertyChanged);
23           
24            picshowImg.DataBindings.Add("ImageLocation", ModelManager.Instance.ImageEdited, "LocalFile", false, DataSourceUpdateMode.Never);
25        }
26
27        private void MainForm_Load(object sender, EventArgs e)
28        {
29            string[] args = Environment.GetCommandLineArgs();
30
31            foreach (string arg in args)
32            {
33                if (Directory.Exists(arg))
34                {
35                    try
36                    {
37                        ModelManager.Instance.directoryName = arg;
38                        ServiceFactory.GetByType<LoadFromDirectory>().runService();
39                    }
40                    catch (ApplicationException aex)
41                    {
42                        MainAppHelper.showdErrorMessageBox(aex);
43                    }
44                }                   
45            }
46
47            MainAppHelper.BuildAlbumTree(AlbumsTV, ModelManager.Instance.lstAlbumLocaux);
48
49        }
50
51
52        private void Connect_Click(object sender, EventArgs e)
53        {
54            try
55            {
56                String strUri= tbServer.Text.Replace("\\","/");
57                if (!strUri.StartsWith("http"))
58                {
59                    strUri = "http://" + strUri;
60                }
61                if (!strUri.EndsWith("/ws.php"))
62                {
63                    if (!strUri.EndsWith("/"))
64                    {
65                        strUri += "/";
66                    }
67                    strUri += "ws.php";
68                }
69
70                Uri uriServeur;
71                if (Uri.TryCreate(strUri, UriKind.Absolute,out uriServeur))
72                {
73                    ModelManager.Instance.serveurName = uriServeur;
74                    ModelManager.Instance.userName = tbUser.Text;
75                    ModelManager.Instance.password = tbPassword.Text;
76
77                    ServiceFactory.GetByType<Connect>().runService();
78                }
79
80            }
81            catch (ApplicationException aex)
82            {
83                MainAppHelper.showdErrorMessageBox(aex);
84            }
85        }
86
87        private void Telecharger_Click(object sender, EventArgs e)
88        {
89            try
90            {
91                ServiceFactory.GetByType<UploadToPiwigo>().runService();
92            }
93            catch (ApplicationException aex)
94            {
95                MainAppHelper.showdErrorMessageBox(aex);
96            }
97        }
98
99        private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
100        {
101            try
102            {
103                if (ModelManager.Instance.isConnected)
104                {
105                    ServiceFactory.GetByType<Disconnect>().runService();
106                }
107            }
108            catch (ApplicationException aex)
109            {
110                MainAppHelper.showdErrorMessageBox(aex);
111            }
112        }
113
114        private void modelManagerBindingSource_CurrentChanged(object sender, EventArgs e)
115        {
116
117        }
118
119        private void AlbumsTV_AfterSelect(object sender, TreeViewEventArgs e)
120        {
121            if (e.Node.Tag is LocalAlbum)
122            {
123                LocalAlbum alb = (LocalAlbum)e.Node.Tag;
124                ModelManager.Instance.AlbumEdited.Name = alb.Name;
125                ModelManager.Instance.AlbumEdited.Id = alb.Id;
126                ModelManager.Instance.AlbumEdited.LocalDir = alb.LocalDir;
127                ModelManager.Instance.AlbumEdited.MessageInfo = alb.MessageInfo;
128                tabControl1.SelectedTab = tabPageAlbum;
129                tabControl1.Enabled = true;
130            }
131            else if (e.Node.Tag is LocalImage)
132            {
133                LocalImage img = (LocalImage)e.Node.Tag;
134                ModelManager.Instance.ImageEdited.Name = img.Name;
135                ModelManager.Instance.ImageEdited.Id = img.Id;
136                ModelManager.Instance.ImageEdited.Author = img.Author;
137                ModelManager.Instance.ImageEdited.AuthorComment = img.AuthorComment;
138                ModelManager.Instance.ImageEdited.ConfidentialLevel = img.ConfidentialLevel;
139                ModelManager.Instance.ImageEdited.LocalFile = img.LocalFile;
140                ModelManager.Instance.ImageEdited.LstTags = img.LstTags;
141                ModelManager.Instance.ImageEdited.UpperCatId = img.UpperCatId;
142
143                tabControl1.SelectedTab = tabPageImg;
144                tabControl1.Enabled = true;
145            }
146            else
147            {
148                tabControl1.Enabled = false;
149            }
150
151            System.Diagnostics.Debug.Print(label5.Visible.ToString());
152        }
153
154        private void selectedPwgAlbumListBindingSource_CurrentChanged(object sender, EventArgs e)
155        {
156
157        }
158
159        private void bindingSource1_CurrentChanged(object sender, EventArgs e)
160        {
161
162        }
163
164        private void btnAlbumEditOk_Click(object sender, EventArgs e)
165        {
166            if (AlbumsTV.SelectedNode.Tag is LocalAlbum)
167            {
168                LocalAlbum alb = (LocalAlbum)AlbumsTV.SelectedNode.Tag;
169                if (ModelManager.Instance.AlbumEdited.LocalDir == alb.LocalDir)
170                {
171                    alb.Name = ModelManager.Instance.AlbumEdited.Name;
172                    alb.MessageInfo = ModelManager.Instance.AlbumEdited.MessageInfo;
173
174                    AlbumsTV.SelectedNode.Text = alb.Name;
175                }
176            }
177            else
178            {
179                tabControl1.Enabled = false;
180            }
181        }
182
183        private void btnAlbumEditCancel_Click(object sender, EventArgs e)
184        {
185            if (AlbumsTV.SelectedNode.Tag is LocalAlbum)
186            {
187                LocalAlbum alb = (LocalAlbum)AlbumsTV.SelectedNode.Tag;
188                if (ModelManager.Instance.AlbumEdited.LocalDir == alb.LocalDir)
189                {
190                    ModelManager.Instance.AlbumEdited.Name = alb.Name;
191                    ModelManager.Instance.AlbumEdited.MessageInfo = alb.MessageInfo;
192                }
193            }
194            else
195            {
196                tabControl1.Enabled = false;
197            }
198        }       
199    }
200}
Note: See TracBrowser for help on using the repository browser.