You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(17) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(89) |
Feb
(4) |
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2004 |
Jan
|
Feb
(7) |
Mar
(2) |
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2005 |
Jan
(10) |
Feb
(36) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2006 |
Jan
(21) |
Feb
|
Mar
|
Apr
|
May
(20) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(15) |
Dec
|
2009 |
Jan
|
Feb
|
Mar
(2) |
Apr
(12) |
May
(1) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <jm...@us...> - 2009-06-26 18:04:05
|
Revision: 290 http://mavnet.svn.sourceforge.net/mavnet/?rev=290&view=rev Author: jmabey Date: 2009-06-26 18:02:54 +0000 (Fri, 26 Jun 2009) Log Message: ----------- Add support for multiple controllers per command. See code for documentation. Modified Paths: -------------- trunk/Maverick.net/Maverick.csproj trunk/Maverick.net/examples/Friendbook/Friendbook.csproj trunk/Maverick.net/examples/Friendbook-aspx/default.aspx trunk/Maverick.net/examples/Friendbook-aspx/edit.aspx trunk/Maverick.net/examples/Friendbook-aspx/friends.aspx trunk/Maverick.net/examples/Friendbook-aspx/loginFailed.aspx trunk/Maverick.net/examples/Friendbook-aspx/loginForm.aspx trunk/Maverick.net/examples/Friendbook-aspx/loginRequired.aspx trunk/Maverick.net/examples/Friendbook-aspx/maverick.config trunk/Maverick.net/examples/Friendbook-aspx/signup.aspx trunk/Maverick.net/examples/Friendbook-aspx/trimInside.aspx trunk/Maverick.net/examples/Friendbook-aspx/trimOutside.aspx trunk/Maverick.net/examples/Friendbook-aspx/welcome.aspx trunk/Maverick.net/src/Maverick/Dispatcher.cs trunk/Maverick.net/src/Maverick/Flow/CommandBase.cs trunk/Maverick.net/src/Maverick/Flow/CommandFactory.cs trunk/Maverick.net/src/Maverick/Flow/ControllerFactory.cs trunk/Maverick.net/src/Maverick/Util/XML.cs trunk/Maverick.net/tests/Maverick-Tests.csproj trunk/Maverick.net/tests/src/Maverick/Util.Test/MockTest.cs Added Paths: ----------- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/GetLoggedInUser.cs trunk/Maverick.net/examples/Friendbook-aspx/trimWelcomeUser.aspx trunk/Maverick.net/src/Maverick/Flow/CommandMultipleControllers.cs trunk/Maverick.net/src/Maverick/Flow/ControllerWithModelKey.cs trunk/Maverick.net/src/Maverick/Flow/ControllerWithViewResults.cs trunk/Maverick.net/tests/src/Maverick/CommandFactoryTest.cs trunk/Maverick.net/tests/src/Maverick/CommandMultipleControllersTest.cs trunk/Maverick.net/tests/src/Maverick/TestUtility.cs Modified: trunk/Maverick.net/Maverick.csproj =================================================================== (Binary files differ) Added: trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/GetLoggedInUser.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/GetLoggedInUser.cs (rev 0) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/GetLoggedInUser.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -0,0 +1,31 @@ +using System.Collections; +using System; + +using Friendbook.Data; + +namespace Friendbook.Ctl { + /// <summary> + /// Summary description for GetLoggedInUser. + /// </summary> + public class GetLoggedInUser : ControllerProtected { + protected string firstName; + protected string lastName; + + protected override string SecurePerform() { + Friend me = FriendBook.Instance.FindByLogin(this.CurrentLoginName); + + this.firstName = me.FirstName; + this.lastName = me.LastName; + + return SUCCESS;// "success2"; + } + + public string FirstName2 { + get { return firstName; } + } + + public string LastName2 { + get { return lastName; } + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook.csproj =================================================================== (Binary files differ) Modified: trunk/Maverick.net/examples/Friendbook-aspx/default.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/default.aspx 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/examples/Friendbook-aspx/default.aspx 2009-06-26 18:02:54 UTC (rev 290) @@ -1,4 +1,4 @@ -<%@ Page %> +<%@ Page Language="C#" %> <% Context.Response.Redirect("welcome.m"); %> Modified: trunk/Maverick.net/examples/Friendbook-aspx/edit.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/edit.aspx 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/examples/Friendbook-aspx/edit.aspx 2009-06-26 18:02:54 UTC (rev 290) @@ -1,4 +1,4 @@ -<%@ Page %> +<%@ Page Language="C#" %> <% Context.Items.Add("title","Edit Your Info"); Friendbook.Ctl.Edit model = (Friendbook.Ctl.Edit)Context.Items["model"]; Modified: trunk/Maverick.net/examples/Friendbook-aspx/friends.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/friends.aspx 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/examples/Friendbook-aspx/friends.aspx 2009-06-26 18:02:54 UTC (rev 290) @@ -1,7 +1,8 @@ -<%@ Page %> +<%@ Page Language="C#" %> <% Context.Items.Add("title","Friends"); Friendbook.Ctl.Friends model = (Friendbook.Ctl.Friends)Context.Items["model"]; + Friendbook.Ctl.Friends model2 = (Friendbook.Ctl.Friends)Context.Items["ForTesting"]; %> <p> Here is a list of all of your friends: @@ -19,7 +20,7 @@ </tr> <% foreach (Friendbook.Data.Friend friend in model.AllFriends) { string styleAttrs = ""; - if (friend.Login.Equals(model.MyLogin)) + if (friend.Login.Equals(model2.MyLogin)) styleAttrs = "background-color: yellow"; %> <tr> Modified: trunk/Maverick.net/examples/Friendbook-aspx/loginFailed.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/loginFailed.aspx 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/examples/Friendbook-aspx/loginFailed.aspx 2009-06-26 18:02:54 UTC (rev 290) @@ -1,4 +1,4 @@ -<%@ Page %> +<%@ Page Language="C#" %> <% Context.Items.Add("title","Login Failed"); Friendbook.Ctl.ControllerProtected.LoginModel model = (Friendbook.Ctl.ControllerProtected.LoginModel)Context.Items["model"]; Modified: trunk/Maverick.net/examples/Friendbook-aspx/loginForm.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/loginForm.aspx 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/examples/Friendbook-aspx/loginForm.aspx 2009-06-26 18:02:54 UTC (rev 290) @@ -1,4 +1,4 @@ -<%@ Page %> +<%@ Page Language="C#" %> <form action="<%=Context.Items["dest"]%>" method="post"> <table border="0"> <tr> Modified: trunk/Maverick.net/examples/Friendbook-aspx/loginRequired.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/loginRequired.aspx 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/examples/Friendbook-aspx/loginRequired.aspx 2009-06-26 18:02:54 UTC (rev 290) @@ -1,4 +1,4 @@ -<%@ Page %> +<%@ Page Language="C#" %> <% Context.Items.Add("title","Login Required"); Friendbook.Ctl.ControllerProtected.LoginModel model = (Friendbook.Ctl.ControllerProtected.LoginModel)Context.Items["model"]; Modified: trunk/Maverick.net/examples/Friendbook-aspx/maverick.config =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/maverick.config 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/examples/Friendbook-aspx/maverick.config 2009-06-26 18:02:54 UTC (rev 290) @@ -37,11 +37,15 @@ <command name="edit"> <controller class="Friendbook.Ctl.Edit, Friendbook"/> + <controller class="Friendbook.Ctl.GetLoggedInUser, Friendbook" modelKey="ForTrim" > + <viewResult name="success2" abort="True" override="False" /> + </controller> <view name="loginRequired" ref="loginRequired"/> <view name="loginFailed" ref="loginFailed"/> <view name="success" path="edit.aspx"> + <transform path="trimWelcomeUser.aspx"/> <transform path="trimInside.aspx"/> </view> </command> @@ -89,7 +93,7 @@ </command> <command name="friends"> - <controller class="Friendbook.Ctl.Friends, Friendbook"/> + <controller class="Friendbook.Ctl.Friends, Friendbook" modelKey="ForTesting"/> <view name="loginRequired" ref="loginRequired"/> <view name="loginFailed" ref="loginFailed"/> Modified: trunk/Maverick.net/examples/Friendbook-aspx/signup.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/signup.aspx 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/examples/Friendbook-aspx/signup.aspx 2009-06-26 18:02:54 UTC (rev 290) @@ -1,4 +1,4 @@ -<%@ Page %> +<%@ Page Language="C#" %> <% Context.Items.Add("title","Sign Up"); Friendbook.Ctl.SignupSubmit model = (Friendbook.Ctl.SignupSubmit)Context.Items["model"]; Modified: trunk/Maverick.net/examples/Friendbook-aspx/trimInside.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/trimInside.aspx 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/examples/Friendbook-aspx/trimInside.aspx 2009-06-26 18:02:54 UTC (rev 290) @@ -1,4 +1,4 @@ -<%@ Page %> +<%@ Page Language="C#" %> <html> <head> <title> <%=Context.Items["title"]%> </title> Modified: trunk/Maverick.net/examples/Friendbook-aspx/trimOutside.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/trimOutside.aspx 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/examples/Friendbook-aspx/trimOutside.aspx 2009-06-26 18:02:54 UTC (rev 290) @@ -1,4 +1,4 @@ -<%@ Page %> +<%@ Page Language="C#" %> <html> <head> <title> <%=Context.Items["title"]%> </title> Added: trunk/Maverick.net/examples/Friendbook-aspx/trimWelcomeUser.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/trimWelcomeUser.aspx (rev 0) +++ trunk/Maverick.net/examples/Friendbook-aspx/trimWelcomeUser.aspx 2009-06-26 18:02:54 UTC (rev 290) @@ -0,0 +1,8 @@ +<%@ Page Language="C#" %> +<% + Friendbook.Ctl.GetLoggedInUser model = (Friendbook.Ctl.GetLoggedInUser)Context.Items["ForTrim"]; +%> + +<div>Nice to see you again <%=model.FirstName2%> <%=model.LastName2%></div> + +<%=Context.Items["wrapped"]%> Modified: trunk/Maverick.net/examples/Friendbook-aspx/welcome.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/welcome.aspx 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/examples/Friendbook-aspx/welcome.aspx 2009-06-26 18:02:54 UTC (rev 290) @@ -1,4 +1,4 @@ -<%@ Page %> +<%@ Page Language="C#" %> <% Context.Items.Add("title","Welcome"); %> Modified: trunk/Maverick.net/src/Maverick/Dispatcher.cs =================================================================== --- trunk/Maverick.net/src/Maverick/Dispatcher.cs 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/src/Maverick/Dispatcher.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -273,8 +273,14 @@ } } } else { + IDictionary views; CommandMultipleViews mvCommand = cmd as CommandMultipleViews; - IDictionary views = mvCommand.Views; + if(mvCommand != null) { + views = mvCommand.Views; + } else { + CommandMultipleControllers mcCommand = cmd as CommandMultipleControllers; + views = mcCommand.Views; + } foreach (String viewKey in views.Keys) { ForwardView view = views[viewKey] as ForwardView; if (view != null) { Modified: trunk/Maverick.net/src/Maverick/Flow/CommandBase.cs =================================================================== --- trunk/Maverick.net/src/Maverick/Flow/CommandBase.cs 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/src/Maverick/Flow/CommandBase.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -14,7 +14,7 @@ /// Execute the command and render the results! /// </summary> /// <param name="mctx"></param> - public void Go(MaverickContext mctx) { + public virtual void Go(MaverickContext mctx) { try { string viewName = this.controller.Go(mctx); RunView(viewName, mctx); Modified: trunk/Maverick.net/src/Maverick/Flow/CommandFactory.cs =================================================================== --- trunk/Maverick.net/src/Maverick/Flow/CommandFactory.cs 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/src/Maverick/Flow/CommandFactory.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -1,4 +1,5 @@ using System.Collections; +using System.Collections.Generic; using System.Xml; using System; @@ -14,6 +15,8 @@ protected const string TAG_CONTROLLER = "controller"; + protected const String ATTR_MODELKEY = "modelKey"; + protected ViewRegistry viewReg; protected ControllerFactory controllerFact = new ControllerFactory(); @@ -26,7 +29,19 @@ public ICommand CreateCommand(XmlElement commandNode) { XmlNodeList controllerNodes = commandNode.GetElementsByTagName(TAG_CONTROLLER); if (controllerNodes.Count > 1) { - throw new ConfigException("Command must have exactly 1 controller node defined: " + XML.ToString(commandNode)); + List<IController> ctls = new List<IController>(); + Int32 counter = 0; + foreach(XmlElement ctlNode in controllerNodes) { + if(ctlNode.GetAttribute(ATTR_MODELKEY).Length == 0) { + counter++; + } + if(counter > 1) { + throw new ConfigException("Command can only have 1 controller without a 'modelKey' defined: " + XML.ToString(commandNode)); + } + IController controller = this.controllerFact.CreateController(ctlNode); + ctls.Add(controller); + } + return new CommandMultipleControllers(ctls, this.viewReg.CreateViewsMap(commandNode.GetElementsByTagName(TAG_VIEW))); } XmlElement controllerNode = (XmlElement)controllerNodes.Item(0); Added: trunk/Maverick.net/src/Maverick/Flow/CommandMultipleControllers.cs =================================================================== --- trunk/Maverick.net/src/Maverick/Flow/CommandMultipleControllers.cs (rev 0) +++ trunk/Maverick.net/src/Maverick/Flow/CommandMultipleControllers.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -0,0 +1,92 @@ +using System.Collections; +using System; +using System.Collections.Generic; + +namespace Maverick.Flow { + /// <summary> + /// Command implementation which allows one of several views to + /// be determined by one of several controller results. + /// </summary> + public class CommandMultipleControllers : CommandBase { + /// <summary> + /// Stores mapping of String view name to IView object. + /// </summary> + private IDictionary views; + private List<IController> ctls; + + public CommandMultipleControllers(List<IController> ctls, IDictionary views) : base(ctls[0]) { + this.views = views; + this.ctls = ctls; + } + + protected internal override IView GetView(string name) { + return (IView)views[name]; + } + + public IDictionary Views { + get { + return views; + } + } + + public List<IController> Ctls { + get { + return ctls; + } + } + + /// <summary> + /// Execute the command and render the results! + /// </summary> + /// <param name="mctx"></param> + public override void Go(MaverickContext mctx) { + try { + String viewName = ""; + Object tempModel = null; + for(Int32 i = 0; i < ctls.Count; i++) { + IController controller = ctls[i]; + String tempViewName = controller.Go(mctx); + if(i == 0) { + viewName = tempViewName; + } + + ControllerWithModelKey ctlWithKey = null; + ControllerWithViewResults ctlWithResults = controller as ControllerWithViewResults; + + if(ctlWithResults != null) { + ctlWithKey = ctlWithResults.decorated as ControllerWithModelKey; + } else { + ctlWithKey = controller as ControllerWithModelKey; + } + + if(ctlWithKey == null) { + tempModel = mctx.Model; + } + + if(ctlWithResults != null) { + try { + ViewResult viewResult = ctlWithResults.ViewResults[tempViewName]; + if(viewResult.Override) { + viewName = tempViewName; + } + if(viewResult.Abort) { + break; + } + } catch(KeyNotFoundException) { + // Do Nothing + } + } + } + + mctx.Model = tempModel; + RunView(viewName, mctx); + } finally { + // guarantee that this will run even if exception is thrown + // Allow the model to manage resources + // need this here even though it is also in RunView + // in case exception is throw in this.controller.Go(mctx) + DiscardModel(mctx); + } + } + } +} Modified: trunk/Maverick.net/src/Maverick/Flow/ControllerFactory.cs =================================================================== --- trunk/Maverick.net/src/Maverick/Flow/ControllerFactory.cs 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/src/Maverick/Flow/ControllerFactory.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -1,4 +1,5 @@ using System.Collections; +using System.Collections.Generic; using System.Reflection; using System.Xml; using System; @@ -11,6 +12,7 @@ /// </summary> public class ControllerFactory { protected const string ATTR_CONTROLLER_CLASS = "class"; + protected const String ATTR_MODELKEY = "modelKey"; protected readonly static IController nullController = new NullController(); @@ -55,13 +57,25 @@ result.Init(controllerNode); + ctrl = result; + IDictionary controllerParams = XML.getParams(controllerNode); if (controllerParams != null) { - return new ControllerWithParams(result, controllerParams); - } else{ - return result; + ctrl = new ControllerWithParams(ctrl, controllerParams); } + + if(controllerNode.GetAttribute(ATTR_MODELKEY).Length > 0) { + ctrl = new ControllerWithModelKey(ctrl, controllerNode.GetAttribute(ATTR_MODELKEY)); + } + + //keep last due to processing of multiple controllers, see CommandMultipleControllers.Go + Dictionary<String, ViewResult> viewResults = XML.getViewResults(controllerNode); + if(viewResults.Count > 0) { + ctrl = new ControllerWithViewResults(ctrl, viewResults); + } + + return ctrl; } class NullController : IControllerSingleton { Added: trunk/Maverick.net/src/Maverick/Flow/ControllerWithModelKey.cs =================================================================== --- trunk/Maverick.net/src/Maverick/Flow/ControllerWithModelKey.cs (rev 0) +++ trunk/Maverick.net/src/Maverick/Flow/ControllerWithModelKey.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -0,0 +1,31 @@ +using System.Collections; +using System; + +namespace Maverick.Flow { + /// <summary> + /// This is a Decorator pattern, adding modelKey defined for a controller. + /// </summary> + public class ControllerWithModelKey : IController { + protected IController decorated; + private String modelKey; + + public ControllerWithModelKey(IController decorate, String modelKey) { + if (modelKey == null || modelKey.Length < 1) { + throw new ArgumentException("Don't use this decorator without a modelKey."); + } + + this.decorated = decorate; + this.modelKey = modelKey; + } + + public String ModelKey { + get { return modelKey; } + } + + public string Go(IControllerContext cctx) { + String returnString = this.decorated.Go(cctx); + cctx.HttpContext.Items[this.ModelKey] = cctx.Model; + return returnString; + } + } +} Added: trunk/Maverick.net/src/Maverick/Flow/ControllerWithViewResults.cs =================================================================== --- trunk/Maverick.net/src/Maverick/Flow/ControllerWithViewResults.cs (rev 0) +++ trunk/Maverick.net/src/Maverick/Flow/ControllerWithViewResults.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -0,0 +1,36 @@ +using System.Collections; +using System.Collections.Generic; +using System; +using System.Xml; + +namespace Maverick.Flow { + /// <summary> + /// This is a Decorator pattern, adding ViewResults defined for a controller. + /// </summary> + public class ControllerWithViewResults : IController { + internal IController decorated; + private Dictionary<String, ViewResult> viewResults; + + public ControllerWithViewResults(IController decorate, Dictionary<String, ViewResult> viewResults) { + if (viewResults.Count == 0) { + throw new ArgumentException("Don't use this decorator without viewResults."); + } + + this.decorated = decorate; + this.viewResults = viewResults; + } + + public Dictionary<String, ViewResult> ViewResults { + get { return viewResults; } + } + + public string Go(IControllerContext cctx) { + return this.decorated.Go(cctx); + } + } + + public struct ViewResult { + public Boolean Abort; + public Boolean Override; + } +} Modified: trunk/Maverick.net/src/Maverick/Util/XML.cs =================================================================== --- trunk/Maverick.net/src/Maverick/Util/XML.cs 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/src/Maverick/Util/XML.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -1,7 +1,10 @@ using System.Collections; +using System.Collections.Generic; using System.Xml; using System; +using Maverick.Flow; + namespace Maverick.Util { /// <summary> /// Summary description for XML. @@ -13,6 +16,19 @@ public const string TAG_PARAM = "param"; /// <summary> + /// The tag for a viewResult node + /// </summary> + public const string TAG_VIEWRESULT = "viewResult"; + /// <summary> + /// The attribute which represents the "abort" parameter of a viewResult node + /// </summary> + public const string ATTR_ABORT = "abort"; + /// <summary> + /// The attribute which represents the "override" parameter of a viewResult node + /// </summary> + public const string ATTR_OVERRIDE = "override"; + + /// <summary> /// The attribute which represents the "value" of an element. /// </summary> public const string ATTR_VALUE = "value"; @@ -55,6 +71,29 @@ } /// <summary> + /// Extracts a set of viewResult child nodes from the specified node. + /// Expects that param nodes will look like: + /// <viewResult name="theName" abort="True" override="True" /> + /// </summary> + /// <param name="node">Parent element.</param> + /// <returns>dictionary of viewResult, if nothing found the dictionary will be empty.</returns> + public static Dictionary<String, ViewResult> getViewResults(XmlElement node) { + Dictionary<String, ViewResult> result = new Dictionary<string, ViewResult>(); + IEnumerator ienum = node.GetElementsByTagName(TAG_VIEWRESULT).GetEnumerator(); + while(ienum.MoveNext()) { + XmlElement paramNode = (XmlElement)ienum.Current; + String name = XML.GetAttribute(paramNode, ATTR_NAME); + String abort = XML.GetAttribute(paramNode, ATTR_ABORT); + String overrideView = XML.GetAttribute(paramNode, ATTR_OVERRIDE); + ViewResult viewResult = new ViewResult(); + viewResult.Abort = (abort != null && abort.ToLower().Equals("true")); + viewResult.Override = (overrideView != null && overrideView.ToLower().Equals("true")); + result.Add(name, viewResult); + } + return result; + } + + /// <summary> /// Extracts the named value from the element, by checking (in order): /// A system property whose name is constructed like this: /// "maverick." + node.getName() + "." + name Modified: trunk/Maverick.net/tests/Maverick-Tests.csproj =================================================================== --- trunk/Maverick.net/tests/Maverick-Tests.csproj 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/tests/Maverick-Tests.csproj 2009-06-26 18:02:54 UTC (rev 290) @@ -1,117 +1,120 @@ -<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5"> - <PropertyGroup> - <ProjectType>Local</ProjectType> - <ProductVersion>9.0.21022</ProductVersion> - <SchemaVersion>2.0</SchemaVersion> - <ProjectGuid>{D425DFCE-5416-45B1-902E-DB6AD568A669}</ProjectGuid> - <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> - <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> - <ApplicationIcon> - </ApplicationIcon> - <AssemblyKeyContainerName> - </AssemblyKeyContainerName> - <AssemblyName>Maverick.Test</AssemblyName> - <AssemblyOriginatorKeyFile> - </AssemblyOriginatorKeyFile> - <DefaultClientScript>JScript</DefaultClientScript> - <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout> - <DefaultTargetSchema>IE50</DefaultTargetSchema> - <DelaySign>false</DelaySign> - <OutputType>Library</OutputType> - <RootNamespace>Maverick</RootNamespace> - <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent> - <StartupObject> - </StartupObject> - <FileUpgradeFlags> - </FileUpgradeFlags> - <UpgradeBackupLocation> - </UpgradeBackupLocation> - <OldToolsVersion>3.5</OldToolsVersion> - </PropertyGroup> - <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> - <OutputPath>..\build\</OutputPath> - <AllowUnsafeBlocks>false</AllowUnsafeBlocks> - <BaseAddress>285212672</BaseAddress> - <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow> - <ConfigurationOverrideFile> - </ConfigurationOverrideFile> - <DefineConstants> - </DefineConstants> - <DocumentationFile> - </DocumentationFile> - <DebugSymbols>true</DebugSymbols> - <FileAlignment>4096</FileAlignment> - <NoStdLib>false</NoStdLib> - <NoWarn> - </NoWarn> - <Optimize>false</Optimize> - <RegisterForComInterop>false</RegisterForComInterop> - <RemoveIntegerChecks>false</RemoveIntegerChecks> - <TreatWarningsAsErrors>true</TreatWarningsAsErrors> - <WarningLevel>4</WarningLevel> - <DebugType>full</DebugType> - <ErrorReport>prompt</ErrorReport> - </PropertyGroup> - <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> - <OutputPath>bin\</OutputPath> - <AllowUnsafeBlocks>false</AllowUnsafeBlocks> - <BaseAddress>285212672</BaseAddress> - <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow> - <ConfigurationOverrideFile> - </ConfigurationOverrideFile> - <DefineConstants> - </DefineConstants> - <DocumentationFile> - </DocumentationFile> - <DebugSymbols>false</DebugSymbols> - <FileAlignment>4096</FileAlignment> - <NoStdLib>false</NoStdLib> - <NoWarn> - </NoWarn> - <Optimize>false</Optimize> - <RegisterForComInterop>false</RegisterForComInterop> - <RemoveIntegerChecks>false</RemoveIntegerChecks> - <TreatWarningsAsErrors>false</TreatWarningsAsErrors> - <WarningLevel>1</WarningLevel> - <DebugType>none</DebugType> - <ErrorReport>prompt</ErrorReport> - </PropertyGroup> - <ItemGroup> - <ProjectReference Include="..\Maverick.csproj"> - <Name>Maverick</Name> - <Project>{1445EF95-217F-41DB-8E1C-581E1C11085E}</Project> - <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> - </ProjectReference> - <Reference Include="nunit.framework"> - <Name>nunit.framework</Name> - <HintPath>..\lib\net-1.1\nunit.framework.dll</HintPath> - </Reference> - <Reference Include="System"> - <Name>System</Name> - </Reference> - <Reference Include="System.Data"> - <Name>System.Data</Name> - </Reference> - <Reference Include="System.Web"> - <Name>System.Web</Name> - </Reference> - <Reference Include="System.Xml"> - <Name>System.XML</Name> - </Reference> - </ItemGroup> - <ItemGroup> - <Compile Include="src\Maverick\Util.Test\MockTest.cs"> - <SubType>Code</SubType> - </Compile> - <Compile Include="src\Maverick\Util.Test\PropertyPopulatorTest.cs"> - <SubType>Code</SubType> - </Compile> - </ItemGroup> - <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> - <PropertyGroup> - <PreBuildEvent> - </PreBuildEvent> - <PostBuildEvent> - </PostBuildEvent> - </PropertyGroup> +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5"> + <PropertyGroup> + <ProjectType>Local</ProjectType> + <ProductVersion>9.0.21022</ProductVersion> + <SchemaVersion>2.0</SchemaVersion> + <ProjectGuid>{D425DFCE-5416-45B1-902E-DB6AD568A669}</ProjectGuid> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <ApplicationIcon> + </ApplicationIcon> + <AssemblyKeyContainerName> + </AssemblyKeyContainerName> + <AssemblyName>Maverick.Test</AssemblyName> + <AssemblyOriginatorKeyFile> + </AssemblyOriginatorKeyFile> + <DefaultClientScript>JScript</DefaultClientScript> + <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout> + <DefaultTargetSchema>IE50</DefaultTargetSchema> + <DelaySign>false</DelaySign> + <OutputType>Library</OutputType> + <RootNamespace>Maverick</RootNamespace> + <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent> + <StartupObject> + </StartupObject> + <FileUpgradeFlags> + </FileUpgradeFlags> + <UpgradeBackupLocation> + </UpgradeBackupLocation> + <OldToolsVersion>3.5</OldToolsVersion> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> + <OutputPath>..\build\</OutputPath> + <AllowUnsafeBlocks>false</AllowUnsafeBlocks> + <BaseAddress>285212672</BaseAddress> + <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow> + <ConfigurationOverrideFile> + </ConfigurationOverrideFile> + <DefineConstants> + </DefineConstants> + <DocumentationFile> + </DocumentationFile> + <DebugSymbols>true</DebugSymbols> + <FileAlignment>4096</FileAlignment> + <NoStdLib>false</NoStdLib> + <NoWarn> + </NoWarn> + <Optimize>false</Optimize> + <RegisterForComInterop>false</RegisterForComInterop> + <RemoveIntegerChecks>false</RemoveIntegerChecks> + <TreatWarningsAsErrors>true</TreatWarningsAsErrors> + <WarningLevel>4</WarningLevel> + <DebugType>full</DebugType> + <ErrorReport>prompt</ErrorReport> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> + <OutputPath>bin\</OutputPath> + <AllowUnsafeBlocks>false</AllowUnsafeBlocks> + <BaseAddress>285212672</BaseAddress> + <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow> + <ConfigurationOverrideFile> + </ConfigurationOverrideFile> + <DefineConstants> + </DefineConstants> + <DocumentationFile> + </DocumentationFile> + <DebugSymbols>false</DebugSymbols> + <FileAlignment>4096</FileAlignment> + <NoStdLib>false</NoStdLib> + <NoWarn> + </NoWarn> + <Optimize>false</Optimize> + <RegisterForComInterop>false</RegisterForComInterop> + <RemoveIntegerChecks>false</RemoveIntegerChecks> + <TreatWarningsAsErrors>false</TreatWarningsAsErrors> + <WarningLevel>1</WarningLevel> + <DebugType>none</DebugType> + <ErrorReport>prompt</ErrorReport> + </PropertyGroup> + <ItemGroup> + <ProjectReference Include="..\Maverick.csproj"> + <Name>Maverick</Name> + <Project>{1445EF95-217F-41DB-8E1C-581E1C11085E}</Project> + <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> + </ProjectReference> + <Reference Include="nunit.framework"> + <Name>nunit.framework</Name> + <HintPath>..\lib\net-1.1\nunit.framework.dll</HintPath> + </Reference> + <Reference Include="System"> + <Name>System</Name> + </Reference> + <Reference Include="System.Data"> + <Name>System.Data</Name> + </Reference> + <Reference Include="System.Web"> + <Name>System.Web</Name> + </Reference> + <Reference Include="System.Xml"> + <Name>System.XML</Name> + </Reference> + </ItemGroup> + <ItemGroup> + <Compile Include="src\Maverick\CommandFactoryTest.cs" /> + <Compile Include="src\Maverick\CommandMultipleControllersTest.cs" /> + <Compile Include="src\Maverick\TestUtility.cs" /> + <Compile Include="src\Maverick\Util.Test\MockTest.cs"> + <SubType>Code</SubType> + </Compile> + <Compile Include="src\Maverick\Util.Test\PropertyPopulatorTest.cs"> + <SubType>Code</SubType> + </Compile> + </ItemGroup> + <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> + <PropertyGroup> + <PreBuildEvent> + </PreBuildEvent> + <PostBuildEvent> + </PostBuildEvent> + </PropertyGroup> </Project> \ No newline at end of file Added: trunk/Maverick.net/tests/src/Maverick/CommandFactoryTest.cs =================================================================== --- trunk/Maverick.net/tests/src/Maverick/CommandFactoryTest.cs (rev 0) +++ trunk/Maverick.net/tests/src/Maverick/CommandFactoryTest.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -0,0 +1,30 @@ +using System.Collections.Specialized; +using System.Collections; +using System; + +using NUnit.Framework; + +namespace Maverick.Test { + /// <summary> + /// Summary description for CommandFactoryTest. + /// </summary> + /// + [TestFixture] + public class CommandFactoryTest { + + [Test, Ignore("Not implemented")] + public void ShouldBeAbleToCreateCommandSingleView() { + Assert.Fail(); + } + + [Test, Ignore("Not implemented")] + public void ShouldBeAbleToCreateCommandMultipleViews() { + Assert.Fail(); + } + + [Test, Ignore("Not implemented")] + public void ShouldBeAbleToCreateCommandMultipleControllers() { + Assert.Fail(); + } + } +} Added: trunk/Maverick.net/tests/src/Maverick/CommandMultipleControllersTest.cs =================================================================== --- trunk/Maverick.net/tests/src/Maverick/CommandMultipleControllersTest.cs (rev 0) +++ trunk/Maverick.net/tests/src/Maverick/CommandMultipleControllersTest.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -0,0 +1,54 @@ +using System.Collections.Specialized; +using System.Collections; +using System.Collections.Generic; +using System; +using Maverick.Flow; +using Maverick.src.Maverick.Util.Test; + +using NUnit.Framework; +using System.Xml; + +namespace Maverick.Test { + /// <summary> + /// Summary description for CommandMultipleControllersTest. + /// </summary> + /// + [TestFixture] + public class CommandMultipleControllersTest { + + [Test] + public void ShouldBeAbleToCreateCommandMultipleControllers() { + List<IController> ctrls = new List<IController>(); + ctrls.Add(new TestEchoController()); + ctrls.Add(new TestEcho2Controller()); + + ICommand command = new CommandMultipleControllers(ctrls, new Hashtable()); + + Assert.IsTrue(command is CommandMultipleControllers); + } + + [Test, Ignore("Not implemented")] + public void ShouldBeAbleToRunWithOnlyOneController() { + //List<IController> ctrls = new List<IController>(); + //ctrls.Add(new TestEchoController()); + + //List<String> views = new List<string>(); + //views.Add("TestView"); + //TestUtility.GetTrivialViews(views); + + //ICommand command = new CommandMultipleControllers(ctrls, new Hashtable()); + + //Assert.IsTrue(command is CommandMultipleControllers); + } + + [Test, Ignore("Not implemented")] + public void ShouldBeAbleToRunWithMultipleControllers() { + Assert.Fail(); + } + + [Test, Ignore("Not implemented")] + public void ShouldBeAbleToGetViewSetByOverride() { + Assert.Fail(); + } + } +} Added: trunk/Maverick.net/tests/src/Maverick/TestUtility.cs =================================================================== --- trunk/Maverick.net/tests/src/Maverick/TestUtility.cs (rev 0) +++ trunk/Maverick.net/tests/src/Maverick/TestUtility.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -0,0 +1,22 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.Xml; + +namespace Maverick.Test { + public class TestUtility { + + public static XmlNodeList GetTrivialViews(List<String> names) { + XmlDocument xDoc = new XmlDocument(); + foreach(String name in names) { + XmlElement view = xDoc.CreateElement("view"); + view.SetAttribute("type", "trivial"); + view.SetAttribute("name", name); + xDoc.AppendChild(view); + } + return xDoc.ChildNodes; + } + + } +} Modified: trunk/Maverick.net/tests/src/Maverick/Util.Test/MockTest.cs =================================================================== --- trunk/Maverick.net/tests/src/Maverick/Util.Test/MockTest.cs 2009-06-26 17:57:45 UTC (rev 289) +++ trunk/Maverick.net/tests/src/Maverick/Util.Test/MockTest.cs 2009-06-26 18:02:54 UTC (rev 290) @@ -58,6 +58,45 @@ } } + public class TestEchoController : MockController { + private String echoValue = null; + + public String EchoValue { + get { return echoValue; } + set { this.echoValue = value; } + } + + public override string Perform() { + return this.echoValue; + } + } + + public class TestEcho2Controller : MockController { + private String echo2Value = null; + + public String Echo2Value { + get { return echo2Value; } + set { this.echo2Value = value; } + } + + public override string Perform() { + return this.echo2Value; + } + } + + public class TestEcho3Controller : MockController { + private String echo3Value = null; + + public String Echo3Value { + get { return echo3Value; } + set { this.echo3Value = value; } + } + + public override string Perform() { + return this.echo3Value; + } + } + public class MockController : Throwaway { private ArrayList properties = new ArrayList(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jm...@us...> - 2009-06-26 17:58:49
|
Revision: 289 http://mavnet.svn.sourceforge.net/mavnet/?rev=289&view=rev Author: jmabey Date: 2009-06-26 17:57:45 +0000 (Fri, 26 Jun 2009) Log Message: ----------- Added language Modified Paths: -------------- trunk/Maverick.net/examples/Friendbook-aspx/changePassword.aspx Modified: trunk/Maverick.net/examples/Friendbook-aspx/changePassword.aspx =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/changePassword.aspx 2009-05-06 22:04:29 UTC (rev 288) +++ trunk/Maverick.net/examples/Friendbook-aspx/changePassword.aspx 2009-06-26 17:57:45 UTC (rev 289) @@ -1,4 +1,4 @@ -<%@ Page %> +<%@ Page Language="C#" %> <% Context.Items.Add("title","Change Password"); Friendbook.Ctl.ChangePassword model = (Friendbook.Ctl.ChangePassword)Context.Items["model"]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kdr...@us...> - 2009-05-06 22:06:17
|
Revision: 288 http://mavnet.svn.sourceforge.net/mavnet/?rev=288&view=rev Author: kdraper43 Date: 2009-05-06 22:04:29 +0000 (Wed, 06 May 2009) Log Message: ----------- Added so to checl of XXS and Sql injection Modified Paths: -------------- trunk/Maverick.net/src/Maverick/Ctl/Throwaway.cs Modified: trunk/Maverick.net/src/Maverick/Ctl/Throwaway.cs =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-04-06 16:48:05
|
Revision: 287 http://mavnet.svn.sourceforge.net/mavnet/?rev=287&view=rev Author: corts Date: 2009-04-06 16:47:43 +0000 (Mon, 06 Apr 2009) Log Message: ----------- match the 2.0 framework version of log4net -- 1.2.10.0 Modified Paths: -------------- trunk/Maverick.net/lib/net-3.5/log4net.dll Modified: trunk/Maverick.net/lib/net-3.5/log4net.dll =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-04-06 16:47:13
|
Revision: 286 http://mavnet.svn.sourceforge.net/mavnet/?rev=286&view=rev Author: corts Date: 2009-04-06 16:47:03 +0000 (Mon, 06 Apr 2009) Log Message: ----------- include the build of .net 2.0 framework Modified Paths: -------------- trunk/Maverick.net/Maverick.build Modified: trunk/Maverick.net/Maverick.build =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-04-06 15:12:33
|
Revision: 285 http://mavnet.svn.sourceforge.net/mavnet/?rev=285&view=rev Author: corts Date: 2009-04-06 15:12:18 +0000 (Mon, 06 Apr 2009) Log Message: ----------- remove unneeded target Modified Paths: -------------- trunk/Maverick.net/Makefile Modified: trunk/Maverick.net/Makefile =================================================================== --- trunk/Maverick.net/Makefile 2009-04-06 15:09:12 UTC (rev 284) +++ trunk/Maverick.net/Makefile 2009-04-06 15:12:18 UTC (rev 285) @@ -1,4 +1,3 @@ - fixLineTermination: find . -type f -name '*.cs' -print -exec unix2dos -D --safe \{\} \; find . -type f -name '*.aspx' -print -exec unix2dos -D --safe \{\} \; @@ -9,9 +8,6 @@ uncrust: find ./ -iname '*.cs' -not -iname '*.designer.cs' -exec ./bin/uncrustify/uncrustify.exe -c ./bin/uncrustify/ul.cfg --no-backup {} \; -style: - find ./ -iname '*.cs' -exec ./bin/style.sh {} \; - cleanbackups: find -iname '*cs~' -exec rm {} \; find -iname '*sql~' -exec rm {} \; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-04-06 15:09:21
|
Revision: 284 http://mavnet.svn.sourceforge.net/mavnet/?rev=284&view=rev Author: corts Date: 2009-04-06 15:09:12 +0000 (Mon, 06 Apr 2009) Log Message: ----------- makefile and binaries for uncrustify used to format the source Added Paths: ----------- trunk/Maverick.net/Makefile trunk/Maverick.net/bin/ trunk/Maverick.net/bin/Uncrustify/ trunk/Maverick.net/bin/Uncrustify/Uncrustify.exe trunk/Maverick.net/bin/Uncrustify/ul.cfg trunk/Maverick.net/bin/UniversalIndenterGUI/ trunk/Maverick.net/bin/UniversalIndenterGUI/CHANGELOG.txt trunk/Maverick.net/bin/UniversalIndenterGUI/INSTALL.txt trunk/Maverick.net/bin/UniversalIndenterGUI/LICENSE.GPL trunk/Maverick.net/bin/UniversalIndenterGUI/UniversalIndentGUI.exe trunk/Maverick.net/bin/UniversalIndenterGUI/config/ trunk/Maverick.net/bin/UniversalIndenterGUI/config/UiGuiSyntaxHighlightConfig.ini trunk/Maverick.net/bin/UniversalIndenterGUI/config/UniversalIndentGUI.ini trunk/Maverick.net/bin/UniversalIndenterGUI/config/astyle.cfg trunk/Maverick.net/bin/UniversalIndenterGUI/config/uncrustify.cfg trunk/Maverick.net/bin/UniversalIndenterGUI/doc/ trunk/Maverick.net/bin/UniversalIndenterGUI/doc/images/ trunk/Maverick.net/bin/UniversalIndenterGUI/doc/images/BANNER.JPG trunk/Maverick.net/bin/UniversalIndenterGUI/doc/images/externallinks.png trunk/Maverick.net/bin/UniversalIndenterGUI/doc/images/screenshot6.jpg trunk/Maverick.net/bin/UniversalIndenterGUI/doc/images/screenshot8.jpg trunk/Maverick.net/bin/UniversalIndenterGUI/doc/iniFileFormat.html trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/ trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/JsDecoder.js trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/PerlTidyLib.pm trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/astyle.exe trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/astyle.html trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/bcpp.exe trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/bcpp.txt trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/csstidy.exe trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.cbl trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.cpp trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.css trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.f90 trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.html trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.js trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.php trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.pl trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.py trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.rb trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.scc trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.sh trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/example.xml trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/f90ppr.exe trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/f90ppr.txt trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/greatcode.exe trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/greatcode.txt trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/hindent trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/hindent.html trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/htb.exe trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/htb.html trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/indent.exe trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/indent.html trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/libiconv-2.dll trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/libintl-2.dll trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/perltidy trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/perltidy.txt trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/phpStylist.php trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/phpStylist.txt trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/php_beautifier.html trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/pindent.py trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/pindent.txt trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/rbeautify.rb trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/ruby_formatter.rb trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/shellindent.awk trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/tidy.exe trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/tidy.html trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_CblBeau.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_astyle.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_bcpp.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_csstidy.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_f90ppr.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_gnuindent.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_greatcode.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_hindent.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_htb.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_jsdecoder.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_jsppp.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_perltidy.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_phpCB.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_phpStylist.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_php_Beautifier.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_pindent.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_rbeautify.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_rubyformatter.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_shellindent.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_tidy.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_uncrustify.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uigui_xmlindent.ini trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uncrustify.exe trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/uncrustify.txt trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/xmlindent.exe trunk/Maverick.net/bin/UniversalIndenterGUI/indenters/xmlindent.txt trunk/Maverick.net/bin/UniversalIndenterGUI/readme.html trunk/Maverick.net/bin/UniversalIndenterGUI/readme.txt trunk/Maverick.net/bin/UniversalIndenterGUI/translations/ trunk/Maverick.net/bin/UniversalIndenterGUI/translations/qt_ja_JP.qm trunk/Maverick.net/bin/UniversalIndenterGUI/translations/qt_zh_TW.qm trunk/Maverick.net/bin/UniversalIndenterGUI/translations/universalindent_de.qm trunk/Maverick.net/bin/UniversalIndenterGUI/translations/universalindent_fr.qm trunk/Maverick.net/bin/UniversalIndenterGUI/translations/universalindent_ja_jp.qm trunk/Maverick.net/bin/UniversalIndenterGUI/translations/universalindent_ru.qm trunk/Maverick.net/bin/UniversalIndenterGUI/translations/universalindent_uk.qm trunk/Maverick.net/bin/UniversalIndenterGUI/translations/universalindent_zh_TW.qm Added: trunk/Maverick.net/Makefile =================================================================== --- trunk/Maverick.net/Makefile (rev 0) +++ trunk/Maverick.net/Makefile 2009-04-06 15:09:12 UTC (rev 284) @@ -0,0 +1,20 @@ + +fixLineTermination: + find . -type f -name '*.cs' -print -exec unix2dos -D --safe \{\} \; + find . -type f -name '*.aspx' -print -exec unix2dos -D --safe \{\} \; + find . -type f -name '*.ascx' -print -exec unix2dos -D --safe \{\} \; + find . -type f -name '*.css' -print -exec unix2dos -D --safe \{\} \; + find . -type f -name '*.js' -print -exec unix2dos -D --safe \{\} \; + +uncrust: + find ./ -iname '*.cs' -not -iname '*.designer.cs' -exec ./bin/uncrustify/uncrustify.exe -c ./bin/uncrustify/ul.cfg --no-backup {} \; + +style: + find ./ -iname '*.cs' -exec ./bin/style.sh {} \; + +cleanbackups: + find -iname '*cs~' -exec rm {} \; + find -iname '*sql~' -exec rm {} \; + find -iname '*orig' -exec rm {} \; + find -iname '*mk~' -exec rm {} \; + \ No newline at end of file Added: trunk/Maverick.net/bin/Uncrustify/Uncrustify.exe =================================================================== (Binary files differ) Property changes on: trunk/Maverick.net/bin/Uncrustify/Uncrustify.exe ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: trunk/Maverick.net/bin/Uncrustify/ul.cfg =================================================================== --- trunk/Maverick.net/bin/Uncrustify/ul.cfg (rev 0) +++ trunk/Maverick.net/bin/Uncrustify/ul.cfg 2009-04-06 15:09:12 UTC (rev 284) @@ -0,0 +1,106 @@ +# +# K&R (sort-of) +# +# $Id: ul.cfg,v 1.2 2008-12-10 21:03:56 cort Exp $ +# + +indent_with_tabs = 2 # 1=indent to level only, 2=indent with tabs +input_tab_size = 8 # original tab size +output_tab_size = 8 # new tab size +indent_columns = 4 +indent_label = 2 # pos: absolute col, neg: relative column +indent_namespace = TRUE +indent_class = TRUE +# indent_align_string = False # align broken strings +# indent_brace = 0 + +nl_enum_brace = remove # "enum {" vs "enum \n {" +nl_union_brace = remove # "union {" vs "union \n {" +nl_struct_brace = remove # "struct {" vs "struct \n {" +nl_do_brace = remove # "do {" vs "do \n {" +nl_if_brace = remove # "if () {" vs "if () \n {" +nl_for_brace = remove # "for () {" vs "for () \n {" +nl_else_brace = remove # "else {" vs "else \n {" +nl_while_brace = remove # "while () {" vs "while () \n {" +nl_switch_brace = remove # "switch () {" vs "switch () \n {" +# nl_func_var_def_blk = 1 +# nl_before_case = 1 +nl_fcall_brace = remove # "foo() {" vs "foo()\n{" +nl_fdef_brace = remove # "int foo() {" vs "int foo()\n{" +# nl_after_return = TRUE +nl_brace_while = remove +nl_brace_else = remove +nl_squeeze_ifdef = TRUE +nl_collapse_empty_body = TRUE # "int foo() {}" vw "int foo() {\n{" + +# mod_paren_on_return = add # "return 1;" vs "return (1);" +# mod_full_brace_if = add # "if (a) a--;" vs "if (a) { a--; }" +# mod_full_brace_for = add # "for () a--;" vs "for () { a--; }" +# mod_full_brace_do = add # "do a--; while ();" vs "do { a--; } while ();" +# mod_full_brace_while = add # "while (a) a--;" vs "while (a) { a--; }" + +sp_before_semi = remove +sp_paren_paren = remove # space between (( and )) +sp_return_paren = remove # "return (1);" vs "return(1);" +sp_sizeof_paren = remove # "sizeof (int)" vs "sizeof(int)" +sp_before_sparen = force # "if (" vs "if(" +sp_after_sparen = force # "if () {" vs "if (){" +sp_after_cast = remove # "(int) a" vs "(int)a" +sp_inside_braces = force # "{ 1 }" vs "{1}" +sp_inside_braces_struct = force # "{ 1 }" vs "{1}" +sp_inside_braces_enum = force # "{ 1 }" vs "{1}" +sp_inside_paren = remove # "( 1 )" vs "(1)" +sp_inside_fparen = remove # "( 1 )" vs "(1)" - functions +sp_inside_sparen = remove # "( 1 )" vs "(1)" - if/for/etc +# sp_type_func = ignore +sp_assign = force +sp_arith = force +sp_bool = force +sp_compare = force +sp_after_comma = force +sp_func_def_paren = remove # "int foo (){" vs "int foo(){" +sp_func_call_paren = remove # "foo (" vs "foo(" +sp_func_proto_paren = remove # "int foo ();" vs "int foo();" + +# align_with_tabs = FALSE # use tabs to align +# align_on_tabstop = FALSE # align on tabstops +# align_enum_equ_span = 4 +# align_nl_cont = TRUE +# align_var_def_span = 2 +# align_var_def_inline = TRUE +# align_var_def_star = TRUE +# align_var_def_colon = TRUE +# align_assign_span = 1 +# align_struct_init_span = 3 +# align_var_struct_span = 3 +# align_right_cmt_span = 3 +# align_pp_define_span = 3 +# align_pp_define_gap = 4 +# align_number_left = TRUE +# align_typedef_span = 5 +# align_typedef_gap = 3 + +# cmt_star_cont = TRUE + +eat_blanks_before_close_brace = TRUE +eat_blanks_after_open_brace = TRUE + +code_width = 0 # longest line length. +nl_after_func_body = 2 # One blank line after function body. +mod_sort_using = TRUE # sorts using statements + +# comment to see if that helps it pay attention to mod_sort_using. + + +## Cort additions for mavnet +indent_class_colon = False +nl_class_colon = remove + +nl_assign_leave_one_liners=false +nl_class_leave_one_liners=false +nl_enum_leave_one_liners=false +nl_getset_leave_one_liners=false +nl_func_leave_one_liners=false +nl_if_leave_one_liners=false +nl_collapse_empty_body=false +mod_full_brace_if=add \ No newline at end of file Added: trunk/Maverick.net/bin/UniversalIndenterGUI/CHANGELOG.txt =================================================================== --- trunk/Maverick.net/bin/UniversalIndenterGUI/CHANGELOG.txt (rev 0) +++ trunk/Maverick.net/bin/UniversalIndenterGUI/CHANGELOG.txt 2009-04-06 15:09:12 UTC (rev 284) @@ -0,0 +1,265 @@ +2009-02-12 Version 1.0.2 +[add] Feature Request ID 2498654 : Added support for the Fortran indenter F90ppr. http://universalindent.sf.net/issue/feature/2498654 +[add] Made it possible to define "stdin" to be used for an indenter calling. +[change] Made the source code be compilable with the slightly older QScintilla version 2.2. +[change] When starting the very first time without any existing application settings, do not show the mainwindow at position 0,0. On Mac the window couldn't be moved because the window title bar was hidden under the Mac menu bar. +[change] When using a non Windows system the default editor font type is now Monospace instead of Courier. The latter was not found properly. +[change] For security reason using a randomly generated temporary directory name on Unix based systems. +[change] Improved the GUI updates for the Notepad++ plugin a bit. Not what I would call "good" yet. +[fix] Bug ID 2284777 : The Notepad++ plugin was falsely linked against Qt debug dlls, which were not included. http://universalindent.sf.net/issue/bug/2284777 +[fix] Bug ID 2594251 : The new version available check didn't work anymore since version 1.0.1. http://universalindent.sf.net/issue/bug/2594251 +[fix] Avoid a crash if an uigui ini file with faulty header info is read, where the indenter executable was empty. +[fix] Some application settings were tried to be read from a wrong directory when running in multi user mode. + +2008-10-14 Version 1.0.1 +[add] Feature Request ID 2161471 : Added support for the Python indenter pindent. +[add] Feature Request ID 1883444 : Added support for the JSP indenter JSPPP. +[add] Feature Request ID 1867563 : Added support for the XML indenter XML Indent. +[add] Support for French language. Thanks to Erwan "leg". +[change] Some small translation corrections. +[change] Improved the "new version available" check. +[change] On Mac and Linux a one pixel frame was shown around the whole screen when about dialog is visible. Removed that. +[change] Updated to Uncrustify version 0.49 from SVN repository. +[change] Using a new logo icon for UniversalIndentGUI. The logo was created by Erwan "leg". Thanks! +[fix] Bug ID 2173527 : Could not load Artistic Style config file properly if both parameters "--brackets=linux" and "--brackets=break-closing" were set. http://universalindent.sf.net/issue/2173527 +[fix] The distributed version of GNU Indent was using a misspelled configuration file, thus lieve preview didn't correctly work. Using original GNU Win32 version now. +[fix] In version 1.0.0 the creation of batch files for indenters undet Windows always created a bash/shell script instead of batch. +[fix] Keyboard shortcuts for enabling/disabling "Live Preview" and syntax highlighting didn't work. + +2008-09-30 Version 1.0.0 non public release. Only presented for Qt Centre programming contest. +[add] Made it possible to start UiGUI in different modes via parameters: Normal (full UI), plugin (only indenter menu, server active), server only. +[add] Added a server functionality. Future plan is to let UiGUI run also as server so plugins from other editors can send indent requests over TCP/IP to it. Very early state right now. +[add] Created a plugin for Notepad++. This plugin shows the indenter parameter menu and lets the user indent the selected or whole text. Live preview works also. Still has some eventloop graphic update problems. +[add] Added support for two (rather simple) Ruby beautifiers, ruby_formatter and rbeautify. +[add] Feature Request ID 1985475 : Added the possibility to reset all indenter parameters to default values. http://universalindent.sf.net/issue/1985475 +[add] Feature Request ID 1989585 : Added a context menu in indenter parameters widget and moved all functions handling these actions from the main window to the indent handler. http://universalindent.sf.net/issue/1989585 +[add] Feature Request ID 1977033 : Now supporting the Cobol intender Cobol Beautifier. http://universalindent.sf.net/issue/1977033 +[add] Feature Request ID 2080832 : Now showing the cursors current line and column number in the statusbars down right corner. http://universalindent.sf.net/issue/2080832 +[change] Using Qt >= 4.4.x now and thereby implemented an animated 3D about dialog. +[change] Using QScintilla >= 2.3 now and thereby added support for Cmake, Fortran[77], Pascal, PostScript, TCL, VHDL, XML and YAML. +[change] Reformatted the about dialog to only contain one QTextEdit. Also added some more links to that text. +[change] Limited the size of the combobox showing the indenters because with the supported programming languages in the name, the comobox was to large in width. +[change] Prevent php file from being tried to be executed directly. That could happen if the file has the execution flag set. However that should never be the case, so this is a workaround. +[change] Added a new class UiguiIniFileParser which will replace the currently used QSettings for reading the indenter parameters. Thus parameters appear in the menu in the same order as in the ini file and are no longer alphabetically sorted. +[change] Redesigned the user interface and code a bit. The indenter selection combo box along with the manual button are now placed in docking widget where all indenter parameters are placed. This is done in preparation to pull out the complete indent handler, so it can be used as plugin for Notepad++ or Eclipse etc.] +[change] Made reading the indenter config files more tolerant. If the user disobeys case sensitivity when editing the config file by hand, the values are correctly parsed anyway. +[change] Feature Request ID 1989587 : There is no longer any need to have a current value setting in the ini files. A default value is enough. http://universalindent.sf.net/issue/1989587 +[change] Completely removed QT3Support functions. +[change] Removed all compiler warnings. +[change] Changed the way internal settings are handled. Using QObject propertys for connected setting name now. +[fix] The by each indenter supported programming languages, written in braces, are removed from the created shell scripts name. +[fix] Corrected the move/mv commands parameter in the created shell and batch script when calling recursive. +[fix] Bug ID 1986471 : The file modification flag did not work properly. Reason was that QScintilla can not set its textedit component modified flag to true by a function call. http://universalindent.sf.net/issue/1986471 + +2008-05-26 Version 0.8.2 +[add] Feature Request ID 1971206 : Now showing by the indenter supported programming languages next to indenter name. +[add] Feature Request ID 1971181 : Added support for the HTML indenter HTB. +[add] Feature Request ID 1867562 : Added support for the HTML indenter hindent. +[add] Added support for the php indenter phpStylist version 1.0. +[add] Added the possibility to directly setting php files as indenter. The suffix .php is recognized and php used as default interpreter. +[add] Extended the created batch/shell script so it is able to indent only one file given as parameter or a whole directory recursively with a defined file suffix. +[add] Feature Request ID 1885911 : Added the possibility to open a file on applications start, that is handed over as parameter on the command line. +[add] Feature Request ID 1729429 : Added the possibility to drag'n drop in any source code file for opening it. +[change] Created indenter shell scripts now automatically have the executable flag set to true. +[change] Completed the support for all perl tidy parameters. +[change] Updated to uncrustify version 0.46. +[fix] Bug ID 1933074 : On Unix systems the user config files were stored in his home dir in the subfolder ".config". Now they are directly stored in ".universalindentgui". +[fix] Fixed a bug where the string "<html><body>" was prepended to the output code. Occurred for example when using the shell indenter. + +2008-03-27 Version 0.8.1 +[add] Feature Request ID 1909450 : Added support for the PEAR PHP beautifier. Thus PHP beautifying is also possible on Linux and Mac OS X. (Needs the PEAR package "PHP_Beautifier" to be installed and a path entry pointing to the PHP dir.) +[add] Added support and translations for Russian and Ukrainian language. Thanks to Oleksandr (http://korytskyy.lviv.ua). +[add] Feature Request ID 1901935 : From now on files are saved with the same encoding as they were opened and no longer always UTF-8. Also it is possible to save the file with any other encoding. +[change] The detection whether to run in portable mode now depends on where the "config" folder resides and no longer the "indenters" folder. This is needed to be able to correctly run on Windows multiuser systems. +[change] Removed the word "beta" whereever it occurred, since UiGUI isn't that beta anymore. +[fix] Bug ID 1910773 : On Unix systems the globally available files, like indenters, translations etc are not longer installed to /etc/universalindentgui but to /usr/share/universalindentgui. + +2008-01-17 Version 0.8.0 Beta +[add] Feature Request ID 1849297 : Added support for indenters written in JavaScript using an internal interpreter. Have a look into the README.txt to get to know, what steps are needed for that. +[add] Added support for a simple JavaScript indenter written in JavaScript itself. +[add] Added support for a simple shell code indenter written in awk. +[add] Feature Request ID 1736946 : It is now possible to run any indenter that is available in the global environment via a path entry. +[add] Feature Request ID 1852483 : Indenters written in script languages, like perl, are now also supported, if they have a correct shebang. +[add] Added support for the well known perltidy. The uigui ini file is completed up to the category and including "Line Break Control". Rest needs to be done. +[add] Feature Request ID 1866599 : Adapted the used paths for settings, temporary files and the one containing indenter ini files to be conform with systems that use strict user rights management. Most this concerns Linux, where the binary resides inside a bin dir and user specific settings are stored in his home dir. Short: now supporting multiuser systems and also have a portable mode, where modifications are only on local media. +[add] Feature Request ID 1730360 : Along with real support for multiuser systems, each user can have his own indenter settings. These won't be overwritten by an update, what was the case before. +[add] Feature Request ID 1867628 : Added a button to the toolbar near the indenter selection that opens the indenters online manual. +[add] Feature Request ID 1867660 : Created a simple man page for unix based systems. +[add] The by the qmake projekt file resulting makefile has a directive for install on unix based systems now. +[add] Added example files for most supported programming languages, so each indenter can be tested. +[change] The source code archive is now in a Unix conform format and naming convention. +[change] The used paths have changed. The "data" directory has been renamed to indenters and includes only the uigui ini files and maybe some indenter binaries. Futher a config and a temp directory are used. +[change] In case of an error during calling the indenter, its standard output is appended to the error dialog. +[change] Corrected some misspelling. +[change] Renamed htmltidy to tidy because that is its official name and also the name of the binary in all Linux packages. +[fix] Bug ID 1855460 : The parameter settings of the indenter were only saved, if preview is turned on. Now the settings are always remembered. +[fix] Bug ID 1854156 : The syntax highlighter did not switch to perl if a file with suffix .pl or .pm was loaded. + +2007-11-22 Version 0.7.1 Beta +[add] Feature Request ID 1833814 : Added support for building on MacOSX. +[change] Feature Request ID 1836486 : Update to latest version of Uncrustify. +[change] Update to latest version of Artistic Styler. + +2007-11-11 Version 0.7.0 Beta +[add] Feature Request ID 1826733 : If the called indenter returns an error message, you can chose to not show the same error again. Helpful for HTMLtidy since it often shows a long, repeating error list. +[add] Feature Request ID 1805974 : Added an option to clear the list of recently opened files. +[add] Feature Request ID 1760997 : Added some code lines to example.cpp to test whether an indenter correctly handles preprocessor defines. +[add] Feature Request ID 1752551 : If the user manually checks for updates a progress/busy dialog will be shown. +[add] Feature Request ID 1736932 : The user gets shown a dialog if he has manually checked for an update and no new one is available. +[change] The update check is now enabled by default. +[change] Slighty changes made to the settings dialog; put texts in front of the changed value. +[fix] Bug ID 1807179 : GNU Indent didn't work properly on Windows system, after the dlls libiconv-2.dll and libintl-2.dll were removed. Readded them. +[fix] Bug ID 1805976 : The HTML export didn't produce any output. Fixed that, but still has not syntax formatting. +[fix] Bug ID 1815023 : Mixed traditional with simplified chinese translation. Now preferring to use english text instead of mixing if no traditional translation is available. +[fix] Bug ID 1815120 : The font of the editor component was wrong (not monospaced), if syntax highlighting was turned off. + +2007-06-13 Version 0.6.1 Beta +[add] Feature Request ID 1729433 : Added a recently opened file menu. +[add] Feature Request ID 1704290 : Added possibiltiy to integrate into an IDE, editor or other as external tool. This is donw by creating a batch/shell script which accepts a file as parameter and calls the indenter with the in UniversalIndentGUI made settings. +[add] Feature Request ID 1673659 : The string parameter in the uigui ini files for each indenter can now also be a list of strings divided by "|" sign. As result the parameter name with value will be written to the indenter config file for each of the values. +[add] Feature Request ID 1730180 : UniversalIndentGUI can automatically check on start, whether a new version is available. This setting is disabled by default and can be enabled in the settings. +[add] Added support for HTML Tidy. The executable is contained in the release package. +[add] Feature Request ID 1736432 : The width of the dock widget containing the indenter parameters is now restored on program start. +[change] The about dialog shows now a credits scroller to say thanks to all people, who have helped me somehow. +[fix] Bug ID 1733499 : UniversalIndentGui crashed if inside of an indenter ini file the category number of one parameter was higher than the available categories. +[fix] Bug ID 1735586 : Some dialogs had untranslated buttons. For example yes, no, cancel were not translated. + +2007-06-03 Version 0.6.0 Beta +[add] Feature Request ID 1700557 : Added a settings dialog for handling more possible settings with better usabiltiy. +[add] Feature Request ID 1700556 : Added option to load last file or not on startup. +[add] Feature Request ID 1684011 : Added option to set the width used to display tabs (default is four spaces). +[add] Feature Request ID 1651718 : Added multiple choices, for the indenter configuration, with for the user readable text. Before the text inside of the combo boxes for the indenter parameters was exactly the same text as the command line parameter of the indenter. Now with "ChoicesReadable" a list with the same length as "Choices" can be used to insert readable text into the combo box. If this list is not set, the content of "Choices" will be used. +[add] Partly Japanese translation. Thanks to Nirvash. +[add] The language selection show the countries flag in front of its name to identify the language faster. +[add] Feature Request ID 1657253 : If now configuration ini file for any indenter can be found, a warning will be displayed. +[change] Feature Request ID 1723228 : The default font for all syntax highlighters is now mono spaced, Courier. +[change] Along with the settings dialog cleaned up the user interface. Moved some not that often needed settings away to the settings dialog. +[change] The full text of the GPL in the about dialog did slow down the program startup and translation. Now only a hint and link to the GPL is given in the about dialog. +[fix] Bug ID 1692511 : UniversalIndentGui crashed, if a by the syntax highlighter unsupported file extension was opened. +[fix] Bug ID 1727538 : The setting for syntax highlighting was allways enabled on startup, even if disabled on closing. +[fix] Bug ID 1729026 : The highlighting style was not correct when changed to another highlighter than the current. Only after toggling preview for example the style was correct. +[fix] The editors column showing the line numbers did not adapt its width to the maximum line number. + +2007-03-19 Version 0.5.1 Beta +[add] Supporting syntax highlightning for the programming language D. +[change] The live typing and indenting feature was not adapted to QScintilla. Now works again (depending on the used indenter). +[fix] Bug ID 1678783 : Files other encoded than ascii were not displayed correctly. Now allways displaying files using UTF-8 encoding. +[fix] Bug ID 1678783 : The new syntax highlighter selection menu was not translated. +[fix] When file was reloaded with other encoding the file was allways set to be modified even if it wasn't. + +2007-03-14 Version 0.5.0 Beta +[add/change] Using QScintilla as editing component, which is by far more mighty than the before uses QTextEdit. Have a look inside the development area for details. +[add] Because of QScintilla, added syntax highlightning for bash, batch, cpp, csharp, css, diff, html, idl, java, javascript, lua, makefile, perl, pov, ini, python, ruby, sql and tex. +[add] Also added code folding for previously mentioned languages. +[add] Added support for the indenter "phpCB" phpCodeBeatufier. (Thanks to Nelson Tai) The executable is not included in the UiGui release, because I am not sure about the license of phpCB right now. +[add] The output of an indenter can now be read from stdout, by setting "stdout" for "outputFileParameter". +[add] Feature Request ID 1673549 : The order of the indenter call parameters for input file, output file and options[file] is now selectable in three states: pio, ipo, iop. +[add] Feature Request ID 1675503 : The last set encoding is being remembered and used on loading last file. +[add] Feature Request ID 1669822 : The last window position, size and maximized state is stored in the settings and restored. +[add] Feature Request ID 1673670 : Made it possible to switch between visible and invisible white space characters, like spaces and tabs. +[change] The "personal" configuration files of each indenter (like gc.cfg) are no longer included in a release, so these settings can be loaded into UiGui after updating. +[fix] Bug ID 1678783: If the current opened file had no save name yet, only the path was written to the settings file, causing an error on next start. + +2007-02-25 Version 0.4.2 Beta +[add] Support for the indenter CSSTidy has been added. +[add] Support for new language: Taiwan (Chinese). +[change] For easier translation the about dialog has been redesigned a bit. +2007-02-11 Version 0.4.1 Beta +[add] Support for the indenter Uncrustify has been added. +[add] Feature Request ID 1651719: A binary release for Linux AMD64 is now available. +[add] Feature Request ID 1657251: If only a win32 executable exists under Linux, wine will be used to call it. Now a test will be mad if wine is installed and an error message will show up if not installed. +[change] Some changes mad to the Artistic Styler ini file as suggested by its author Jim Pattee. +[change] Put the file open button at first position in the toolbar, because normally this is the first step one would do, if he tries to find the optimal indenter and settings for himself. +[change] The background in the about dialog has been changed to look equal on all systems. +[change] The error message dialogs had small optical enhancements to be more readable. +[fix] Bug ID 1657255: If an error occurred during the try to call the indenter, a message box is being shown, but the mouse cursor still indicated that the application is being busy. +[fix] Bug ID 1651071: Changing the file encoding did not affect the code sent to the indenter, so the code while preview turned on, had wrong encoding (still seems to have some encoding problems under Linux). +[fix] Bug ID 1650222: On Windows systems there were two DLLs missing to run GNU Indent ("libiconv-2.dll" and "libintl-2.dll") +[fix] Bug ID 1649918: The indenter was not called after first program start, so preview updated first after changing a setting or the code. + +2007-02-01 Version 0.4 Beta +[add] All parameters of GNU Indent have been added. +[add] From now on the indenter BCPP is included. +[add] The loaded source file encoding is now convertable by the menu entry "Reopen File with other Encoding". This way chinese encoding etc. is possible to load. (Suggest for this submitted by Nelson, Bug ID 1643541) +[add] A subdirectory "doc" has been added, containing the file "iniFileFormat.html" with info how to write ini files for new indenters. +[change] Updated the astyle executable and the ini file to version 1.20.1 +[change] Restructured the gui design a little bit. Using a moveable dock widget for the indenter settings now. Using a toolbar that can also be placed at the bottom. +[change] Made it possible to change the language without the need to restart the application. +[change] Line numbers are now geyed out, because this is more decent and selecting the numbers is no longer possible. +[change] The link to the homepage in the about dialog now really opens the website. +[change] The linux version is now statically linked against Qt so there should be no problems with wrong Qt versions installed or even no Qt libraries installed. +[fix] Bug ID 1553601: If no uigui ini file was found the application stopped with an exception. + +2006-09-04 Version 0.3.1 Beta +[add] Language selector and german translation added. + +2006-08-25 Version 0.3 Beta +[add] A message box will show up at opening a source file or program exit, if the source code has been changed, and ask whether to save the file or not. +[add] The symbol "*" will be shown in the window title in front of the source file name if the source code has been changed. +[add] By a settings menu entry the tool tips for the indenter parameter settings can be en/disabled because they can be annoying. +[add] A settings file is from now on used to remember the last selected indenter and last opened source code file. +[add] The source code can now be exported as a PDF or HTML document. +[add] Some commands are now faster available by keyboard shortcuts. +[fix] The calling name in the indenter ini file for GreatCode was written lower case while the real file name was upper case, which resulted in a program calling error. +[fix] Corrected the tab order for the gui elements. +[change] Optimized speed when switching between the available indenters. If the indenters ini file is large, this still takes some time. + +2006-08-11 Version 0.2.5 Alpha +[add] when loading or saving either a source code or config file the load/save dialog will open in the files directory and not allways in the UniversalIndentGUI dir +[add] currently made settings for the indenter can be saved to any file +[add] the menue entries for loading and saving the indenter config file have now icons +[add] the currently opened source code file name and path will be shown in the window title bar +[add] a error dialog that will be shown once if the indenter executable for the selected indenter does not exist +[fix] turning syntax highlight on/off did first take effect after toggle of preview +[fix] the image in the about dialog box was not allways visible + +2006-08-03 Version 0.2.4 Alpha +[change] the windows version does no longer need any dlls due to static linking and removing bind to mingwm10.dll +[change] the windows version of the GNU Indent is replaced by a DJGPP compiled GNU Indent version, that needs no further DLLs +[add] possibility to save the shown/indented source code +[fix] the file extension used to call the selected indenter. It is now equal to the loaded source file extension so the indenter recognizes the source code language +[fix] unnecessary calls of the indenter removed +[fix] indenter was not called if preview was activated and indenter changed +[fix] under linux the file mask for the open source file dialog did not work correctly + +2006-07-16 Version 0.2.3 Alpha +[add] possibility to edit the source code while preview is active and see how it is formatted. So that is real live ;-) + +2006-07-14 Version 0.2.2 Alpha +[add] ini file for GNU Indent with some first settings (if any one wants to write more in it let me know) +[add] a menu bar for more pleasent and common use of the program (some not yet used menu items are disabled) +[add] an about dialog +[add] some icons for better look and feel (can you feel it ;-) ) +[fix] a bug under linux which caused an endless loop if text was edited + +2006-07-07 Version 0.2.1.1 Alpha (win32 only) +- previously compiled using Visual Studio 2005 Express, whereby an additional installation of a redistributable package was needed to run UniversalIndentGUI. To avoid this and not force the user to install anything, now using mingw to compile. + +2006-07-04 Version 0.2.1 Alpha +[add] function to load config file (not the uigui ini file) of every indenter (and reenabled load config file button) +[add] use of a default value when loading a indenter config file and not all parameters are set. +[add] all documented default parameters of GreatCode and Astyle to their ini files. +[fix] loading of file mask for source code file after changing indenter +[fix] call of indenter failed under win32 if a linux binary exists. + +2006-06-30 Version 0.2.0 Alpha +[add] missing parameters for flexible indenter ini file format +[add] complete Astyle ini file +[add] multiple choice combobox for parameters +[add] checkbox in front of numeric and string parameters to enable/disable them. If disabled indenters default value is used + +2006-06-28 +[add] working ini file for Astyle (right now only few boolean parameters) +[change] ini file format for booleans to reach the planned flexibility + +2006-06-23 +[add] combobox in the upper left showing available indenters (found by searching for uigui_*.ini file). at the moment only GreatCode and testwise Astyle +[add] more detailed info if the indenter call results in an error +[add] icon for executable +[change] style/format of the ini file. Still not all planned features implemented +- some bugfixes, as you can say this in a preAlpha + +2006-06-07 +[change] unnecessary gui menu removed +[fix] corrected ini file for great code (only in executable release) +[add] made call of windows version of GreatCode under Linux possible by using wine Added: trunk/Maverick.net/bin/UniversalIndenterGUI/INSTALL.txt =================================================================== --- trunk/Maverick.net/bin/UniversalIndenterGUI/INSTALL.txt (rev 0) +++ trunk/Maverick.net/bin/UniversalIndenterGUI/INSTALL.txt 2009-04-06 15:09:12 UTC (rev 284) @@ -0,0 +1,12 @@ +How to install UniversalIndentGUI +--------------------------------- + +Well, there is no need to install this application at all. While you are reading this file, +you obviously already have unpacked the archive and thats all you need to do. You can start +the program by calling its executable. On Windows thats "UniversalIndentGUI.exe" and on any +other system it is "UniversalIndentGUI". + +No additional libraries are needed. + +For information about how to build UniversalIndentGUI from source, have a look into the +file readme.html. \ No newline at end of file Added: trunk/Maverick.net/bin/UniversalIndenterGUI/LICENSE.GPL =================================================================== --- trunk/Maverick.net/bin/UniversalIndenterGUI/LICENSE.GPL (rev 0) +++ trunk/Maverick.net/bin/UniversalIndenterGUI/LICENSE.GPL 2009-04-06 15:09:12 UTC (rev 284) @@ -0,0 +1,347 @@ + You may use, distribute and copy the UniversalIndentGUI under the terms of + GNU General Public License version 2, which is displayed below. + +------------------------------------------------------------------------- + + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + <signature of Ty Coon>, 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. + +------------------------------------------------------------------------- Added: trunk/Maverick.net/bin/UniversalIndenterGUI/UniversalIndentGUI.exe =================================================================== (Binary files differ) Property changes on: trunk/Maverick.net/bin/UniversalIndenterGUI/UniversalIndentGUI.exe ____________________________________________________... [truncated message content] |
From: <co...@us...> - 2009-04-06 15:00:23
|
Revision: 283 http://mavnet.svn.sourceforge.net/mavnet/?rev=283&view=rev Author: corts Date: 2009-04-06 15:00:14 +0000 (Mon, 06 Apr 2009) Log Message: ----------- convert UNIX line endings to windows line endings update source style to match my personal style (somewhat like K&R/java) Modified Paths: -------------- trunk/Maverick.net/Maverick.build trunk/Maverick.net/docs/xdocs/stylesheet.css trunk/Maverick.net/examples/Calendar/App_Code/AssemblyInfo.cs trunk/Maverick.net/examples/Calendar/App_Code/Global.asax.cs trunk/Maverick.net/examples/Calendar/Calendar.aspx trunk/Maverick.net/examples/Calendar/Calendar.aspx.cs trunk/Maverick.net/examples/Calendar/Default.aspx trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx.cs trunk/Maverick.net/examples/Friendbook/AssemblyInfo.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ChangePassword.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ChangePasswordSubmit.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerAuth.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerErrorable.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerProtected.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Edit.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/EditSubmit.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Friends.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Logout.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/SignupSubmit.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Data/Address.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Data/Friend.cs trunk/Maverick.net/examples/Friendbook/Friendbook/Data/FriendBook.cs trunk/Maverick.net/examples/Friendbook-aspx/App_Code/AssemblyInfo.cs trunk/Maverick.net/examples/Friendbook-aspx/App_Code/Global.asax.cs trunk/Maverick.net/examples/Friendbook-aspx/changePassword.aspx trunk/Maverick.net/examples/Friendbook-aspx/default.aspx trunk/Maverick.net/examples/Friendbook-aspx/edit.aspx trunk/Maverick.net/examples/Friendbook-aspx/friends.aspx trunk/Maverick.net/examples/Friendbook-aspx/loginFailed.aspx trunk/Maverick.net/examples/Friendbook-aspx/loginForm.aspx trunk/Maverick.net/examples/Friendbook-aspx/loginRequired.aspx trunk/Maverick.net/examples/Friendbook-aspx/signup.aspx trunk/Maverick.net/examples/Friendbook-aspx/stylesheet.css trunk/Maverick.net/examples/Friendbook-aspx/trimInside.aspx trunk/Maverick.net/examples/Friendbook-aspx/trimOutside.aspx trunk/Maverick.net/examples/Friendbook-aspx/welcome.aspx trunk/Maverick.net/examples/Friendbook-xsl/App_Code/AssemblyInfo.cs trunk/Maverick.net/examples/Friendbook-xsl/App_Code/Global.asax.cs trunk/Maverick.net/src/Maverick/AssemblyInfo.cs trunk/Maverick.net/src/Maverick/Ctl/Aspx/AspxController.cs trunk/Maverick.net/src/Maverick/Ctl/Aspx/ControllablePage.cs trunk/Maverick.net/src/Maverick/Ctl/Aspx/IControllablePage.cs trunk/Maverick.net/src/Maverick/Ctl/FormUser.cs trunk/Maverick.net/src/Maverick/Ctl/Throwaway.cs trunk/Maverick.net/src/Maverick/Ctl/ThrowawayForm.cs trunk/Maverick.net/src/Maverick/Ctl/ThrowawayFormUser.cs trunk/Maverick.net/src/Maverick/Dispatcher.cs trunk/Maverick.net/src/Maverick/Flow/CommandBase.cs trunk/Maverick.net/src/Maverick/Flow/CommandFactory.cs trunk/Maverick.net/src/Maverick/Flow/CommandMultipleViews.cs trunk/Maverick.net/src/Maverick/Flow/CommandSingleView.cs trunk/Maverick.net/src/Maverick/Flow/ConfigException.cs trunk/Maverick.net/src/Maverick/Flow/ControllerFactory.cs trunk/Maverick.net/src/Maverick/Flow/ControllerWithParams.cs trunk/Maverick.net/src/Maverick/Flow/ICommand.cs trunk/Maverick.net/src/Maverick/Flow/IController.cs trunk/Maverick.net/src/Maverick/Flow/IControllerContext.cs trunk/Maverick.net/src/Maverick/Flow/IControllerSingleton.cs trunk/Maverick.net/src/Maverick/Flow/IModelLifetime.cs trunk/Maverick.net/src/Maverick/Flow/IShunt.cs trunk/Maverick.net/src/Maverick/Flow/IShuntFactory.cs trunk/Maverick.net/src/Maverick/Flow/ITransform.cs trunk/Maverick.net/src/Maverick/Flow/ITransformContext.cs trunk/Maverick.net/src/Maverick/Flow/ITransformFactory.cs trunk/Maverick.net/src/Maverick/Flow/ITransformStep.cs trunk/Maverick.net/src/Maverick/Flow/IView.cs trunk/Maverick.net/src/Maverick/Flow/IViewContext.cs trunk/Maverick.net/src/Maverick/Flow/IViewFactory.cs trunk/Maverick.net/src/Maverick/Flow/LastStep.cs trunk/Maverick.net/src/Maverick/Flow/Loader.cs trunk/Maverick.net/src/Maverick/Flow/MasterFactory.cs trunk/Maverick.net/src/Maverick/Flow/MaverickContext.cs trunk/Maverick.net/src/Maverick/Flow/NoSuitableModeException.cs trunk/Maverick.net/src/Maverick/Flow/ThrowawayControllerAdaptor.cs trunk/Maverick.net/src/Maverick/Flow/TransformWithParams.cs trunk/Maverick.net/src/Maverick/Flow/ViewRegistry.cs trunk/Maverick.net/src/Maverick/Flow/ViewRegistryShunted.cs trunk/Maverick.net/src/Maverick/Flow/ViewRegistrySimple.cs trunk/Maverick.net/src/Maverick/Flow/ViewShunted.cs trunk/Maverick.net/src/Maverick/Flow/ViewWithParams.cs trunk/Maverick.net/src/Maverick/Flow/ViewWithTransforms.cs trunk/Maverick.net/src/Maverick/Shunt/LanguageShuntFactory.cs trunk/Maverick.net/src/Maverick/Transform/DocumentTransform.cs trunk/Maverick.net/src/Maverick/Transform/DocumentTransformFactory.cs trunk/Maverick.net/src/Maverick/Transform/XsltTransform.cs trunk/Maverick.net/src/Maverick/Transform/XsltTransformFactory.cs trunk/Maverick.net/src/Maverick/Util/PropertyPopulator.cs trunk/Maverick.net/src/Maverick/Util/XML.cs trunk/Maverick.net/src/Maverick/View/DispatchedViewFactory.cs trunk/Maverick.net/src/Maverick/View/DocumentView.cs trunk/Maverick.net/src/Maverick/View/DocumentViewFactory.cs trunk/Maverick.net/src/Maverick/View/ForwardView.cs trunk/Maverick.net/src/Maverick/View/ForwardViewFactory.cs trunk/Maverick.net/src/Maverick/View/NullViewFactory.cs trunk/Maverick.net/src/Maverick/View/RedirectView.cs trunk/Maverick.net/src/Maverick/View/RedirectViewFactory.cs trunk/Maverick.net/src/Maverick/View/TrivialViewFactory.cs trunk/Maverick.net/src/Maverick/View/XmlSerializingView.cs trunk/Maverick.net/src/Maverick/View/XmlSerializingViewFactory.cs trunk/Maverick.net/tests/src/Maverick/Util.Test/MockTest.cs trunk/Maverick.net/tests/src/Maverick/Util.Test/PropertyPopulatorTest.cs Modified: trunk/Maverick.net/Maverick.build =================================================================== (Binary files differ) Modified: trunk/Maverick.net/docs/xdocs/stylesheet.css =================================================================== --- trunk/Maverick.net/docs/xdocs/stylesheet.css 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/docs/xdocs/stylesheet.css 2009-04-06 15:00:14 UTC (rev 283) @@ -1,94 +1,94 @@ -/* - Color Notes: - - The standard set of color names is: - - aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, - purple, red, silver, teal, white and yellow. - - These 16 olors are defined in HTML 3.2 and 4.01. -*/ - -/* Default page appearance */ -body -{ - background-color: white; - color: black; - font-family: Arial, Sans-Serif; -} - -/* Header definitions */ -h1 { - font-family: Utopia; - font-size: 1.75em; - color: blue; - background-color: white; -} -h2 { - font-family: Utopia; - font-size: 1.35em; - color: navy; -} -h3 { - font-family: Helvetica; - font-size: 1.1em; - color: navy; -} -h4 { - font-family: Helvetica; - font-size: 1.1em; - color: navy; -} -h5 { - font-family: Helvetica; - font-size: 1.1em; - color: navy; -} -h6 { - font-family: Helvetica; - font-size: 1.1em; - color: navy; -} - -/* Paragraph and pre-formatted text appearance */ -pre { /* Pre-formatted output resets all default values to zero. */ - font-family: monospace; - text-indent: 0; - margin-top: 0; - margin-bottom: 0; -} - -p.INDENT { /* It will insert an indented paragraph. You should start */ - /* this with a <p class="indent"> container. */ - text-indent: 2em; -} - -/* Table stuff */ -table { - background-color: white; - border-width: 2; - border-color: black; -} -th { - font-family: sans-serif; - color: white; - background-color: gray; -} -td { - font-family: sans-serif; - background-color: white; -} - -/* Link colors. */ -a:link { /* Unvisited links */ - color: navy; -} -a:visited { /* Visited links */ - color: gray; -} -a:active { /* Clicked links */ - color: olive; -} -a:hover { /* Mouse over link */ - color: green; -} +/* + Color Notes: + + The standard set of color names is: + + aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, + purple, red, silver, teal, white and yellow. + + These 16 olors are defined in HTML 3.2 and 4.01. +*/ + +/* Default page appearance */ +body +{ + background-color: white; + color: black; + font-family: Arial, Sans-Serif; +} + +/* Header definitions */ +h1 { + font-family: Utopia; + font-size: 1.75em; + color: blue; + background-color: white; +} +h2 { + font-family: Utopia; + font-size: 1.35em; + color: navy; +} +h3 { + font-family: Helvetica; + font-size: 1.1em; + color: navy; +} +h4 { + font-family: Helvetica; + font-size: 1.1em; + color: navy; +} +h5 { + font-family: Helvetica; + font-size: 1.1em; + color: navy; +} +h6 { + font-family: Helvetica; + font-size: 1.1em; + color: navy; +} + +/* Paragraph and pre-formatted text appearance */ +pre { /* Pre-formatted output resets all default values to zero. */ + font-family: monospace; + text-indent: 0; + margin-top: 0; + margin-bottom: 0; +} + +p.INDENT { /* It will insert an indented paragraph. You should start */ + /* this with a <p class="indent"> container. */ + text-indent: 2em; +} + +/* Table stuff */ +table { + background-color: white; + border-width: 2; + border-color: black; +} +th { + font-family: sans-serif; + color: white; + background-color: gray; +} +td { + font-family: sans-serif; + background-color: white; +} + +/* Link colors. */ +a:link { /* Unvisited links */ + color: navy; +} +a:visited { /* Visited links */ + color: gray; +} +a:active { /* Clicked links */ + color: olive; +} +a:hover { /* Mouse over link */ + color: green; +} Modified: trunk/Maverick.net/examples/Calendar/App_Code/AssemblyInfo.cs =================================================================== --- trunk/Maverick.net/examples/Calendar/App_Code/AssemblyInfo.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Calendar/App_Code/AssemblyInfo.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -3,7 +3,7 @@ // -// General Information about an assembly is controlled through the following +// General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. // @@ -14,36 +14,36 @@ [assembly: AssemblyProduct("")] [assembly: AssemblyCopyright("")] [assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] +[assembly: AssemblyCulture("")] // // Version information for an assembly consists of the following four values: // // Major Version -// Minor Version +// Minor Version // Build Number // Revision // -// You can specify all the values or you can default the Revision and Build Numbers +// You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: [assembly: AssemblyVersion("1.0.*")] // -// In order to sign your assembly you must specify a key to use. Refer to the +// In order to sign your assembly you must specify a key to use. Refer to the // Microsoft .NET Framework documentation for more information on assembly signing. // -// Use the attributes below to control which key is used for signing. +// Use the attributes below to control which key is used for signing. // -// Notes: +// Notes: // (*) If no key is specified, the assembly is not signed. // (*) KeyName refers to a key that has been installed in the Crypto Service // Provider (CSP) on your machine. KeyFile refers to a file which contains // a key. -// (*) If the KeyFile and the KeyName values are both specified, the +// (*) If the KeyFile and the KeyName values are both specified, the // following processing occurs: // (1) If the KeyName can be found in the CSP, that key is used. -// (2) If the KeyName does not exist and the KeyFile does exist, the key +// (2) If the KeyName does not exist and the KeyFile does exist, the key // in the KeyFile is installed into the CSP and used. // (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility. // When specifying the KeyFile, the location of the KeyFile should be @@ -51,7 +51,7 @@ // directory is dependent on whether you are working with a local or web project. // For local projects, the project output directory is defined as // <Project Directory>\obj\<Configuration>. For example, if your KeyFile is -// located in the project directory, you would specify the AssemblyKeyFile +// located in the project directory, you would specify the AssemblyKeyFile // attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")] // For web projects, the project output directory is defined as // %HOMEPATH%\VSWebCache\<Machine Name>\<Project Directory>\obj\<Configuration>. @@ -63,4 +63,4 @@ [assembly: AssemblyKeyName("")] // configure logging from the file specified by System.Configuration.ConfigurationSettings for the AppDomain, and watch for changes -[assembly: log4net.Config.DOMConfigurator(Watch=true)] +[assembly: log4net.Config.XmlConfigurator(Watch = true)] Modified: trunk/Maverick.net/examples/Calendar/App_Code/Global.asax.cs =================================================================== --- trunk/Maverick.net/examples/Calendar/App_Code/Global.asax.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Calendar/App_Code/Global.asax.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,70 +1,51 @@ -using System; using System.Collections; using System.ComponentModel; -using System.Web; using System.Web.SessionState; +using System.Web; +using System; -namespace Sandbox -{ - /// <summary> - /// Summary description for Global. - /// </summary> - public class Global : System.Web.HttpApplication - { - public Global() - { - InitializeComponent(); - } - - protected void Application_Start(Object sender, EventArgs e) - { +namespace Sandbox { + /// <summary> + /// Summary description for Global. + /// </summary> + public class Global : System.Web.HttpApplication { + public Global() { + InitializeComponent(); + } - } - - protected void Session_Start(Object sender, EventArgs e) - { + protected void Application_Start(Object sender, EventArgs e) { + } - } + protected void Session_Start(Object sender, EventArgs e) { + } - protected void Application_BeginRequest(Object sender, EventArgs e) - { + protected void Application_BeginRequest(Object sender, EventArgs e) { + } - } + protected void Application_EndRequest(Object sender, EventArgs e) { + } - protected void Application_EndRequest(Object sender, EventArgs e) - { + protected void Application_AuthenticateRequest(Object sender, EventArgs e) { + } - } + protected void Application_Error(Object sender, EventArgs e) { + } - protected void Application_AuthenticateRequest(Object sender, EventArgs e) - { + protected void Session_End(Object sender, EventArgs e) { + } - } + protected void Application_End(Object sender, EventArgs e) { + } - protected void Application_Error(Object sender, EventArgs e) - { - - } - - protected void Session_End(Object sender, EventArgs e) - { - - } - - protected void Application_End(Object sender, EventArgs e) - { - - } - - #region Web Form Designer generated code - /// <summary> - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// </summary> - private void InitializeComponent() - { - } - #endregion + #region Web Form Designer generated code + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() { } + + #endregion + } } Modified: trunk/Maverick.net/examples/Calendar/Calendar.aspx =================================================================== --- trunk/Maverick.net/examples/Calendar/Calendar.aspx 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Calendar/Calendar.aspx 2009-04-06 15:00:14 UTC (rev 283) @@ -1,4 +1,4 @@ -<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Calendar.aspx.cs" Inherits="Calendar" %> +<%@ Page Language="C#" CodeFile="Calendar.aspx.cs" Inherits="Sandbox.Calendar" %> <div align="center"> <table height="345" cellspacing="0" cellpadding="0" width="537" border="0" ms_2d_layout="TRUE"> Modified: trunk/Maverick.net/examples/Calendar/Calendar.aspx.cs =================================================================== --- trunk/Maverick.net/examples/Calendar/Calendar.aspx.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Calendar/Calendar.aspx.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,29 +1,25 @@ -using System; -using System.Collections.Generic; -using System.Web; -using System.Web.UI; -using System.Web.UI.WebControls; +using System; -public partial class Calendar : Maverick.Ctl.Aspx.ControllablePage { +namespace Sandbox { + public partial class Calendar : Maverick.Ctl.Aspx.ControllablePage { + protected string viewName = "success"; - protected string viewName = "success"; + protected void Page_Load(object sender, EventArgs e) { + } - protected void Page_Load(object sender, EventArgs e) { + public override string Go(Maverick.Flow.IControllerContext cctx) { + Context.Items["title"] = "calendar"; + return this.viewName; + } - } + protected void Calendar1_SelectionChanged(object sender, System.EventArgs e) { + if (this.Calendar1.SelectedDate.Month == 4) { + this.viewName = "april"; + } + } - public override string Go(Maverick.Flow.IControllerContext cctx) { - Context.Items["title"] = "calendar"; - return this.viewName; + protected void Button1_Click(object sender, System.EventArgs e) { + this.viewName = "button"; + } } - - protected void Calendar1_SelectionChanged(object sender, System.EventArgs e) { - if (this.Calendar1.SelectedDate.Month == 4) - this.viewName = "april"; - } - - protected void Button1_Click(object sender, System.EventArgs e) { - this.viewName = "button"; - } - } Modified: trunk/Maverick.net/examples/Calendar/Default.aspx =================================================================== (Binary files differ) Modified: trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx =================================================================== --- trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx 2009-04-06 15:00:14 UTC (rev 283) @@ -1,34 +1,46 @@ -<%@ Page language="c#" Inherits="Sandbox.Foo.Calendar" CodeFile="Calendar.aspx.cs" %> +<%@ Page Language="C#" CodeFile="Calendar.aspx.cs" Inherits="Sandbox.Foo.Calendar" %> + <div align="center"> - <TABLE height="345" cellSpacing="0" cellPadding="0" width="537" border="0" ms_2d_layout="TRUE"> - <TR vAlign="top"> - <TD width="537" height="345"> - <form id="Default" method="post" runat="server"> - <TABLE height="320" cellSpacing="0" cellPadding="0" width="431" border="0" ms_2d_layout="TRUE"> - <TR vAlign="top"> - <TD width="137" height="30"></TD> - <TD width="11"></TD> - <TD width="59"></TD> - <TD width="224"></TD> - </TR> - <TR vAlign="top"> - <TD height="37"></TD> - <TD colSpan="3"> - <asp:Label id="Label1" runat="server" Width="282px" Height="20px">Choose a Date in December or Click the Button</asp:Label></TD> - </TR> - <TR vAlign="top"> - <TD colSpan="2" height="211"></TD> - <TD colSpan="2"> - <asp:Calendar id="Calendar1" runat="server" onselectionchanged="Calendar1_SelectionChanged"></asp:Calendar></TD> - </TR> - <TR vAlign="top"> - <TD colSpan="3" height="42"></TD> - <TD> - <asp:Button id="Button1" runat="server" Text="Change View" Width="128px" Height="26px" onclick="Button1_Click"></asp:Button></TD> - </TR> - </TABLE> - </form> - </TD> - </TR> - </TABLE> + <table height="345" cellspacing="0" cellpadding="0" width="537" border="0" ms_2d_layout="TRUE"> + <tr valign="top"> + <td width="537" height="345"> + <form id="Default" method="post" runat="server"> + <table height="320" cellspacing="0" cellpadding="0" width="431" border="0" ms_2d_layout="TRUE"> + <tr valign="top"> + <td width="137" height="30"> + </td> + <td width="11"> + </td> + <td width="59"> + </td> + <td width="224"> + </td> + </tr> + <tr valign="top"> + <td height="37"> + </td> + <td colspan="3"> + <asp:label id="Label1" runat="server" width="282px" height="20px">Choose a Date in December or Click the Button</asp:label> + </td> + </tr> + <tr valign="top"> + <td colspan="2" height="211"> + </td> + <td colspan="2"> + <asp:calendar id="Calendar1" runat="server" onselectionchanged="Calendar1_SelectionChanged"></asp:calendar> + </td> + </tr> + <tr valign="top"> + <td colspan="3" height="42"> + </td> + <td> + <asp:button id="Button1" runat="server" text="Change View" width="128px" height="26px" + onclick="Button1_Click"></asp:button> + </td> + </tr> + </table> + </form> + </td> + </tr> + </table> </div> Modified: trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx.cs =================================================================== --- trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,64 +1,25 @@ using System; -using System.Collections; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Web; -using System.Web.SessionState; -using System.Web.UI; -using System.Web.UI.WebControls; -using System.Web.UI.HtmlControls; -namespace Sandbox.Foo -{ - /// <summary> - /// Summary description for Calendar. - /// </summary> - public partial class Calendar : Maverick.Ctl.Aspx.ControllablePage - { - - protected string viewName = "success"; +namespace Sandbox.Foo { + public partial class Calendar : Maverick.Ctl.Aspx.ControllablePage { + protected string viewName = "success"; - protected void Page_Load(object sender, System.EventArgs e) - { - // Put user code to initialize the page here - } + protected void Page_Load(object sender, EventArgs e) { + } - public override string Go(Maverick.Flow.IControllerContext cctx) - { - Context.Items["title"] = "calendar"; - return this.viewName; - } + public override string Go(Maverick.Flow.IControllerContext cctx) { + Context.Items["title"] = "calendar"; + return this.viewName; + } - #region Web Form Designer generated code - override protected void OnInit(EventArgs e) - { - // - // CODEGEN: This call is required by the ASP.NET Web Form Designer. - // - InitializeComponent(); - base.OnInit(e); - } - - /// <summary> - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// </summary> - private void InitializeComponent() - { + protected void Calendar1_SelectionChanged(object sender, System.EventArgs e) { + if (this.Calendar1.SelectedDate.Month == 12) { + this.viewName = "april"; + } + } - } - #endregion - - protected void Calendar1_SelectionChanged(object sender, System.EventArgs e) - { - if (this.Calendar1.SelectedDate.Month == 12) - this.viewName = "april"; - } - - protected void Button1_Click(object sender, System.EventArgs e) - { - this.viewName = "button"; - } + protected void Button1_Click(object sender, System.EventArgs e) { + this.viewName = "button"; } + } } Modified: trunk/Maverick.net/examples/Friendbook/AssemblyInfo.cs =================================================================== (Binary files differ) Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ChangePassword.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ChangePassword.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ChangePassword.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,33 +1,28 @@ -using System; -using Maverick.Flow; - -namespace Friendbook.Ctl -{ - /// <summary> - /// The initial controller for the change password form. - /// </summary> - public class ChangePassword : ControllerProtected - { - protected string oldPassword = ""; - protected string newPassword = ""; - protected string newPasswordAgain = ""; - - public virtual string OldPassword - { - get { return this.oldPassword; } - set { this.oldPassword = value; } - } - - public string NewPassword - { - get { return this.newPassword; } - set { this.newPassword = value; } - } - - public string NewPasswordAgain - { - get { return this.newPasswordAgain; } - set { this.newPasswordAgain = value; } - } - } -} +using Maverick.Flow; +using System; + +namespace Friendbook.Ctl { + /// <summary> + /// The initial controller for the change password form. + /// </summary> + public class ChangePassword : ControllerProtected { + protected string oldPassword = ""; + protected string newPassword = ""; + protected string newPasswordAgain = ""; + + public virtual string OldPassword { + get { return this.oldPassword; } + set { this.oldPassword = value; } + } + + public string NewPassword { + get { return this.newPassword; } + set { this.newPassword = value; } + } + + public string NewPasswordAgain { + get { return this.newPasswordAgain; } + set { this.newPasswordAgain = value; } + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ChangePasswordSubmit.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ChangePasswordSubmit.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ChangePasswordSubmit.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,51 +1,42 @@ -using System; - -using Friendbook.Data; - -namespace Friendbook.Ctl -{ - /// <summary> - /// The controller for the submission of the change password form. Since - /// the error case simply sends back to the changePassword view, we extend - /// the initial ChangePassword controller to accomodate its form values. - /// </summary> - public class ChangePasswordSubmit : ChangePassword - { - - protected override string SecurePerform() - { - // Validate the new password - if (this.newPassword.Length < 3) - { - this.AddError("newPassword", "Passwords must be at least 3 characters"); - this.newPassword = ""; - this.newPasswordAgain = ""; - } - else if (!this.newPassword.Equals(this.newPasswordAgain)) - { - this.AddError("newPassword", "Your passwords did not match"); - this.newPassword = ""; - this.newPasswordAgain = ""; - } - - // Validate the old password - FriendBook book = FriendBook.Instance; - Friend f = book.FindByLogin(this.CurrentLoginName); - - if (!f.Password.Equals(this.oldPassword)) - { - this.AddError("oldPassword", "The old password was incorrect"); - this.oldPassword = ""; - } - - // Execute if appropriate - if (this.HasErrors) - return ERROR; - else - { - f.Password = this.newPassword; - return SUCCESS; - } - } - } -} +using System; + +using Friendbook.Data; + +namespace Friendbook.Ctl { + /// <summary> + /// The controller for the submission of the change password form. Since + /// the error case simply sends back to the changePassword view, we extend + /// the initial ChangePassword controller to accomodate its form values. + /// </summary> + public class ChangePasswordSubmit : ChangePassword { + protected override string SecurePerform() { + // Validate the new password + if (this.newPassword.Length < 3) { + this.AddError("newPassword", "Passwords must be at least 3 characters"); + this.newPassword = ""; + this.newPasswordAgain = ""; + } else if (!this.newPassword.Equals(this.newPasswordAgain)) { + this.AddError("newPassword", "Your passwords did not match"); + this.newPassword = ""; + this.newPasswordAgain = ""; + } + + // Validate the old password + FriendBook book = FriendBook.Instance; + Friend f = book.FindByLogin(this.CurrentLoginName); + + if (!f.Password.Equals(this.oldPassword)) { + this.AddError("oldPassword", "The old password was incorrect"); + this.oldPassword = ""; + } + + // Execute if appropriate + if (this.HasErrors) { + return ERROR; + } else{ + f.Password = this.newPassword; + return SUCCESS; + } + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerAuth.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerAuth.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerAuth.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,61 +1,52 @@ -using System; -using System.Web; -using System.Web.SessionState; - -using Friendbook.Data; - -namespace Friendbook.Ctl -{ - /// <summary> - /// Controller support class which provides basic authentication services - /// to subclasses. All this could be folded into ControllerProtected - /// except that the SignupSubmit controller needs to be able to login() - /// from an (obviously) unprotected page. - /// </summary> - public class ControllerAuth : ControllerErrorable - { - - /// <summary> - /// The name of the session attribute which stores the login name. - /// </summary> - protected const string LOGIN_ATTRNAME = "loginName"; - - /// <summary> - /// The login of the user currently logged in, or null if no - /// user is logged in. - /// </summary> - protected string CurrentLoginName - { - get { return (string)this.Session[LOGIN_ATTRNAME]; } - set { this.Session[LOGIN_ATTRNAME] = value; } - } - - protected bool Login(string login, string password) - { - FriendBook book = FriendBook.Instance; - Friend f = book.FindByLogin(login); - if (f == null || !f.Password.Equals(password)) - return false; - else - { - this.Session.Add(LOGIN_ATTRNAME, login); - return true; - } - } - - protected void Logout() - { - this.Session.Remove(LOGIN_ATTRNAME); - } - - protected HttpSessionState Session - { - get { return this.ControllerContext.HttpContext.Session; } - } - - protected HttpRequest Request - { - get { return this.ControllerContext.HttpContext.Request; } - } - } -} +using System.Web.SessionState; +using System.Web; +using System; + +using Friendbook.Data; + +namespace Friendbook.Ctl { + /// <summary> + /// Controller support class which provides basic authentication services + /// to subclasses. All this could be folded into ControllerProtected + /// except that the SignupSubmit controller needs to be able to login() + /// from an (obviously) unprotected page. + /// </summary> + public class ControllerAuth : ControllerErrorable { + /// <summary> + /// The name of the session attribute which stores the login name. + /// </summary> + protected const string LOGIN_ATTRNAME = "loginName"; + + /// <summary> + /// The login of the user currently logged in, or null if no + /// user is logged in. + /// </summary> + protected string CurrentLoginName { + get { return (string)this.Session[LOGIN_ATTRNAME]; } + set { this.Session[LOGIN_ATTRNAME] = value; } + } + + protected bool Login(string login, string password) { + FriendBook book = FriendBook.Instance; + Friend f = book.FindByLogin(login); + if (f == null || !f.Password.Equals(password)) { + return false; + } else{ + this.Session.Add(LOGIN_ATTRNAME, login); + return true; + } + } + + protected void Logout() { + this.Session.Remove(LOGIN_ATTRNAME); + } + + protected HttpSessionState Session { + get { return this.ControllerContext.HttpContext.Session; } + } + + protected HttpRequest Request { + get { return this.ControllerContext.HttpContext.Request; } + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerErrorable.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerErrorable.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerErrorable.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,100 +1,84 @@ -using System; -using System.Collections; -using System.Xml.Serialization; - -using Maverick.Ctl; - -namespace Friendbook.Ctl -{ - /// <summary> - /// Controller support class which provides some basic facilities for - /// form error handling. - /// </summary> - - [XmlInclude(typeof(Error))] - public class ControllerErrorable : ThrowawayForm - { - - protected IList errors = new ArrayList(); - - public IList Errors - { - get { return errors; } - } - - public bool HasErrors - { - get { return errors.Count > 0; } - } - - protected void AddError(string field, string message) - { - Error e = GetError(field); - if (e == null) - { - e = new Error(field, message); - errors.Add(e); - } - else - e.AddMessage(message); - } - - public Error GetError(String field) - { - Error e = new Error(field); - int pos = errors.IndexOf(e); - return pos < 0 ? null : (Error)errors[pos]; - } - } - - public class Error - { - String field; - IList messages; - - //needed by XmlSerializer - public Error() - { - } - - protected internal Error(String field) - { - this.field = field; - } - - public Error(String field, String message) - { - this.field = field; - this.messages = new ArrayList(); - this.messages.Add(message); - } - - public string Field - { - get { return field; } - set { this.field = value; } - } - - public IList Messages - { - get { return messages; } - } - - public void AddMessage(String message) - { - if (!this.messages.Contains(message)) - this.messages.Add(message); - } - - public override bool Equals(Object obj) - { - Error e = obj as Error; - return this.field.Equals(e.field); - } - - public override int GetHashCode() - { - return field.GetHashCode(); - } - } -} +using System.Collections; +using System.Xml.Serialization; +using System; + +using Maverick.Ctl; + +namespace Friendbook.Ctl { + /// <summary> + /// Controller support class which provides some basic facilities for + /// form error handling. + /// </summary> + + [XmlInclude(typeof(Error))] + public class ControllerErrorable : ThrowawayForm { + protected IList errors = new ArrayList(); + + public IList Errors { + get { return errors; } + } + + public bool HasErrors { + get { return errors.Count > 0; } + } + + protected void AddError(string field, string message) { + Error e = GetError(field); + if (e == null) { + e = new Error(field, message); + errors.Add(e); + } else{ + e.AddMessage(message); + } + } + + public Error GetError(String field) { + Error e = new Error(field); + int pos = errors.IndexOf(e); + return pos < 0 ? null : (Error)errors[pos]; + } + } + + public class Error { + String field; + IList messages; + + //needed by XmlSerializer + public Error() { + } + + protected internal Error(String field) { + this.field = field; + } + + public Error(String field, String message) { + this.field = field; + this.messages = new ArrayList(); + this.messages.Add(message); + } + + public string Field { + get { return field; } + set { this.field = value; } + } + + public IList Messages { + get { return messages; } + } + + public void AddMessage(String message) { + if (!this.messages.Contains(message)) { + this.messages.Add(message); + } + } + + public override bool Equals(Object obj) { + Error e = obj as Error; + return this.field.Equals(e.field); + } + + public override int GetHashCode() { + return field.GetHashCode(); + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerProtected.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerProtected.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/ControllerProtected.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,92 +1,74 @@ -using System; -using System.Collections.Specialized; - -namespace Friendbook.Ctl -{ - /// <summary> - /// Protected commands should use this controller. - /// </summary> - public class ControllerProtected : ControllerAuth - { - - /// <summary> - /// used for logging in users. - /// </summary> - protected string authName; - protected string authPassword; - - /// <summary> - /// This method will be called after authentication checking has been done. - /// </summary> - /// <returns></returns> - protected virtual string SecurePerform() - { - return base.Perform(); - } - - public string AuthName - { - set { this.authName = value; } - } - - public string AuthPassword - { - set { this.authPassword = value; } - } - - public override string Perform() - { - // Check for new login credentials; maybe user is trying to - // log in as someone new. - if (this.authName != null || this.authPassword != null) - { - // Abandon any existing credentials. - this.Logout(); - - if (!this.Login(this.authName, this.authPassword)) - { - this.FixupModelForLoginView(); - return "loginFailed"; - } - } - - // This is a protected page, so we must have a login - if (this.CurrentLoginName == null || this.CurrentLoginName.Equals("")) - { - // This would be a good place to check for automatic login by cookie - this.FixupModelForLoginView(); - return "loginRequired"; - } - else - { - return this.SecurePerform(); - } - } - - protected void FixupModelForLoginView() - { - this.ControllerContext.Model = new LoginModel(this); - } - - public class LoginModel - { - - private ControllerProtected parent; - - //for XmlSerializer - public LoginModel() - { - } - - public LoginModel(ControllerProtected parent) - { - this.parent = parent; - } - - public string Destination - { - get { return parent.Request.Url.AbsoluteUri; } - } - } - } -} +using System.Collections.Specialized; +using System; + +namespace Friendbook.Ctl { + /// <summary> + /// Protected commands should use this controller. + /// </summary> + public class ControllerProtected : ControllerAuth { + /// <summary> + /// used for logging in users. + /// </summary> + protected string authName; + protected string authPassword; + + /// <summary> + /// This method will be called after authentication checking has been done. + /// </summary> + /// <returns></returns> + protected virtual string SecurePerform() { + return base.Perform(); + } + + public string AuthName { + set { this.authName = value; } + } + + public string AuthPassword { + set { this.authPassword = value; } + } + + public override string Perform() { + // Check for new login credentials; maybe user is trying to + // log in as someone new. + if (this.authName != null || this.authPassword != null) { + // Abandon any existing credentials. + this.Logout(); + + if (!this.Login(this.authName, this.authPassword)) { + this.FixupModelForLoginView(); + return "loginFailed"; + } + } + + // This is a protected page, so we must have a login + if (this.CurrentLoginName == null || this.CurrentLoginName.Equals("")) { + // This would be a good place to check for automatic login by cookie + this.FixupModelForLoginView(); + return "loginRequired"; + } else { + return this.SecurePerform(); + } + } + + protected void FixupModelForLoginView() { + this.ControllerContext.Model = new LoginModel(this); + } + + public class LoginModel { + private ControllerProtected parent; + + //for XmlSerializer + public LoginModel() { + } + + public LoginModel(ControllerProtected parent) { + this.parent = parent; + } + + public string Destination { + get { return parent.Request.Url.AbsoluteUri; } + } + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Edit.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Edit.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Edit.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,88 +1,76 @@ -using System; -using System.Collections; - -using Friendbook.Data; - -namespace Friendbook.Ctl -{ - /// <summary> - /// Summary description for Edit. - /// </summary> - public class Edit : ControllerProtected - { - - protected string firstName; - protected string lastName; - protected string addrLine1; - protected string addrLine2; - protected string addrCity; - protected string addrState; - - // phones and emails are handled a little differently. - protected IList phoneList; - protected IList emailList; - - protected override string SecurePerform() - { - Friend me = FriendBook.Instance.FindByLogin(this.CurrentLoginName); - - this.firstName = me.FirstName; - this.lastName = me.LastName; - this.addrLine1 = me.Address.Line1; - this.addrLine2 = me.Address.Line2; - this.addrCity = me.Address.City; - this.addrState = me.Address.State; - - this.phoneList = me.PhoneList; - this.emailList = me.EmailList; - - return SUCCESS; - } - - public string FirstName - { - get { return firstName; } - set { this.firstName = value; } - } - - public string LastName - { - get { return lastName; } - set { this.lastName = value; } - } - - public string AddrLine1 - { - get { return addrLine1; } - set { this.addrLine1 = value; } - } - - public string AddrLine2 - { - get { return addrLine2; } - set { this.addrLine2 = value; } - } - - public string AddrCity - { - get { return addrCity; } - set { this.addrCity = value; } - } - - public string AddrState - { - get { return addrState; } - set { this.addrState = value; } - } - - public IList PhoneList - { - get { return this.phoneList; } - } - - public IList EmailList - { - get { return this.emailList; } - } - } -} +using System.Collections; +using System; + +using Friendbook.Data; + +namespace Friendbook.Ctl { + /// <summary> + /// Summary description for Edit. + /// </summary> + public class Edit : ControllerProtected { + protected string firstName; + protected string lastName; + protected string addrLine1; + protected string addrLine2; + protected string addrCity; + protected string addrState; + + // phones and emails are handled a little differently. + protected IList phoneList; + protected IList emailList; + + protected override string SecurePerform() { + Friend me = FriendBook.Instance.FindByLogin(this.CurrentLoginName); + + this.firstName = me.FirstName; + this.lastName = me.LastName; + this.addrLine1 = me.Address.Line1; + this.addrLine2 = me.Address.Line2; + this.addrCity = me.Address.City; + this.addrState = me.Address.State; + + this.phoneList = me.PhoneList; + this.emailList = me.EmailList; + + return SUCCESS; + } + + public string FirstName { + get { return firstName; } + set { this.firstName = value; } + } + + public string LastName { + get { return lastName; } + set { this.lastName = value; } + } + + public string AddrLine1 { + get { return addrLine1; } + set { this.addrLine1 = value; } + } + + public string AddrLine2 { + get { return addrLine2; } + set { this.addrLine2 = value; } + } + + public string AddrCity { + get { return addrCity; } + set { this.addrCity = value; } + } + + public string AddrState { + get { return addrState; } + set { this.addrState = value; } + } + + public IList PhoneList { + get { return this.phoneList; } + } + + public IList EmailList { + get { return this.emailList; } + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/EditSubmit.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/EditSubmit.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/EditSubmit.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,79 +1,76 @@ -using System; -using System.Collections; - -using Friendbook.Data; - -namespace Friendbook.Ctl -{ - /// <summary> - /// Summary description for EditSubmit. - /// </summary> - public class EditSubmit : Edit - { - - protected override string SecurePerform() - { - Friend me = FriendBook.Instance.FindByLogin(this.CurrentLoginName); - - me.FirstName = this.firstName; - me.LastName = this.lastName; - - me.Address.Line1 = this.addrLine1; - me.Address.Line2 = this.addrLine2; - me.Address.City = this.addrCity; - me.Address.State = this.addrState; - - this.ProcessParameters(); - - me.PhoneList = this.phoneList; - me.EmailList = this.emailList; - - return SUCCESS; - } - - protected void ProcessParameters() - { - // We need to process the input parameters to extract the dynamic phone - // and email lists. - this.phoneList = new ArrayList(); - this.emailList = new ArrayList(); - - // Iterate through the email list. Index starts at 1. - int i = 1; - - while (true) - { - string val = this.Request.Params["email" + i]; - string del = this.Request.Params["del_email" + i]; - - // Once we get a null we have hit the max - if (val == null) - break; - - // Only add ones that are not marked for deletion and not empty - if (del == null && !val.Trim().Equals("")) - this.emailList.Add(val); - i++; - } - - // Reset the counter to walk through the phone numbers - i = 1; - - while (true) - { - string val = this.Request.Params["phone" + i]; - string del = this.Request.Params["del_phone" + i]; - - // Once we get a null we have hit the max - if (val == null) - break; - - // Only add ones that are not marked for deletion and not empty - if (del == null && !val.Trim().Equals("")) - this.phoneList.Add(val); - - i++; - } - } - } -} +using System.Collections; +using System; + +using Friendbook.Data; + +namespace Friendbook.Ctl { + /// <summary> + /// Summary description for EditSubmit. + /// </summary> + public class EditSubmit : Edit { + protected override string SecurePerform() { + Friend me = FriendBook.Instance.FindByLogin(this.CurrentLoginName); + + me.FirstName = this.firstName; + me.LastName = this.lastName; + + me.Address.Line1 = this.addrLine1; + me.Address.Line2 = this.addrLine2; + me.Address.City = this.addrCity; + me.Address.State = this.addrState; + + this.ProcessParameters(); + + me.PhoneList = this.phoneList; + me.EmailList = this.emailList; + + return SUCCESS; + } + + protected void ProcessParameters() { + // We need to process the input parameters to extract the dynamic phone + // and email lists. + this.phoneList = new ArrayList(); + this.emailList = new ArrayList(); + + // Iterate through the email list. Index starts at 1. + int i = 1; + + while (true) { + string val = this.Request.Params["email" + i]; + string del = this.Request.Params["del_email" + i]; + + // Once we get a null we have hit the max + if (val == null) { + break; + } + + // Only add ones that are not marked for deletion and not empty + if (del == null && !val.Trim().Equals("")) { + this.emailList.Add(val); + } + i++; + } + + // Reset the counter to walk through the phone numbers + i = 1; + + while (true) { + string val = this.Request.Params["phone" + i]; + string del = this.Request.Params["del_phone" + i]; + + // Once we get a null we have hit the max + if (val == null) { + break; + } + + // Only add ones that are not marked for deletion and not empty + if (del == null && !val.Trim().Equals("")) { + this.phoneList.Add(val); + } + + i++; + } + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Friends.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Friends.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Friends.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,32 +1,26 @@ -using System; -using System.Collections; -using System.Xml.Serialization; - -using Friendbook.Data; - -namespace Friendbook.Ctl -{ - - [XmlInclude(typeof(Friend))] - public class Friends : ControllerProtected - { - protected IList friends; - - protected override string SecurePerform() - { - this.friends = FriendBook.Instance.Friends; - return SUCCESS; - } - - public IList AllFriends - { - get { return this.friends; } - } - - public string MyLogin - { - get { return this.CurrentLoginName; } - set { this.CurrentLoginName = value; } - } - } -} +using System.Collections; +using System.Xml.Serialization; +using System; + +using Friendbook.Data; + +namespace Friendbook.Ctl { + [XmlInclude(typeof(Friend))] + public class Friends : ControllerProtected { + protected IList friends; + + protected override string SecurePerform() { + this.friends = FriendBook.Instance.Friends; + return SUCCESS; + } + + public IList AllFriends { + get { return this.friends; } + } + + public string MyLogin { + get { return this.CurrentLoginName; } + set { this.CurrentLoginName = value; } + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Logout.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Logout.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/Logout.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,13 +1,10 @@ -using System; - -namespace Friendbook.Ctl -{ - public class Logout : ControllerProtected - { - protected override string SecurePerform() - { - this.Logout(); - return SUCCESS; - } - } -} +using System; + +namespace Friendbook.Ctl { + public class Logout : ControllerProtected { + protected override string SecurePerform() { + this.Logout(); + return SUCCESS; + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/SignupSubmit.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/SignupSubmit.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Ctl/SignupSubmit.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,82 +1,68 @@ -using System; - -using Friendbook.Data; - -namespace Friendbook.Ctl -{ - /// <summary> - /// The controller for the submission of the signup form. Since the error - /// case simply sends back to the signup view, we provide input values to - /// the form as well. - /// </summary> - public class SignupSubmit : ControllerAuth - { - - protected string loginName; - protected string password; - protected string passwordAgain; - - public string LoginName - { - get { return this.loginName; } - set { this.loginName = value; } - } - - public string Password - { - get { return this.password; } - set { this.password = value; } - } - - public string PasswordAgain - { - get { return this.passwordAgain; } - set { this.passwordAgain = value; } - } - - public override string Perform() - { - // Validate the password - if (this.password == null || this.password.Length < 3) - { - this.AddError("password", "Passwords must be at least 3 characters"); - this.password = ""; - this.passwordAgain = ""; - } - else if (!this.password.Equals(this.passwordAgain)) - { - this.AddError("password", "Your passwords did not match"); - this.password = ""; - this.passwordAgain = ""; - } - - // Validate the loginName - FriendBook book = FriendBook.Instance; - - if (this.loginName == null || this.loginName.Length == 0) - { - this.AddError("loginName", "You must choose a login name!"); - } - else if (book.FindByLogin(this.loginName) != null) - { - this.AddError("loginName", "Someone already has that name"); - } - - // Execute if appropriate - if (this.HasErrors) - return ERROR; - else - { - Friend f = new Friend(); - f.Login = this.loginName; - f.Password = this.password; - - book.AddFriend(f); - - this.Login(this.loginName, this.password); - - return SUCCESS; - } - } - } -} +using System; + +using Friendbook.Data; + +namespace Friendbook.Ctl { + /// <summary> + /// The controller for the submission of the signup form. Since the error + /// case simply sends back to the signup view, we provide input values to + /// the form as well. + /// </summary> + public class SignupSubmit : ControllerAuth { + protected string loginName; + protected string password; + protected string passwordAgain; + + public string LoginName { + get { return this.loginName; } + set { this.loginName = value; } + } + + public string Password { + get { return this.password; } + set { this.password = value; } + } + + public string PasswordAgain { + get { return this.passwordAgain; } + set { this.passwordAgain = value; } + } + + public override string Perform() { + // Validate the password + if (this.password == null || this.password.Length < 3) { + this.AddError("password", "Passwords must be at least 3 characters"); + this.password = ""; + this.passwordAgain = ""; + } else if (!this.password.Equals(this.passwordAgain)) { + this.AddError("password", "Your passwords did not match"); + this.password = ""; + this.passwordAgain = ""; + } + + // Validate the loginName + FriendBook book = FriendBook.Instance; + + if (this.loginName == null || this.loginName.Length == 0) { + this.AddError("loginName", "You must choose a login name!"); + } else if (book.FindByLogin(this.loginName) != null) { + this.AddError("loginName", "Someone already has that name"); + } + + // Execute if appropriate + if (this.HasErrors) { + return ERROR; + } else{ + Friend f = new Friend(); + f.Login = this.loginName; + f.Password = this.password; + + book.AddFriend(f); + + this.Login(this.loginName, this.password); + + return SUCCESS; + } + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Data/Address.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Data/Address.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Data/Address.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,50 +1,39 @@ -using System; - -namespace Friendbook.Data -{ - /// <summary> - /// Summary description for Address. - /// </summary> - public class Address - { - - protected string line1; - protected string line2; - protected string city; - protected string state; - protected string description = "Home"; - - public string Line1 - { - get { return line1;} - set { line1 = value;} - } - - public string Line2 - { - get { return line2;} - set { line2 = value;} - } - - public string City - { - get { return city;} - set { city = value;} - } - - public string State - { - get { return state;} - set { state = value;} - } - - public string Description - { - get { return description;} - set { description = value;} - } - - - - } -} +using System; + +namespace Friendbook.Data { + /// <summary> + /// Summary description for Address. + /// </summary> + public class Address { + protected string line1; + protected string line2; + protected string city; + protected string state; + protected string description = "Home"; + + public string Line1 { + get { return line1; } + set { line1 = value; } + } + + public string Line2 { + get { return line2; } + set { line2 = value; } + } + + public string City { + get { return city; } + set { city = value; } + } + + public string State { + get { return state; } + set { state = value; } + } + + public string Description { + get { return description; } + set { description = value; } + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Data/Friend.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Data/Friend.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Data/Friend.cs 2009-04-06 15:00:14 UTC (rev 283) @@ -1,65 +1,55 @@ -using System; -using System.Collections; - -namespace Friendbook.Data -{ - /// <summary> - /// Data for a friend. - /// </summary> - public class Friend - { - - protected string login = ""; - protected string password = ""; - - protected string firstName = ""; - protected string lastName = ""; - - protected Address address = new Address(); - - protected IList phoneList = new ArrayList(); - protected IList emailList = new ArrayList(); - - public string Login - { - get { return login;} - set { this.login = value; } - } - - public string Password - { - get { return password;} - set { this.password = value; } - } - - public string FirstName - { - get { return firstName;} - set { this.firstName = value; } - } - - public string LastName - { - get { return lastName;} - set { this.lastName = value; } - } - - public Address Address - { - get { return address;} - set { this.address = value; } - } - - public IList PhoneList - { - get { return phoneList;} - set { this.phoneList = value; } - } - - public IList EmailList - { - get { return emailList;} - set { this.emailList = value; } - } - } -} +using System.Collections; +using System; + +namespace Friendbook.Data { + /// <summary> + /// Data for a friend. + /// </summary> + public class Friend { + protected string login = ""; + protected string password = ""; + + protected string firstName = ""; + protected string lastName = ""; + + protected Address address = new Address(); + + protected IList phoneList = new ArrayList(); + protected IList emailList = new ArrayList(); + + public string Login { + get { return login; } + set { this.login = value; } + } + + public string Password { + get { return password; } + set { this.password = value; } + } + + public string FirstName { + get { return firstName; } + set { this.firstName = value; } + } + + public string LastName { + get { return lastName; } + set { this.lastName = value; } + } + + public Address Address { + get { return address; } + set { this.address = value; } + } + + public IList PhoneList { + get { return phoneList; } + set { this.phoneList = value; } + } + + public IList EmailList { + get { return emailList; } + set { this.emailList = value; } + } + } +} Modified: trunk/Maverick.net/examples/Friendbook/Friendbook/Data/FriendBook.cs =================================================================== --- trunk/Maverick.net/examples/Friendbook/Friendbook/Data/FriendBook.cs 2009-04-06 00:56:49 UTC (rev 282) +++ trunk/Maverick.net/examples/Friendbook/Friendbook/Data/FriendBook.cs 200... [truncated message content] |
From: <co...@us...> - 2009-04-06 00:56:59
|
Revision: 282 http://mavnet.svn.sourceforge.net/mavnet/?rev=282&view=rev Author: corts Date: 2009-04-06 00:56:49 +0000 (Mon, 06 Apr 2009) Log Message: ----------- ignore resharper files Property Changed: ---------------- trunk/Maverick.net/ Property changes on: trunk/Maverick.net ___________________________________________________________________ Modified: svn:ignore - .project _vti_cnf CodeCommentReport bin obj *.suo *.user _ReSharper* *.resharperoptions build release + .project _vti_cnf CodeCommentReport bin obj *.suo *.user _ReSharper* *.resharperoptions build release *.resharper This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-04-06 00:55:58
|
Revision: 281 http://mavnet.svn.sourceforge.net/mavnet/?rev=281&view=rev Author: corts Date: 2009-04-06 00:55:49 +0000 (Mon, 06 Apr 2009) Log Message: ----------- fix the calendar example make the AspxController set the controller to the current page and set the model to the results of the page execution Modified Paths: -------------- trunk/Maverick.net/examples/Calendar/App_Code/AssemblyInfo.cs trunk/Maverick.net/examples/Calendar/App_Code/Global.asax.cs trunk/Maverick.net/examples/Calendar/April.aspx trunk/Maverick.net/examples/Calendar/Button.aspx trunk/Maverick.net/examples/Calendar/Default.aspx trunk/Maverick.net/examples/Calendar/Foo/December.aspx trunk/Maverick.net/examples/Calendar/Web.config trunk/Maverick.net/examples/Calendar/Wrapper.aspx trunk/Maverick.net/examples/Calendar/maverick.config trunk/Maverick.net/src/Maverick/Ctl/Aspx/AspxController.cs trunk/Maverick.net/src/Maverick/Flow/CommandBase.cs Added Paths: ----------- trunk/Maverick.net/examples/Calendar/Calendar.aspx trunk/Maverick.net/examples/Calendar/Calendar.aspx.cs trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx.cs Removed Paths: ------------- trunk/Maverick.net/examples/Calendar/Calendar.vsdisco trunk/Maverick.net/examples/Calendar/Default.aspx.cs trunk/Maverick.net/examples/Calendar/Default.aspx.resx trunk/Maverick.net/examples/Calendar/Foo/Default.aspx trunk/Maverick.net/examples/Calendar/Foo/Default.aspx.cs trunk/Maverick.net/examples/Calendar/Foo/Default.aspx.resx trunk/Maverick.net/examples/Calendar/Global.asax Modified: trunk/Maverick.net/examples/Calendar/App_Code/AssemblyInfo.cs =================================================================== --- trunk/Maverick.net/examples/Calendar/App_Code/AssemblyInfo.cs 2009-04-06 00:54:05 UTC (rev 280) +++ trunk/Maverick.net/examples/Calendar/App_Code/AssemblyInfo.cs 2009-04-06 00:55:49 UTC (rev 281) @@ -1,66 +1,66 @@ -using System.Reflection; -using System.Runtime.CompilerServices; - - -// -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -// -[assembly: AssemblyTitle("")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("")] -[assembly: AssemblyCopyright("")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Revision and Build Numbers -// by using the '*' as shown below: - -[assembly: AssemblyVersion("1.0.*")] - -// -// In order to sign your assembly you must specify a key to use. Refer to the -// Microsoft .NET Framework documentation for more information on assembly signing. -// -// Use the attributes below to control which key is used for signing. -// -// Notes: -// (*) If no key is specified, the assembly is not signed. -// (*) KeyName refers to a key that has been installed in the Crypto Service -// Provider (CSP) on your machine. KeyFile refers to a file which contains -// a key. -// (*) If the KeyFile and the KeyName values are both specified, the -// following processing occurs: -// (1) If the KeyName can be found in the CSP, that key is used. -// (2) If the KeyName does not exist and the KeyFile does exist, the key -// in the KeyFile is installed into the CSP and used. -// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility. -// When specifying the KeyFile, the location of the KeyFile should be -// relative to the "project output directory". The location of the project output -// directory is dependent on whether you are working with a local or web project. -// For local projects, the project output directory is defined as -// <Project Directory>\obj\<Configuration>. For example, if your KeyFile is -// located in the project directory, you would specify the AssemblyKeyFile -// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")] -// For web projects, the project output directory is defined as -// %HOMEPATH%\VSWebCache\<Machine Name>\<Project Directory>\obj\<Configuration>. -// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework -// documentation for more information on this. -// -[assembly: AssemblyDelaySign(false)] -[assembly: AssemblyKeyFile("")] -[assembly: AssemblyKeyName("")] - -// configure logging from the file specified by System.Configuration.ConfigurationSettings for the AppDomain, and watch for changes -[assembly: log4net.Config.XmlConfigurator(Watch=true)] +using System.Reflection; +using System.Runtime.CompilerServices; + + +// +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +// +[assembly: AssemblyTitle("")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("")] +[assembly: AssemblyCopyright("")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: + +[assembly: AssemblyVersion("1.0.*")] + +// +// In order to sign your assembly you must specify a key to use. Refer to the +// Microsoft .NET Framework documentation for more information on assembly signing. +// +// Use the attributes below to control which key is used for signing. +// +// Notes: +// (*) If no key is specified, the assembly is not signed. +// (*) KeyName refers to a key that has been installed in the Crypto Service +// Provider (CSP) on your machine. KeyFile refers to a file which contains +// a key. +// (*) If the KeyFile and the KeyName values are both specified, the +// following processing occurs: +// (1) If the KeyName can be found in the CSP, that key is used. +// (2) If the KeyName does not exist and the KeyFile does exist, the key +// in the KeyFile is installed into the CSP and used. +// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility. +// When specifying the KeyFile, the location of the KeyFile should be +// relative to the "project output directory". The location of the project output +// directory is dependent on whether you are working with a local or web project. +// For local projects, the project output directory is defined as +// <Project Directory>\obj\<Configuration>. For example, if your KeyFile is +// located in the project directory, you would specify the AssemblyKeyFile +// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")] +// For web projects, the project output directory is defined as +// %HOMEPATH%\VSWebCache\<Machine Name>\<Project Directory>\obj\<Configuration>. +// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework +// documentation for more information on this. +// +[assembly: AssemblyDelaySign(false)] +[assembly: AssemblyKeyFile("")] +[assembly: AssemblyKeyName("")] + +// configure logging from the file specified by System.Configuration.ConfigurationSettings for the AppDomain, and watch for changes +[assembly: log4net.Config.DOMConfigurator(Watch=true)] Modified: trunk/Maverick.net/examples/Calendar/App_Code/Global.asax.cs =================================================================== --- trunk/Maverick.net/examples/Calendar/App_Code/Global.asax.cs 2009-04-06 00:54:05 UTC (rev 280) +++ trunk/Maverick.net/examples/Calendar/App_Code/Global.asax.cs 2009-04-06 00:55:49 UTC (rev 281) @@ -1,70 +1,70 @@ -using System; -using System.Collections; -using System.ComponentModel; -using System.Web; -using System.Web.SessionState; - -namespace Sandbox -{ - /// <summary> - /// Summary description for Global. - /// </summary> - public class Global : System.Web.HttpApplication - { - public Global() - { - InitializeComponent(); - } - - protected void Application_Start(Object sender, EventArgs e) - { - - } - - protected void Session_Start(Object sender, EventArgs e) - { - - } - - protected void Application_BeginRequest(Object sender, EventArgs e) - { - - } - - protected void Application_EndRequest(Object sender, EventArgs e) - { - - } - - protected void Application_AuthenticateRequest(Object sender, EventArgs e) - { - - } - - protected void Application_Error(Object sender, EventArgs e) - { - - } - - protected void Session_End(Object sender, EventArgs e) - { - - } - - protected void Application_End(Object sender, EventArgs e) - { - - } - - #region Web Form Designer generated code - /// <summary> - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// </summary> - private void InitializeComponent() - { - } - #endregion - } -} - +using System; +using System.Collections; +using System.ComponentModel; +using System.Web; +using System.Web.SessionState; + +namespace Sandbox +{ + /// <summary> + /// Summary description for Global. + /// </summary> + public class Global : System.Web.HttpApplication + { + public Global() + { + InitializeComponent(); + } + + protected void Application_Start(Object sender, EventArgs e) + { + + } + + protected void Session_Start(Object sender, EventArgs e) + { + + } + + protected void Application_BeginRequest(Object sender, EventArgs e) + { + + } + + protected void Application_EndRequest(Object sender, EventArgs e) + { + + } + + protected void Application_AuthenticateRequest(Object sender, EventArgs e) + { + + } + + protected void Application_Error(Object sender, EventArgs e) + { + + } + + protected void Session_End(Object sender, EventArgs e) + { + + } + + protected void Application_End(Object sender, EventArgs e) + { + + } + + #region Web Form Designer generated code + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + } + #endregion + } +} + Modified: trunk/Maverick.net/examples/Calendar/April.aspx =================================================================== (Binary files differ) Modified: trunk/Maverick.net/examples/Calendar/Button.aspx =================================================================== (Binary files differ) Added: trunk/Maverick.net/examples/Calendar/Calendar.aspx =================================================================== --- trunk/Maverick.net/examples/Calendar/Calendar.aspx (rev 0) +++ trunk/Maverick.net/examples/Calendar/Calendar.aspx 2009-04-06 00:55:49 UTC (rev 281) @@ -0,0 +1,46 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Calendar.aspx.cs" Inherits="Calendar" %> + +<div align="center"> + <table height="345" cellspacing="0" cellpadding="0" width="537" border="0" ms_2d_layout="TRUE"> + <tr valign="top"> + <td width="537" height="345"> + <form id="Default" method="post" runat="server"> + <table height="320" cellspacing="0" cellpadding="0" width="431" border="0" ms_2d_layout="TRUE"> + <tr valign="top"> + <td width="137" height="30"> + </td> + <td width="11"> + </td> + <td width="59"> + </td> + <td width="224"> + </td> + </tr> + <tr valign="top"> + <td height="37"> + </td> + <td colspan="3"> + <asp:label id="Label1" runat="server" width="282px" height="20px">Choose a Date in April or Click the Button</asp:label> + </td> + </tr> + <tr valign="top"> + <td colspan="2" height="211"> + </td> + <td colspan="2"> + <asp:calendar id="Calendar1" runat="server" onselectionchanged="Calendar1_SelectionChanged"></asp:calendar> + </td> + </tr> + <tr valign="top"> + <td colspan="3" height="42"> + </td> + <td> + <asp:button id="Button1" runat="server" text="Change View" width="128px" height="26px" + onclick="Button1_Click"></asp:button> + </td> + </tr> + </table> + </form> + </td> + </tr> + </table> +</div> Added: trunk/Maverick.net/examples/Calendar/Calendar.aspx.cs =================================================================== --- trunk/Maverick.net/examples/Calendar/Calendar.aspx.cs (rev 0) +++ trunk/Maverick.net/examples/Calendar/Calendar.aspx.cs 2009-04-06 00:55:49 UTC (rev 281) @@ -0,0 +1,29 @@ +using System; +using System.Collections.Generic; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +public partial class Calendar : Maverick.Ctl.Aspx.ControllablePage { + + protected string viewName = "success"; + + protected void Page_Load(object sender, EventArgs e) { + + } + + public override string Go(Maverick.Flow.IControllerContext cctx) { + Context.Items["title"] = "calendar"; + return this.viewName; + } + + protected void Calendar1_SelectionChanged(object sender, System.EventArgs e) { + if (this.Calendar1.SelectedDate.Month == 4) + this.viewName = "april"; + } + + protected void Button1_Click(object sender, System.EventArgs e) { + this.viewName = "button"; + } + +} Deleted: trunk/Maverick.net/examples/Calendar/Calendar.vsdisco =================================================================== (Binary files differ) Modified: trunk/Maverick.net/examples/Calendar/Default.aspx =================================================================== (Binary files differ) Deleted: trunk/Maverick.net/examples/Calendar/Default.aspx.cs =================================================================== (Binary files differ) Deleted: trunk/Maverick.net/examples/Calendar/Default.aspx.resx =================================================================== (Binary files differ) Added: trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx =================================================================== --- trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx (rev 0) +++ trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx 2009-04-06 00:55:49 UTC (rev 281) @@ -0,0 +1,34 @@ +<%@ Page language="c#" Inherits="Sandbox.Foo.Calendar" CodeFile="Calendar.aspx.cs" %> +<div align="center"> + <TABLE height="345" cellSpacing="0" cellPadding="0" width="537" border="0" ms_2d_layout="TRUE"> + <TR vAlign="top"> + <TD width="537" height="345"> + <form id="Default" method="post" runat="server"> + <TABLE height="320" cellSpacing="0" cellPadding="0" width="431" border="0" ms_2d_layout="TRUE"> + <TR vAlign="top"> + <TD width="137" height="30"></TD> + <TD width="11"></TD> + <TD width="59"></TD> + <TD width="224"></TD> + </TR> + <TR vAlign="top"> + <TD height="37"></TD> + <TD colSpan="3"> + <asp:Label id="Label1" runat="server" Width="282px" Height="20px">Choose a Date in December or Click the Button</asp:Label></TD> + </TR> + <TR vAlign="top"> + <TD colSpan="2" height="211"></TD> + <TD colSpan="2"> + <asp:Calendar id="Calendar1" runat="server" onselectionchanged="Calendar1_SelectionChanged"></asp:Calendar></TD> + </TR> + <TR vAlign="top"> + <TD colSpan="3" height="42"></TD> + <TD> + <asp:Button id="Button1" runat="server" Text="Change View" Width="128px" Height="26px" onclick="Button1_Click"></asp:Button></TD> + </TR> + </TABLE> + </form> + </TD> + </TR> + </TABLE> +</div> Added: trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx.cs =================================================================== --- trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx.cs (rev 0) +++ trunk/Maverick.net/examples/Calendar/Foo/Calendar.aspx.cs 2009-04-06 00:55:49 UTC (rev 281) @@ -0,0 +1,64 @@ +using System; +using System.Collections; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Web; +using System.Web.SessionState; +using System.Web.UI; +using System.Web.UI.WebControls; +using System.Web.UI.HtmlControls; + +namespace Sandbox.Foo +{ + /// <summary> + /// Summary description for Calendar. + /// </summary> + public partial class Calendar : Maverick.Ctl.Aspx.ControllablePage + { + + protected string viewName = "success"; + + protected void Page_Load(object sender, System.EventArgs e) + { + // Put user code to initialize the page here + } + + public override string Go(Maverick.Flow.IControllerContext cctx) + { + Context.Items["title"] = "calendar"; + return this.viewName; + } + + #region Web Form Designer generated code + override protected void OnInit(EventArgs e) + { + // + // CODEGEN: This call is required by the ASP.NET Web Form Designer. + // + InitializeComponent(); + base.OnInit(e); + } + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + + } + #endregion + + protected void Calendar1_SelectionChanged(object sender, System.EventArgs e) + { + if (this.Calendar1.SelectedDate.Month == 12) + this.viewName = "april"; + } + + protected void Button1_Click(object sender, System.EventArgs e) + { + this.viewName = "button"; + } + } +} Modified: trunk/Maverick.net/examples/Calendar/Foo/December.aspx =================================================================== (Binary files differ) Deleted: trunk/Maverick.net/examples/Calendar/Foo/Default.aspx =================================================================== (Binary files differ) Deleted: trunk/Maverick.net/examples/Calendar/Foo/Default.aspx.cs =================================================================== (Binary files differ) Deleted: trunk/Maverick.net/examples/Calendar/Foo/Default.aspx.resx =================================================================== (Binary files differ) Deleted: trunk/Maverick.net/examples/Calendar/Global.asax =================================================================== (Binary files differ) Modified: trunk/Maverick.net/examples/Calendar/Web.config =================================================================== (Binary files differ) Modified: trunk/Maverick.net/examples/Calendar/Wrapper.aspx =================================================================== (Binary files differ) Modified: trunk/Maverick.net/examples/Calendar/maverick.config =================================================================== (Binary files differ) Modified: trunk/Maverick.net/src/Maverick/Ctl/Aspx/AspxController.cs =================================================================== (Binary files differ) Modified: trunk/Maverick.net/src/Maverick/Flow/CommandBase.cs =================================================================== --- trunk/Maverick.net/src/Maverick/Flow/CommandBase.cs 2009-04-06 00:54:05 UTC (rev 280) +++ trunk/Maverick.net/src/Maverick/Flow/CommandBase.cs 2009-04-06 00:55:49 UTC (rev 281) @@ -1,79 +1,83 @@ -using System; - -namespace Maverick.Flow -{ - - public abstract class CommandBase : ICommand - { - - protected IController controller; - - private static readonly log4net.ILog log = log4net.LogManager.GetLogger(typeof(CommandBase)); - - public CommandBase(IController ctl) - { - this.controller = ctl; - } - - /// <summary> - /// Execute the command and render the results! - /// </summary> - /// <param name="mctx"></param> - public void Go(MaverickContext mctx) - { - try - { - string viewName = this.controller.Go(mctx); - RunView(viewName, mctx); - } - finally - { - // guarantee that this will run even if exception is thrown - // Allow the model to manage resources - // need this here even though it is also in RunView - // in case exception is throw in this.controller.Go(mctx) - DiscardModel(mctx); - } - } - - protected internal void RunView(String viewName, MaverickContext mctx) - { - try - { - log.Info("Switching to view: " + viewName); - IView target = this.GetView(viewName); - - if (target == null) - { - Type controllerType = this.controller.GetType(); - if (this.controller is ThrowawayControllerAdaptor) { - controllerType = ((ThrowawayControllerAdaptor)this.controller).ControllerType; - } - throw new ApplicationException("Controller " + controllerType.FullName + " specified view \"" + viewName - + "\", but no view with that name is defined."); - } - target.Go(mctx); - } - finally - { - // guarantee that this will run even if exception is thrown - // Allow the model to manage resources - // need this here as well as in Go because - // AspxController calls RunView directly - DiscardModel(mctx); - } - } - - protected void DiscardModel(MaverickContext mctx) - { - IModelLifetime ml = mctx.Model as IModelLifetime; - if (ml != null) - { - ml.Discard(); - mctx.Model = null; - } - } - - protected internal abstract IView GetView(string name); - } -} +using System; + +namespace Maverick.Flow +{ + + public abstract class CommandBase : ICommand + { + + protected IController controller; + + private static readonly log4net.ILog log = log4net.LogManager.GetLogger(typeof(CommandBase)); + + public CommandBase(IController ctl) + { + this.controller = ctl; + } + + /// <summary> + /// Execute the command and render the results! + /// </summary> + /// <param name="mctx"></param> + public void Go(MaverickContext mctx) + { + try + { + string viewName = this.controller.Go(mctx); + RunView(viewName, mctx); + } + finally + { + // guarantee that this will run even if exception is thrown + // Allow the model to manage resources + // need this here even though it is also in RunView + // in case exception is throw in this.controller.Go(mctx) + DiscardModel(mctx); + } + } + + protected internal void RunView(String viewName, MaverickContext mctx) + { + try + { + log.InfoFormat("Switching to view: {0}", viewName); + IView target = this.GetView(viewName); + + if (target == null) + { + Type controllerType = this.controller.GetType(); + if (this.controller is ThrowawayControllerAdaptor) { + controllerType = ((ThrowawayControllerAdaptor)this.controller).ControllerType; + } + throw new ApplicationException(String.Format("Controller {0} specified view \"{1}\", but no view with that name is defined.", controllerType.FullName, viewName)); + } + target.Go(mctx); + } + finally + { + // guarantee that this will run even if exception is thrown + // Allow the model to manage resources + // need this here as well as in Go because + // AspxController calls RunView directly + DiscardModel(mctx); + } + } + + protected void DiscardModel(MaverickContext mctx) + { + IModelLifetime ml = mctx.Model as IModelLifetime; + if (ml != null) + { + ml.Discard(); + mctx.Model = null; + } + } + + protected internal abstract IView GetView(string name); + + internal void SetController(IController ctl) + { + this.controller = ctl; + } + } +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-04-06 00:54:14
|
Revision: 280 http://mavnet.svn.sourceforge.net/mavnet/?rev=280&view=rev Author: corts Date: 2009-04-06 00:54:05 +0000 (Mon, 06 Apr 2009) Log Message: ----------- ignore resharper files Property Changed: ---------------- trunk/Maverick.net/tests/ Property changes on: trunk/Maverick.net/tests ___________________________________________________________________ Modified: svn:ignore - obj bin *.user *.suo + obj bin *.user *.suo *.resharper This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-04-03 17:05:04
|
Revision: 279 http://mavnet.svn.sourceforge.net/mavnet/?rev=279&view=rev Author: corts Date: 2009-04-03 17:04:55 +0000 (Fri, 03 Apr 2009) Log Message: ----------- added references for 3.5 Added Paths: ----------- trunk/Maverick.net/lib/net-3.5/ trunk/Maverick.net/lib/net-3.5/log4net.dll trunk/Maverick.net/lib/net-3.5/nunit.framework.dll Added: trunk/Maverick.net/lib/net-3.5/log4net.dll =================================================================== (Binary files differ) Property changes on: trunk/Maverick.net/lib/net-3.5/log4net.dll ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: trunk/Maverick.net/lib/net-3.5/nunit.framework.dll =================================================================== (Binary files differ) Property changes on: trunk/Maverick.net/lib/net-3.5/nunit.framework.dll ___________________________________________________________________ Added: svn:mime-type + application/octet-stream This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-04-03 17:04:08
|
Revision: 278 http://mavnet.svn.sourceforge.net/mavnet/?rev=278&view=rev Author: corts Date: 2009-04-03 17:03:57 +0000 (Fri, 03 Apr 2009) Log Message: ----------- work on command line build Modified Paths: -------------- trunk/Maverick.net/Maverick.build trunk/Maverick.net/Maverick.sln Modified: trunk/Maverick.net/Maverick.build =================================================================== (Binary files differ) Modified: trunk/Maverick.net/Maverick.sln =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-04-03 17:02:35
|
Revision: 277 http://mavnet.svn.sourceforge.net/mavnet/?rev=277&view=rev Author: corts Date: 2009-04-03 17:02:30 +0000 (Fri, 03 Apr 2009) Log Message: ----------- upgrade to 1.2.10.0 Modified Paths: -------------- trunk/Maverick.net/lib/net-1.1/log4net.dll trunk/Maverick.net/lib/net-2.0/log4net.dll Modified: trunk/Maverick.net/lib/net-1.1/log4net.dll =================================================================== (Binary files differ) Modified: trunk/Maverick.net/lib/net-2.0/log4net.dll =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-04-03 16:52:38
|
Revision: 276 http://mavnet.svn.sourceforge.net/mavnet/?rev=276&view=rev Author: corts Date: 2009-04-03 16:52:33 +0000 (Fri, 03 Apr 2009) Log Message: ----------- reformatted Modified Paths: -------------- trunk/Maverick.net/examples/Friendbook-aspx/Web.config Modified: trunk/Maverick.net/examples/Friendbook-aspx/Web.config =================================================================== --- trunk/Maverick.net/examples/Friendbook-aspx/Web.config 2009-03-23 21:11:29 UTC (rev 275) +++ trunk/Maverick.net/examples/Friendbook-aspx/Web.config 2009-04-03 16:52:33 UTC (rev 276) @@ -1,39 +1,39 @@ <?xml version="1.0" encoding="UTF-8"?> <configuration> - <configSections> - <sectionGroup name="Maverick"> - <section name="Dispatcher" type="System.Configuration.NameValueSectionHandler,system, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, Custom=null" /> - </sectionGroup> - <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" /> - </configSections> - <Maverick> - <Dispatcher> - <add key="configFile" value="maverick.config" /> - <add key="reloadCommand" value="reload" /> - <add key="currentConfigCommand" value="currentConfig" /> - <add key="limitTransformsParam" value="maxTransforms" /> - </Dispatcher> - </Maverick> - <log4net> - <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender,log4net"> - <param name="File" value="c:\\logs\\Friendbook.log" /> - <param name="AppendToFile" value="true" /> - <param name="MaxSizeRollBackups" value="10" /> - <param name="MaximumFileSize" value="5MB" /> - <param name="RollingStyle" value="Size" /> - <param name="StaticLogFileName" value="true" /> - <layout type="log4net.Layout.PatternLayout,log4net"> - <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" /> - </layout> - </appender> - <!-- Setup the root category, add the appenders and set the default priority --> - <root> - <priority value="INFO" /> - <appender-ref ref="RollingLogFileAppender" /> - </root> - </log4net> - <system.web> - <!-- DYNAMIC DEBUG COMPILATION + <configSections> + <sectionGroup name="Maverick"> + <section name="Dispatcher" type="System.Configuration.NameValueSectionHandler,system, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, Custom=null" /> + </sectionGroup> + <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" /> + </configSections> + <Maverick> + <Dispatcher> + <add key="configFile" value="maverick.config" /> + <add key="reloadCommand" value="reload" /> + <add key="currentConfigCommand" value="currentConfig" /> + <add key="limitTransformsParam" value="maxTransforms" /> + </Dispatcher> + </Maverick> + <log4net> + <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender,log4net"> + <param name="File" value="c:\\logs\\Friendbook.log" /> + <param name="AppendToFile" value="true" /> + <param name="MaxSizeRollBackups" value="10" /> + <param name="MaximumFileSize" value="5MB" /> + <param name="RollingStyle" value="Size" /> + <param name="StaticLogFileName" value="true" /> + <layout type="log4net.Layout.PatternLayout,log4net"> + <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" /> + </layout> + </appender> + <!-- Setup the root category, add the appenders and set the default priority --> + <root> + <priority value="INFO" /> + <appender-ref ref="RollingLogFileAppender" /> + </root> + </log4net> + <system.web> + <!-- DYNAMIC DEBUG COMPILATION Set compilation debug="true" to enable ASPX debugging. Otherwise, setting this value to false will improve runtime performance of this application. Set compilation debug="true" to insert debugging symbols (.pdb information) @@ -42,12 +42,17 @@ false at all other times. For more information, refer to the documentation about debugging ASP .NET files. --> - <compilation defaultLanguage="c#" debug="true"> - <compilers> - <compiler language="c#" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" extension=".cs" compilerOptions="/d:DEBUG;TRACE /warnaserror+ /d:DEBUG;TRACE /warnaserror+" /></compilers> - <assemblies> - <add assembly="System.Runtime.Serialization.Formatters.Soap, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" /></assemblies></compilation> - <!-- CUSTOM ERROR MESSAGES +<!-- + <compilation defaultLanguage="c#" debug="true"> + <compilers> + <compiler language="c#" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" extension=".cs" compilerOptions="/d:DEBUG;TRACE /warnaserror+ /d:DEBUG;TRACE /warnaserror+" /> + </compilers> + <assemblies> + <add assembly="System.Runtime.Serialization.Formatters.Soap, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" /> + </assemblies> + </compilation> +--> + <!-- CUSTOM ERROR MESSAGES Set customError mode values to control the display of user-friendly error messages to users instead of error details (including a stack trace): @@ -57,37 +62,40 @@ on the local Web server. This setting is recommended for security purposes, so that you do not display application detail information to remote clients. --> - <customErrors mode="Off" /> - <!-- AUTHENTICATION + <customErrors mode="Off" /> + <!-- AUTHENTICATION This section sets the authentication policies of the application. Possible modes are "Windows", "Forms", "Passport" and "None" --> - <authentication mode="Windows" /> - <!-- APPLICATION-LEVEL TRACE LOGGING + <authentication mode="Windows" /> + <!-- APPLICATION-LEVEL TRACE LOGGING Application-level tracing enables trace log output for every page within an application. Set trace enabled="true" to enable application trace logging. If pageOutput="true", the trace information will be displayed at the bottom of each page. Otherwise, you can view the application trace log by browsing the "trace.axd" page from your web application root. --> - <trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" /> - <!-- SESSION STATE SETTINGS + <trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" /> + <!-- SESSION STATE SETTINGS By default ASP .NET uses cookies to identify which requests belong to a particular session. If cookies are not available, a session can be tracked by adding a session identifier to the URL. To disable cookies, set sessionState cookieless="true". --> - <sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;user id=sa;password=" cookieless="false" timeout="20" /> - <!-- GLOBALIZATION + <sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;user id=sa;password=" cookieless="false" timeout="20" /> + <!-- GLOBALIZATION This section sets the globalization settings of the application. --> - <globalization requestEncoding="utf-8" responseEncoding="utf-8" /> - <httpHandlers> - <add verb="*" path="*.m" type="Maverick.Dispatcher, Maverick" /> - </httpHandlers> - <xhtmlConformance mode="Legacy" /></system.web> + <globalization requestEncoding="utf-8" responseEncoding="utf-8" /> + <httpHandlers> + <add verb="*" path="*.m" type="Maverick.Dispatcher, Maverick" /> + </httpHandlers> + <xhtmlConformance mode="Legacy" /> + </system.web> +<!-- <system.webServer> - <handlers> - <add name="Maverick.net" path="*.m" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" preCondition="classicMode,runtimeVersionv2.0,bitness32" /> - </handlers> + <handlers> + <add name="Maverick.net" path="*.m" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" preCondition="classicMode,runtimeVersionv2.0,bitness32" /> + </handlers> </system.webServer> +--> </configuration> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-03-23 21:11:42
|
Revision: 275 http://mavnet.svn.sourceforge.net/mavnet/?rev=275&view=rev Author: corts Date: 2009-03-23 21:11:29 +0000 (Mon, 23 Mar 2009) Log Message: ----------- Removed Paths: ------------- trunk/CVSROOT/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2009-03-23 21:10:04
|
Revision: 274 http://mavnet.svn.sourceforge.net/mavnet/?rev=274&view=rev Author: corts Date: 2009-03-23 21:09:46 +0000 (Mon, 23 Mar 2009) Log Message: ----------- remove the old CVSROOT files (couldn't make svndumpfilter work right) Removed Paths: ------------- trunk/CVSROOT/checkoutlist trunk/CVSROOT/commitinfo trunk/CVSROOT/config trunk/CVSROOT/cvswrappers trunk/CVSROOT/editinfo trunk/CVSROOT/loginfo trunk/CVSROOT/modules trunk/CVSROOT/notify trunk/CVSROOT/rcsinfo trunk/CVSROOT/syncmail trunk/CVSROOT/taginfo trunk/CVSROOT/verifymsg Deleted: trunk/CVSROOT/checkoutlist =================================================================== --- trunk/CVSROOT/checkoutlist 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/checkoutlist 2009-03-23 21:09:46 UTC (rev 274) @@ -1,14 +0,0 @@ -# The "checkoutlist" file is used to support additional version controlled -# administrative files in $CVSROOT/CVSROOT, such as template files. -# -# The first entry on a line is a filename which will be checked out from -# the corresponding RCS file in the $CVSROOT/CVSROOT directory. -# The remainder of the line is an error message to use if the file cannot -# be checked out. -# -# File format: -# -# [<whitespace>]<filename><whitespace><error message><end-of-line> -# -# comment lines begin with '#' -syncmail \ No newline at end of file Deleted: trunk/CVSROOT/commitinfo =================================================================== --- trunk/CVSROOT/commitinfo 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/commitinfo 2009-03-23 21:09:46 UTC (rev 274) @@ -1,15 +0,0 @@ -# The "commitinfo" file is used to control pre-commit checks. -# The filter on the right is invoked with the repository and a list -# of files to check. A non-zero exit of the filter program will -# cause the commit to be aborted. -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being committed to, relative -# to the $CVSROOT. For the first match that is found, then the remainder -# of the line is the name of the filter to run. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". Deleted: trunk/CVSROOT/config =================================================================== --- trunk/CVSROOT/config 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/config 2009-03-23 21:09:46 UTC (rev 274) @@ -1,14 +0,0 @@ -# Set this to "no" if pserver shouldn't check system users/passwords -#SystemAuth=no - -# Put CVS lock files in this directory rather than directly in the repository. -#LockDir=/var/lock/cvs - -# Set `TopLevelAdmin' to `yes' to create a CVS directory at the top -# level of the new working directory when using the `cvs checkout' -# command. -#TopLevelAdmin=no - -# Set `LogHistory' to `all' or `TOFEWGCMAR' to log all transactions to the -# history file, or a subset as needed (ie `TMAR' logs all write operations) -#LogHistory=TOFEWGCMAR Deleted: trunk/CVSROOT/cvswrappers =================================================================== --- trunk/CVSROOT/cvswrappers 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/cvswrappers 2009-03-23 21:09:46 UTC (rev 274) @@ -1,23 +0,0 @@ -# This file affects handling of files based on their names. -# -# The -t/-f options allow one to treat directories of files -# as a single file, or to transform a file in other ways on -# its way in and out of CVS. -# -# The -m option specifies whether CVS attempts to merge files. -# -# The -k option specifies keyword expansion (e.g. -kb for binary). -# -# Format of wrapper file ($CVSROOT/CVSROOT/cvswrappers or .cvswrappers) -# -# wildcard [option value][option value]... -# -# where option is one of -# -f from cvs filter value: path to filter -# -t to cvs filter value: path to filter -# -m update methodology value: MERGE or COPY -# -k expansion mode value: b, o, kkv, &c -# -# and value is a single-quote delimited value. -# For example: -#*.gif -k 'b' Deleted: trunk/CVSROOT/editinfo =================================================================== --- trunk/CVSROOT/editinfo 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/editinfo 2009-03-23 21:09:46 UTC (rev 274) @@ -1,21 +0,0 @@ -# The "editinfo" file is used to allow verification of logging -# information. It works best when a template (as specified in the -# rcsinfo file) is provided for the logging procedure. Given a -# template with locations for, a bug-id number, a list of people who -# reviewed the code before it can be checked in, and an external -# process to catalog the differences that were code reviewed, the -# following test can be applied to the code: -# -# Making sure that the entered bug-id number is correct. -# Validating that the code that was reviewed is indeed the code being -# checked in (using the bug-id number or a seperate review -# number to identify this particular code set.). -# -# If any of the above test failed, then the commit would be aborted. -# -# Actions such as mailing a copy of the report to each reviewer are -# better handled by an entry in the loginfo file. -# -# One thing that should be noted is the the ALL keyword is not -# supported. There can be only one entry that matches a given -# repository. Deleted: trunk/CVSROOT/loginfo =================================================================== --- trunk/CVSROOT/loginfo 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/loginfo 2009-03-23 21:09:46 UTC (rev 274) @@ -1,28 +0,0 @@ -# The "loginfo" file controls where "cvs commit" log information -# is sent. The first entry on a line is a regular expression which must match -# the directory that the change is being made to, relative to the -# $CVSROOT. If a match is found, then the remainder of the line is a filter -# program that should expect log information on its standard input. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name ALL appears as a regular expression it is always used -# in addition to the first matching regex or DEFAULT. -# -# You may specify a format string as part of the -# filter. The string is composed of a `%' followed -# by a single format character, or followed by a set of format -# characters surrounded by `{' and `}' as separators. The format -# characters are: -# -# s = file name -# V = old version number (pre-checkin) -# v = new version number (post-checkin) -# -# For example: -#DEFAULT (echo ""; id; echo %s; date; cat) >> $CVSROOT/CVSROOT/commitlog -# or -#DEFAULT (echo ""; id; echo %{sVv}; date; cat) >> $CVSROOT/CVSROOT/commitlog -CVSROOT $CVSROOT/CVSROOT/syncmail %{sVv} mav...@li... -DEFAULT $CVSROOT/CVSROOT/syncmail %{sVv} mav...@li... Deleted: trunk/CVSROOT/modules =================================================================== --- trunk/CVSROOT/modules 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/modules 2009-03-23 21:09:46 UTC (rev 274) @@ -1,26 +0,0 @@ -# Three different line formats are valid: -# key -a aliases... -# key [options] directory -# key [options] directory files... -# -# Where "options" are composed of: -# -i prog Run "prog" on "cvs commit" from top-level of module. -# -o prog Run "prog" on "cvs checkout" of module. -# -e prog Run "prog" on "cvs export" of module. -# -t prog Run "prog" on "cvs rtag" of module. -# -u prog Run "prog" on "cvs update" of module. -# -d dir Place module in directory "dir" instead of module name. -# -l Top-level directory only -- do not recurse. -# -# NOTE: If you change any of the "Run" options above, you'll have to -# release and re-checkout any working directories of these modules. -# -# And "directory" is a path to a directory relative to $CVSROOT. -# -# The "-a" option specifies an alias. An alias is interpreted as if -# everything on the right of the "-a" had been typed on the command line. -# -# You can encode a module within a module by using the special '&' -# character to interpose another module into the current module. This -# can be useful for creating a module that consists of many directories -# spread out over the entire source repository. Deleted: trunk/CVSROOT/notify =================================================================== --- trunk/CVSROOT/notify 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/notify 2009-03-23 21:09:46 UTC (rev 274) @@ -1,12 +0,0 @@ -# The "notify" file controls where notifications from watches set by -# "cvs watch add" or "cvs edit" are sent. The first entry on a line is -# a regular expression which is tested against the directory that the -# change is being made to, relative to the $CVSROOT. If it matches, -# then the remainder of the line is a filter program that should contain -# one occurrence of %s for the user to notify, and information on its -# standard input. -# -# "ALL" or "DEFAULT" can be used in place of the regular expression. -# -# For example: -#ALL mail %s -s "CVS notification" Deleted: trunk/CVSROOT/rcsinfo =================================================================== --- trunk/CVSROOT/rcsinfo 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/rcsinfo 2009-03-23 21:09:46 UTC (rev 274) @@ -1,13 +0,0 @@ -# The "rcsinfo" file is used to control templates with which the editor -# is invoked on commit and import. -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being made to, relative to the -# $CVSROOT. For the first match that is found, then the remainder of the -# line is the name of the file that contains the template. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". Deleted: trunk/CVSROOT/syncmail =================================================================== --- trunk/CVSROOT/syncmail 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/syncmail 2009-03-23 21:09:46 UTC (rev 274) @@ -1,323 +0,0 @@ -#! /usr/bin/python - -# NOTE: Until SourceForge installs a modern version of Python on the cvs -# servers, this script MUST be compatible with Python 1.5.2. - -"""Complicated notification for CVS checkins. - -This script is used to provide email notifications of changes to the CVS -repository. These email changes will include context diffs of the changes. -Really big diffs will be trimmed. - -This script is run from a CVS loginfo file (see $CVSROOT/CVSROOT/loginfo). To -set this up, create a loginfo entry that looks something like this: - - mymodule /path/to/this/script %%s som...@yo...main - -In this example, whenever a checkin that matches `mymodule' is made, this -script is invoked, which will generate the diff containing email, and send it -to som...@yo...main. - - Note: This module used to also do repository synchronizations via - rsync-over-ssh, but since the repository has been moved to SourceForge, - this is no longer necessary. The syncing functionality has been ripped - out in the 3.0, which simplifies it considerably. Access the 2.x versions - to refer to this functionality. Because of this, the script is misnamed. - -It no longer makes sense to run this script from the command line. Doing so -will only print out this usage information. - -Usage: - - %(PROGRAM)s [options] <%%S> email-addr [email-addr ...] - -Where options are: - - --cvsroot=<path> - Use <path> as the environment variable CVSROOT. Otherwise this - variable must exist in the environment. - - --context=# - -C # - Include # lines of context around lines that differ (default: 2). - - -c - Produce a context diff (default). - - -u - Produce a unified diff (smaller). - - --quiet / -q - Don't print as much status to stdout. - - --fromhost=hostname - -f hostname - The hostname that email messages appear to be coming from. The From: - header will of the outgoing message will look like user@hostname. By - default, hostname is the machine's fully qualified domain name. - - --help / -h - Print this text. - -The rest of the command line arguments are: - - <%%S> - CVS %%s loginfo expansion. When invoked by CVS, this will be a single - string containing the directory the checkin is being made in, relative - to $CVSROOT, followed by the list of files that are changing. If the - %%s in the loginfo file is %%{sVv}, context diffs for each of the - modified files are included in any email messages that are generated. - - email-addrs - At least one email address. -""" -import os -import sys -import re -import time -import string -import getopt -import smtplib -import pwd -import socket - -try: - from socket import getfqdn -except ImportError: - def getfqdn(): - # Python 1.5.2 :( - hostname = socket.gethostname() - byaddr = socket.gethostbyaddr(socket.gethostbyname(hostname)) - aliases = byaddr[1] - aliases.insert(0, byaddr[0]) - aliases.insert(0, hostname) - for fqdn in aliases: - if '.' in fqdn: - break - else: - fqdn = 'localhost.localdomain' - return fqdn - - -from cStringIO import StringIO - -# Which SMTP server to do we connect to? Empty string means localhost. -MAILHOST = 'localhost' -MAILPORT = 25 - -# Diff trimming stuff -DIFF_HEAD_LINES = 20 -DIFF_TAIL_LINES = 20 -DIFF_TRUNCATE_IF_LARGER = 1000 - -EMPTYSTRING = '' -SPACE = ' ' -DOT = '.' -COMMASPACE = ', ' - -PROGRAM = sys.argv[0] - -BINARY_EXPLANATION_LINES = [ - "(This appears to be a binary file; contents omitted.)\n" - ] - -REVCRE = re.compile("^(NONE|[0-9.]+)$") -NOVERSION = "Couldn't generate diff; no version number found in filespec: %s" -BACKSLASH = "Couldn't generate diff: backslash in filespec's filename: %s" - - - -def usage(code, msg=''): - print __doc__ % globals() - if msg: - print msg - sys.exit(code) - - - -def calculate_diff(filespec, contextlines): - file, oldrev, newrev = string.split(filespec, ',') - # Make sure we can find a CVS version number - if not REVCRE.match(oldrev): - return NOVERSION % filespec - if not REVCRE.match(newrev): - return NOVERSION % filespec - - if string.find(file, '\\') <> -1: - # I'm sorry, a file name that contains a backslash is just too much. - # XXX if someone wants to figure out how to escape the backslashes in - # a safe way to allow filenames containing backslashes, this is the - # place to do it. --Zooko 2002-03-17 - return BACKSLASH % filespec - - if string.find(file, "'") <> -1: - # Those crazy users put single-quotes in their file names! Now we - # have to escape everything that is meaningful inside double-quotes. - filestr = string.replace(file, '`', '\`') - filestr = string.replace(filestr, '"', '\"') - filestr = string.replace(filestr, '$', '\$') - # and quote it with double-quotes. - filestr = '"' + filestr + '"' - else: - # quote it with single-quotes. - filestr = "'" + file + "'" - if oldrev == 'NONE': - try: - if os.path.exists(file): - fp = open(file) - else: - update_cmd = "cvs -fn update -r %s -p %s" % (newrev, filestr) - fp = os.popen(update_cmd) - lines = fp.readlines() - fp.close() - # Is this a binary file? Let's look at the first few - # lines to figure it out: - for line in lines[:5]: - for c in string.rstrip(line): - if c in string.whitespace: - continue - if c < ' ' or c > chr(127): - lines = BINARY_EXPLANATION_LINES[:] - break - lines.insert(0, '--- NEW FILE: %s ---\n' % file) - except IOError, e: - lines = ['***** Error reading new file: ', - str(e), '\n***** file: ', file, ' cwd: ', os.getcwd()] - elif newrev == 'NONE': - lines = ['--- %s DELETED ---\n' % file] - else: - # This /has/ to happen in the background, otherwise we'll run into CVS - # lock contention. What a crock. - if contextlines > 0: - difftype = "-C " + str(contextlines) - else: - difftype = "-u" - diffcmd = "/usr/bin/cvs -f diff -kk %s --minimal -r %s -r %s %s" \ - % (difftype, oldrev, newrev, filestr) - fp = os.popen(diffcmd) - lines = fp.readlines() - sts = fp.close() - # ignore the error code, it always seems to be 1 :( -## if sts: -## return 'Error code %d occurred during diff\n' % (sts >> 8) - if len(lines) > DIFF_TRUNCATE_IF_LARGER: - removedlines = len(lines) - DIFF_HEAD_LINES - DIFF_TAIL_LINES - del lines[DIFF_HEAD_LINES:-DIFF_TAIL_LINES] - lines.insert(DIFF_HEAD_LINES, - '[...%d lines suppressed...]\n' % removedlines) - return string.join(lines, '') - - - -def blast_mail(subject, people, filestodiff, contextlines, fromhost): - # cannot wait for child process or that will cause parent to retain cvs - # lock for too long. Urg! - if not os.fork(): - # in the child - # give up the lock you cvs thang! - time.sleep(2) - # Create the smtp connection to the localhost - conn = smtplib.SMTP() - conn.connect(MAILHOST, MAILPORT) - user = pwd.getpwuid(os.getuid())[0] - domain = fromhost or getfqdn() - author = '%s@%s' % (user, domain) - s = StringIO() - sys.stdout = s - try: - print '''\ -From: %(author)s -To: %(people)s -Subject: %(subject)s -''' % {'author' : author, - 'people' : string.join(people, COMMASPACE), - 'subject': subject, - } - s.write(sys.stdin.read()) - # append the diffs if available - print - for file in filestodiff: - print calculate_diff(file, contextlines) - finally: - sys.stdout = sys.__stdout__ - resp = conn.sendmail(author, people, s.getvalue()) - conn.close() - os._exit(0) - - - -# scan args for options -def main(): - try: - opts, args = getopt.getopt( - sys.argv[1:], 'hC:cuqf:', - ['fromhost=', 'context=', 'cvsroot=', 'help', 'quiet']) - except getopt.error, msg: - usage(1, msg) - - # parse the options - contextlines = 2 - verbose = 1 - fromhost = None - for opt, arg in opts: - if opt in ('-h', '--help'): - usage(0) - elif opt == '--cvsroot': - os.environ['CVSROOT'] = arg - elif opt in ('-C', '--context'): - contextlines = int(arg) - elif opt == '-c': - if contextlines <= 0: - contextlines = 2 - elif opt == '-u': - contextlines = 0 - elif opt in ('-q', '--quiet'): - verbose = 0 - elif opt in ('-f', '--fromhost'): - fromhost = arg - - # What follows is the specification containing the files that were - # modified. The argument actually must be split, with the first component - # containing the directory the checkin is being made in, relative to - # $CVSROOT, followed by the list of files that are changing. - if not args: - usage(1, 'No CVS module specified') - subject = args[0] - specs = string.split(args[0]) - del args[0] - - # The remaining args should be the email addresses - if not args: - usage(1, 'No recipients specified') - - # Now do the mail command - people = args - - if verbose: - print 'Mailing %s...' % string.join(people, COMMASPACE) - - if specs == ['-', 'Imported', 'sources']: - return - if specs[-3:] == ['-', 'New', 'directory']: - del specs[-3:] - elif len(specs) > 2: - L = specs[:2] - for s in specs[2:]: - prev = L[-1] - if string.count(prev, ',') < 2: - L[-1] = "%s %s" % (prev, s) - else: - L.append(s) - specs = L - - if verbose: - print 'Generating notification message...' - blast_mail(subject, people, specs[1:], contextlines, fromhost) - if verbose: - print 'Generating notification message... done.' - - - -if __name__ == '__main__': - main() - sys.exit(0) Deleted: trunk/CVSROOT/taginfo =================================================================== --- trunk/CVSROOT/taginfo 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/taginfo 2009-03-23 21:09:46 UTC (rev 274) @@ -1,20 +0,0 @@ -# The "taginfo" file is used to control pre-tag checks. -# The filter on the right is invoked with the following arguments: -# -# $1 -- tagname -# $2 -- operation "add" for tag, "mov" for tag -F, and "del" for tag -d -# $3 -- repository -# $4-> file revision [file revision ...] -# -# A non-zero exit of the filter program will cause the tag to be aborted. -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being committed to, relative -# to the $CVSROOT. For the first match that is found, then the remainder -# of the line is the name of the filter to run. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". Deleted: trunk/CVSROOT/verifymsg =================================================================== --- trunk/CVSROOT/verifymsg 2008-11-10 15:01:50 UTC (rev 273) +++ trunk/CVSROOT/verifymsg 2009-03-23 21:09:46 UTC (rev 274) @@ -1,21 +0,0 @@ -# The "verifymsg" file is used to allow verification of logging -# information. It works best when a template (as specified in the -# rcsinfo file) is provided for the logging procedure. Given a -# template with locations for, a bug-id number, a list of people who -# reviewed the code before it can be checked in, and an external -# process to catalog the differences that were code reviewed, the -# following test can be applied to the code: -# -# Making sure that the entered bug-id number is correct. -# Validating that the code that was reviewed is indeed the code being -# checked in (using the bug-id number or a seperate review -# number to identify this particular code set.). -# -# If any of the above test failed, then the commit would be aborted. -# -# Actions such as mailing a copy of the report to each reviewer are -# better handled by an entry in the loginfo file. -# -# One thing that should be noted is the the ALL keyword is not -# supported. There can be only one entry that matches a given -# repository. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <co...@us...> - 2008-11-10 15:02:03
|
Update of /cvsroot/mavnet/Maverick.net/tests In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv12995/tests Added Files: Maverick-Tests.csproj Removed Files: Maverick-Tests-VS2008.csproj Log Message: rename project names to be non-version specific now that only VS2008 is supported --- Maverick-Tests-VS2008.csproj DELETED --- |
From: <co...@us...> - 2008-11-10 15:02:03
|
Update of /cvsroot/mavnet/Maverick.net/examples/Friendbook In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv12995/examples/Friendbook Added Files: Friendbook.csproj Removed Files: Friendbook-VS2008.csproj Log Message: rename project names to be non-version specific now that only VS2008 is supported --- Friendbook-VS2008.csproj DELETED --- |
From: <co...@us...> - 2008-11-10 15:02:00
|
Update of /cvsroot/mavnet/Maverick.net In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv12995 Added Files: Maverick.csproj Maverick.sln Removed Files: Maverick-VS2008.csproj Maverick-VS2008.sln Log Message: rename project names to be non-version specific now that only VS2008 is supported --- Maverick-VS2008.csproj DELETED --- --- Maverick-VS2008.sln DELETED --- |
From: <co...@us...> - 2008-11-08 21:50:06
|
Update of /cvsroot/mavnet/Maverick.net/src/Maverick In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv2202/src/Maverick Modified Files: Dispatcher.cs Log Message: upgrade to VS2008 Index: Dispatcher.cs =================================================================== RCS file: /cvsroot/mavnet/Maverick.net/src/Maverick/Dispatcher.cs,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** Dispatcher.cs 19 Feb 2005 06:50:29 -0000 1.18 --- Dispatcher.cs 8 Nov 2008 21:48:39 -0000 1.19 *************** *** 274,278 **** log.Info("Starting configuration load"); - XmlDocument replacementConfigDocument = this.LoadConfigDocument(context); Loader loader = new Loader(replacementConfigDocument, context); --- 274,277 ---- |
From: <co...@us...> - 2008-11-08 21:50:05
|
Update of /cvsroot/mavnet/Maverick.net/examples/Friendbook-aspx/App_Code In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv2202/examples/Friendbook-aspx/App_Code Added Files: AssemblyInfo.cs Global.asax.cs Log Message: upgrade to VS2008 --- NEW FILE: AssemblyInfo.cs --- using System.Reflection; using System.Runtime.CompilerServices; // // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. // [assembly: AssemblyTitle("")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("")] [assembly: AssemblyCopyright("")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] // // Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: [assembly: AssemblyVersion("1.0.*")] // // In order to sign your assembly you must specify a key to use. Refer to the // Microsoft .NET Framework documentation for more information on assembly signing. // // Use the attributes below to control which key is used for signing. // // Notes: // (*) If no key is specified, the assembly is not signed. // (*) KeyName refers to a key that has been installed in the Crypto Service // Provider (CSP) on your machine. KeyFile refers to a file which contains // a key. // (*) If the KeyFile and the KeyName values are both specified, the // following processing occurs: // (1) If the KeyName can be found in the CSP, that key is used. // (2) If the KeyName does not exist and the KeyFile does exist, the key // in the KeyFile is installed into the CSP and used. // (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility. // When specifying the KeyFile, the location of the KeyFile should be // relative to the "project output directory". The location of the project output // directory is dependent on whether you are working with a local or web project. // For local projects, the project output directory is defined as // <Project Directory>\obj\<Configuration>. For example, if your KeyFile is // located in the project directory, you would specify the AssemblyKeyFile // attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")] // For web projects, the project output directory is defined as // %HOMEPATH%\VSWebCache\<Machine Name>\<Project Directory>\obj\<Configuration>. // (*) Delay Signing is an advanced option - see the Microsoft .NET Framework // documentation for more information on this. // [assembly: AssemblyDelaySign(false)] [assembly: AssemblyKeyFile("")] [assembly: AssemblyKeyName("")] // configure logging from the file specified by System.Configuration.ConfigurationSettings for the AppDomain, and watch for changes [assembly: log4net.Config.XmlConfigurator(Watch=true)] --- NEW FILE: Global.asax.cs --- using System; using System.Collections; using System.ComponentModel; using System.Web; using System.Web.SessionState; namespace Friendbook_Aspx { /// <summary> /// Summary description for Global. /// </summary> public class Global : System.Web.HttpApplication { public Global() { InitializeComponent(); } protected void Application_Start(Object sender, EventArgs e) { } protected void Session_Start(Object sender, EventArgs e) { } protected void Application_BeginRequest(Object sender, EventArgs e) { } protected void Application_EndRequest(Object sender, EventArgs e) { } protected void Application_AuthenticateRequest(Object sender, EventArgs e) { } protected void Application_Error(Object sender, EventArgs e) { } protected void Session_End(Object sender, EventArgs e) { } protected void Application_End(Object sender, EventArgs e) { } #region Web Form Designer generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { } #endregion } } |
From: <co...@us...> - 2008-11-08 21:50:05
|
Update of /cvsroot/mavnet/Maverick.net/src/Maverick/Flow In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv2202/src/Maverick/Flow Modified Files: Loader.cs Log Message: upgrade to VS2008 Index: Loader.cs =================================================================== RCS file: /cvsroot/mavnet/Maverick.net/src/Maverick/Flow/Loader.cs,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** Loader.cs 26 Jan 2005 14:01:33 -0000 1.8 --- Loader.cs 8 Nov 2008 21:48:39 -0000 1.9 *************** *** 193,195 **** } } ! } --- 193,195 ---- } } ! } \ No newline at end of file |
From: <co...@us...> - 2008-11-08 21:50:05
|
Update of /cvsroot/mavnet/Maverick.net/examples/Friendbook-xsl/App_Code In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv2202/examples/Friendbook-xsl/App_Code Added Files: AssemblyInfo.cs Global.asax.cs Log Message: upgrade to VS2008 --- NEW FILE: AssemblyInfo.cs --- using System.Reflection; using System.Runtime.CompilerServices; // // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. // [assembly: AssemblyTitle("")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("")] [assembly: AssemblyCopyright("")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] // // Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: [assembly: AssemblyVersion("1.0.*")] // // In order to sign your assembly you must specify a key to use. Refer to the // Microsoft .NET Framework documentation for more information on assembly signing. // // Use the attributes below to control which key is used for signing. // // Notes: // (*) If no key is specified, the assembly is not signed. // (*) KeyName refers to a key that has been installed in the Crypto Service // Provider (CSP) on your machine. KeyFile refers to a file which contains // a key. // (*) If the KeyFile and the KeyName values are both specified, the // following processing occurs: // (1) If the KeyName can be found in the CSP, that key is used. // (2) If the KeyName does not exist and the KeyFile does exist, the key // in the KeyFile is installed into the CSP and used. // (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility. // When specifying the KeyFile, the location of the KeyFile should be // relative to the "project output directory". The location of the project output // directory is dependent on whether you are working with a local or web project. // For local projects, the project output directory is defined as // <Project Directory>\obj\<Configuration>. For example, if your KeyFile is // located in the project directory, you would specify the AssemblyKeyFile // attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")] // For web projects, the project output directory is defined as // %HOMEPATH%\VSWebCache\<Machine Name>\<Project Directory>\obj\<Configuration>. // (*) Delay Signing is an advanced option - see the Microsoft .NET Framework // documentation for more information on this. // [assembly: AssemblyDelaySign(false)] [assembly: AssemblyKeyFile("")] [assembly: AssemblyKeyName("")] // configure logging from the file specified by System.Configuration.ConfigurationSettings for the AppDomain, and watch for changes [assembly: log4net.Config.XmlConfigurator(Watch=true)] --- NEW FILE: Global.asax.cs --- using System; using System.Collections; using System.ComponentModel; using System.Web; using System.Web.SessionState; namespace Friendbook_xsl { /// <summary> /// Summary description for Global. /// </summary> public class Global : System.Web.HttpApplication { public Global() { InitializeComponent(); } protected void Application_Start(Object sender, EventArgs e) { } protected void Session_Start(Object sender, EventArgs e) { } protected void Application_BeginRequest(Object sender, EventArgs e) { } protected void Application_EndRequest(Object sender, EventArgs e) { } protected void Application_AuthenticateRequest(Object sender, EventArgs e) { } protected void Application_Error(Object sender, EventArgs e) { } protected void Session_End(Object sender, EventArgs e) { } protected void Application_End(Object sender, EventArgs e) { } #region Web Form Designer generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { } #endregion } } |
From: <co...@us...> - 2008-11-08 21:50:05
|
Update of /cvsroot/mavnet/Maverick.net/examples/Calendar/App_Code In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv2202/examples/Calendar/App_Code Added Files: AssemblyInfo.cs Global.asax.cs Log Message: upgrade to VS2008 --- NEW FILE: AssemblyInfo.cs --- using System.Reflection; using System.Runtime.CompilerServices; // // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. // [assembly: AssemblyTitle("")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("")] [assembly: AssemblyCopyright("")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] // // Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: [assembly: AssemblyVersion("1.0.*")] // // In order to sign your assembly you must specify a key to use. Refer to the // Microsoft .NET Framework documentation for more information on assembly signing. // // Use the attributes below to control which key is used for signing. // // Notes: // (*) If no key is specified, the assembly is not signed. // (*) KeyName refers to a key that has been installed in the Crypto Service // Provider (CSP) on your machine. KeyFile refers to a file which contains // a key. // (*) If the KeyFile and the KeyName values are both specified, the // following processing occurs: // (1) If the KeyName can be found in the CSP, that key is used. // (2) If the KeyName does not exist and the KeyFile does exist, the key // in the KeyFile is installed into the CSP and used. // (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility. // When specifying the KeyFile, the location of the KeyFile should be // relative to the "project output directory". The location of the project output // directory is dependent on whether you are working with a local or web project. // For local projects, the project output directory is defined as // <Project Directory>\obj\<Configuration>. For example, if your KeyFile is // located in the project directory, you would specify the AssemblyKeyFile // attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")] // For web projects, the project output directory is defined as // %HOMEPATH%\VSWebCache\<Machine Name>\<Project Directory>\obj\<Configuration>. // (*) Delay Signing is an advanced option - see the Microsoft .NET Framework // documentation for more information on this. // [assembly: AssemblyDelaySign(false)] [assembly: AssemblyKeyFile("")] [assembly: AssemblyKeyName("")] // configure logging from the file specified by System.Configuration.ConfigurationSettings for the AppDomain, and watch for changes [assembly: log4net.Config.XmlConfigurator(Watch=true)] --- NEW FILE: Global.asax.cs --- using System; using System.Collections; using System.ComponentModel; using System.Web; using System.Web.SessionState; namespace Sandbox { /// <summary> /// Summary description for Global. /// </summary> public class Global : System.Web.HttpApplication { public Global() { InitializeComponent(); } protected void Application_Start(Object sender, EventArgs e) { } protected void Session_Start(Object sender, EventArgs e) { } protected void Application_BeginRequest(Object sender, EventArgs e) { } protected void Application_EndRequest(Object sender, EventArgs e) { } protected void Application_AuthenticateRequest(Object sender, EventArgs e) { } protected void Application_Error(Object sender, EventArgs e) { } protected void Session_End(Object sender, EventArgs e) { } protected void Application_End(Object sender, EventArgs e) { } #region Web Form Designer generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { } #endregion } } |