twain / twain-cs

A C# interface for TWAIN
168 stars 67 forks source link

suggestion - group projects under one solution [sf#9] #13

Closed kolomiets closed 7 years ago

kolomiets commented 7 years ago

Reported by mcdon on 2014-11-20 17:12 UTC I suggest organizing the projects under a single solution. I think the projects are easier to work with when organized under a single solution. Some dll references would have to be replaced with project references.

There's alot of noise in the attached patch, but it moves some projects and code files to different folders, updates a solution to include all projects, and changes some dll references to project references.

kolomiets commented 7 years ago

Commented by mlmcl on 2014-11-21 12:53 UTC Thanks for the suggestion. I selected the current format to achieve two goals, to make the project easy to maintain, and to make it easy for developers to use the twaincsscan code as a starting point for a scanning project.

My expectation is that most developers will pull out the three most important files: twainh.cs, twain.cs and twaincstool.cs and just include them in their own projects. This is what I would do if I was using twaincsscan as seed code for a new project. At no time do I expect any developer to maintain the layout as-is in their own project.

I reference this in the documentation, but since you're raising this point I'll see if I can add some clarity there...

kolomiets commented 7 years ago

Commented by mcdon on 2014-11-21 16:27 UTC That makes sense that consumers would include those core code files in their own projects. For example Mono.Options is consumed by including code directly (https://www.nuget.org/packages/Mono.Options/).

I thought it'd be easier to work with the projects under one solution rather than separate solutions. In my case I tried a change in TWAIN.cs and TWAINH.cs that rippled to TWAINCSTool.cs, then used twaincsscan to verify I didn't break something. In that scenario I'd need 3 solutions opened and have to manage the build order manually.

Great project, it's helped me learn much about TWAIN.

kolomiets commented 7 years ago

Updated by mlmcl on 2015-03-14 15:28 UTC

kolomiets commented 7 years ago

Commented by mlmcl on 2015-03-14 15:28 UTC I came over to your side on this, so now the TWAIN CS solutions includes the other projects. Fixed in 2.3.1.0...