예제 #1
0
			private set;
		}

		/// <summary>
		/// init control
		/// </summary>
		public void init() 
		{
			//DataBinder.OnBindException += HandleOnBindException;
			DataObjects = new DataObjectContainer();

			BtnOpenFile.Clicked += HandleOpenFileClicked;
			BtnGenerate.Clicked += BtnGenerateClicked;
			BtnNew.Clicked += HandleBtnNewClicked;
			BtnAddFile.Clicked += HandleBtnAddClicked;
			BtnRemoveSelected.Clicked += HandleBtnRemoveClicked;
			BtnSaveAs.Clicked += HandleBtnSaveAsClicked;

			//the tree (not used as tree here)
			TsData = new TreeStore(dfFilename,dfGladefile);
			Treeview1.DataSource = TsData;
			Treeview1.Columns.Add ("Filename", dfFilename);
			Treeview1.Columns.Add ("GladeFile", dfGladefile);
			Treeview1.SelectionChanged += TreeViewSelectionChangend;
			Treeview1.ButtonPressed += HandleTreeViewButtonPressed;

			CurrentFile = String.Empty;
예제 #2
0
			gf.CreateImplementation = true;
			gf.OutputPath = fi.Directory.FullName;
		}

		/// <summary>
		/// save to file
		/// </summary>
		/// <param name='fullname'>
		/// Fullname.
		/// </param>
		private void doSave(String fullname, bool clear)
		{
			XmlDocument d = new XmlDocument();

			if (clear)
			{
				d.Load(fullname);
				d.RemoveAll();
			}

			XmlElement config = d.CreateElement("configuration");
			d.AppendChild(config);

			XmlElement glade = d.CreateElement("glade");
			config.AppendChild(glade);

			TreeNavigator tn = TsData.GetFirstNode();
			do
			{
				GladeFile gf = (GladeFile)tn.GetValue(dfGladefile);
				gf.save(glade);
예제 #3
0
			TextviewMessages.LoadText("File " + CurrentFile + " loaded\n",TextFormat.Markdown);
		}


		/// <summary>
		/// set default values
		/// </summary>
		private void setDefaults(GladeFile gf)
		{
			FileInfo fi = new FileInfo(gf.Filename);

			gf.ClassName = fi.Name.Replace(fi.Extension,String.Empty);
			gf.WindowName = "window1"; //Glade default ?
예제 #4
0
			saveAs();
		}


		void TreeViewSelectionChangend (object sender, EventArgs e)
		{
			TreePosition tp = Treeview1.SelectedRow;
			GladeFile gf = (GladeFile)Treeview1.DataSource.GetValue(tp,1);
			if (gf != null)
			{
예제 #5
0
			clearEntries();
			TextviewMessages.LoadText(String.Empty,TextFormat.Markdown);
		}

		void HandleTreeViewButtonPressed (object sender, ButtonEventArgs e)
		{
			if (e.MultiplePress == 2)
			{
				TreePosition tp = Treeview1.SelectedRow;

				GladeFile gf = (GladeFile)Treeview1.DataSource.GetValue(tp,1);
				if (gf != null)
				{
					DataObjects.Add(gf);
예제 #6
0
			} while (tn.MoveNext());
			clearEntries();
		}

		/// <summary>
		/// Add a new glade file in the datastore
		/// </summary>
		/// <param name='sender'>
		/// Sender.
		/// </param>
		/// <param name='e'>
		/// E.
		/// </param>
		void HandleBtnAddClicked (object sender, EventArgs e)
		{
			OpenFileDialog fc = new OpenFileDialog("select a glade file");
			fc.Filters.Add(new FileDialogFilter("Glade","*.glade"));
			if (fc.Run())
			{
				GladeFile gf = new GladeFile(fc.FileName);
				gf.WindowName = "window1";
				gf.Namespace = "window1";
				gf.ClassName = "window1";
				gf.CreateImplementation = true;
예제 #7
0
        public static GladeFile CreateInstance(XmlNode node)
        {
            GladeFile ret = new GladeFile();

            ret.WindowName           = node.AttributeValue("windowname");
            ret.OutputPath           = node.AttributeValue("outputpath");
            ret.Filename             = node.AttributeValue("filename");
            ret.CreateImplementation = node.AttributeValueBool("createimplementation");
            ret.Namespace            = node.AttributeValue("namespace");
            ret.ClassName            = node.AttributeValue("class");
            ret.UseCustomWidget      = node.AttributeValueBool("customwidget");
            ret.CustomWidgetName     = node.AttributeValue("customwidgetclass");
            ret.UseGtk2   = node.AttributeValueBool("usegtk2");
            ret.XwtOutput = node.AttributeValueBool("xwtoutput");
            return(ret);
        }
예제 #8
0
			}
		}


		/// <summary>
		/// load data from a config file
		/// </summary>
		/// <param name='filename'>
		/// Filename.
		/// </param>
		private void loadData(String filename)
		{
			TsData.Clear();

			XmlDocument doc = new XmlDocument();
			doc.Load(filename);
			XmlNodeList lst = doc.SelectNodes("//gladefile");
			foreach (XmlNode nd in lst)
			{
				GladeFile f = GladeFile.CreateInstance(nd);
				TsData.AddNode().SetValue(dfFilename,f.Filename).SetValue(dfGladefile,f);
			}
			CurrentFile = filename;
		
예제 #9
0
				TsData.AddNode().SetValue(dfFilename,gf.Filename).SetValue(dfGladefile,gf);
			}
		}

		//clear all entries ... kind of workaround
		private void clearEntries()
		{	
			GladeFile gf = new GladeFile("");
			gf.ClassName = String.Empty;
			gf.CreateImplementation = true;
			gf.CustomWidgetName = String.Empty;
			gf.Filename = String.Empty;
			gf.Filename = String.Empty;
			gf.Namespace = String.Empty;
			gf.OutputPath = String.Empty;
			gf.Target = String.Empty;
			gf.UseGtk2 = false;
			gf.WindowName = String.Empty;
			gf.XwtOutput = false;
예제 #10
0
        public static GladeFile CreateInstance(XmlNode node)
        {
            GladeFile ret = new GladeFile();

            ret.WindowName = node.AttributeValue("windowname");
            ret.OutputPath = node.AttributeValue("outputpath");
            ret.Filename = node.AttributeValue("filename");
            ret.CreateImplementation = node.AttributeValueBool("createimplementation");
            ret.Namespace = node.AttributeValue("namespace");
            ret.ClassName = node.AttributeValue("class");
            ret.UseCustomWidget = node.AttributeValueBool("customwidget");
            ret.CustomWidgetName = node.AttributeValue("customwidgetclass");
            ret.UseGtk2 = node.AttributeValueBool("usegtk2");
            ret.XwtOutput = node.AttributeValueBool("xwtoutput");
            return ret;
        }
예제 #11
0
        /// <summary>
        /// set default values
        /// </summary>
        private void setDefaults(GladeFile gf)
        {
            FileInfo fi = new FileInfo(gf.Filename);

            gf.ClassName = fi.Name.Replace(fi.Extension,String.Empty);
            gf.WindowName = "window1"; //Glade default ?
            gf.Namespace = gf.ClassName;
            gf.CreateImplementation = true;
            gf.OutputPath = fi.Directory.FullName;
        }
예제 #12
0
 /// <summary>
 /// Add a new glade file in the datastore
 /// </summary>
 /// <param name='sender'>
 /// Sender.
 /// </param>
 /// <param name='e'>
 /// E.
 /// </param>
 void HandleBtnAddClicked(object sender, EventArgs e)
 {
     OpenFileDialog fc = new OpenFileDialog("select a glade file");
     fc.Filters.Add(new FileDialogFilter("Glade","*.glade"));
     if (fc.Run())
     {
         GladeFile gf = new GladeFile(fc.FileName);
         gf.WindowName = "window1";
         gf.Namespace = "window1";
         gf.ClassName = "window1";
         gf.CreateImplementation = true;
         gf.OutputPath = new FileInfo(fc.FileName).Directory.FullName;
         TsData.AddNode().SetValue(dfFilename,gf.Filename).SetValue(dfGladefile,gf);
     }
 }
예제 #13
0
 //clear all entries ... kind of workaround
 private void clearEntries()
 {
     GladeFile gf = new GladeFile("");
     gf.ClassName = String.Empty;
     gf.CreateImplementation = true;
     gf.CustomWidgetName = String.Empty;
     gf.Filename = String.Empty;
     gf.Filename = String.Empty;
     gf.Namespace = String.Empty;
     gf.OutputPath = String.Empty;
     gf.Target = String.Empty;
     gf.UseGtk2 = false;
     gf.WindowName = String.Empty;
     gf.XwtOutput = false;
     DataObjects.Add(gf);
     gf.Bind(this);
     DataObjects.DataObjects.Clear();
 }