Giter VIP home page Giter VIP logo

agg-sharp's People

Contributors

ctrlaltdavid01 avatar dependabot[bot] avatar ech avatar fortsnek9348 avatar gregory-diaz avatar jeske avatar jlewin avatar johnlewin avatar kevinepope avatar krolco avatar larsbrubaker avatar mmoening avatar oneill avatar prepare avatar romout avatar unlimitedbacon avatar winstonmao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

agg-sharp's Issues

OpenSCadOutput writes numbers in scad-code using current culture

When converting double-values to text, ".ToString()" uses the settings of the current culture that is configured in the operating system (or the current thread). A call to ".ToString(CultureInfo.InvariantCulture)" must be used instead. If I run the current code on a system with e.g. German culture settings and specify a radius of 5/2 it will generate this code: r=2,5 which obviously doesn't work, because commas are used to separate parameters.

Agg-Sharp Tests Failing on Windows 10 Insider Preview 17713.rs5_release.180706

MouserInteractionTests.DoClickButtonInWindow:

System.AggregateException : One or more errors occurred.
  ----> NUnit.Framework.AssertionException :   Got left button click
  Expected: True
  But was:  False

   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at NUnit.ApplicationDomain.TaskWaitTestResultHandler.Process(Task task)
   at NUnit.ApplicationDomain.Internal.InDomainTestMethodRunner.RunSetupAndTest(TestMethodInformation testMethodInfo, Object instance)
   at NUnit.ApplicationDomain.Internal.InDomainTestMethodRunner.Execute(TestMethodInformation testMethodInfo)
   at NUnit.ApplicationDomain.Internal.InDomainTestMethodRunner.Execute(TestMethodInformation testMethodInfo)
   at NUnit.ApplicationDomain.Internal.ParentAppDomainRunner.Run(ITest test, Type appDomainFactoryType)
   at NUnit.Framework.RunInApplicationDomainAttribute.RunInApplicationDomain(ITest testDetails)
   at NUnit.Framework.Internal.Commands.BeforeAndAfterTestCommand.Execute(TestExecutionContext context)
--AssertionException
   at NUnit.Framework.Assert.ReportFailure(String message)
   at NUnit.Framework.Assert.That[TActual](TActual actual, IResolveConstraint expression, String message, Object[] args)
   at MatterHackers.Agg.UI.Tests.MouseInteractionTests.<>c__DisplayClass0_0.<DoClickButtonInWindow>b__0(AutomationRunner testRunner) in C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\Submodules\agg-sharp\Tests\Agg.Tests\Agg.UI\MouseInteractionTests.cs:line 64
   at MatterHackers.GuiAutomation.AutomationRunner.<>c__DisplayClass71_0.<ShowWindowAndExecuteTests>b__1() in C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\Submodules\agg-sharp\GuiAutomation\AutomationRunner.cs:line 1089
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at MatterHackers.Agg.UI.Tests.MouseInteractionTests.<DoClickButtonInWindow>d__0.MoveNext() in C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\Submodules\agg-sharp\Tests\Agg.Tests\Agg.UI\MouseInteractionTests.cs:line 90

**This is one example.
I identified the issue when I tried to install the MatterControll Beta and the UI was totally unresponsive.

Consequently, the MatterControll tests are failing too:**


System.AggregateException : One or more errors occurred.
  ----> System.Exception : ClickByName Failed: Named GuiWidget not found [-Temporary Row Item Collection]
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at NUnit.ApplicationDomain.TaskWaitTestResultHandler.Process(Task task)
   at NUnit.ApplicationDomain.Internal.InDomainTestMethodRunner.RunSetupAndTest(TestMethodInformation testMethodInfo, Object instance)
   at NUnit.ApplicationDomain.Internal.InDomainTestMethodRunner.Execute(TestMethodInformation testMethodInfo)
   at NUnit.ApplicationDomain.Internal.InDomainTestMethodRunner.Execute(TestMethodInformation testMethodInfo)
   at NUnit.ApplicationDomain.Internal.ParentAppDomainRunner.Run(ITest test, Type appDomainFactoryType)
   at NUnit.Framework.RunInApplicationDomainAttribute.RunInApplicationDomain(ITest testDetails)
   at NUnit.Framework.Internal.Commands.BeforeAndAfterTestCommand.Execute(TestExecutionContext context)
--Exception
   at MatterHackers.GuiAutomation.AutomationRunner.ClickByName(String widgetName, SearchRegion searchRegion, Point2D offset, ClickOrigin origin, Boolean isDoubleClick) in C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\Submodules\agg-sharp\GuiAutomation\AutomationRunner.cs:line 716
   at MatterHackers.GuiAutomation.AutomationRunner.DoubleClickByName(String widgetName, SearchRegion searchRegion, Point2D offset, ClickOrigin origin) in C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\Submodules\agg-sharp\GuiAutomation\AutomationRunner.cs:line 802
   at MatterHackers.MatterControl.Tests.Automation.MatterControlUtilities.NavigateToFolder(AutomationRunner testRunner, String libraryRowItemName) in C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\Tests\MatterControl.Tests\MatterControl\MatterControlUtilities.cs:line 466
   at MatterHackers.MatterControl.Tests.Automation.LibraryDownloadsTests.<>c.<CreateFolder>b__6_0(AutomationRunner testRunner) in C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\Tests\MatterControl.AutomationTests\LibraryDownloadsTest.cs:line 138
   at MatterHackers.GuiAutomation.AutomationRunner.<>c__DisplayClass71_0.<ShowWindowAndExecuteTests>b__1() in C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\Submodules\agg-sharp\GuiAutomation\AutomationRunner.cs:line 1089
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at MatterHackers.MatterControl.Tests.Automation.MatterControlUtilities.<RunTest>d__49.MoveNext() in C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\Tests\MatterControl.Tests\MatterControl\MatterControlUtilities.cs:line 673
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at MatterHackers.MatterControl.Tests.Automation.LibraryDownloadsTests.<CreateFolder>d__6.MoveNext() in C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\Tests\MatterControl.AutomationTests\LibraryDownloadsTest.cs:line 132

   Overriding StaticData: C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\StaticData
   Overriding ApplicationUserDataPath: C:\Users\Vinicius.Miguel\Source\Repos\MatterControl\Tests\temp\2018-08-14T17-29-03\Test0
Time to '': 928

Make api to access theme colors by name.

This is to support more theme colors and to be able to reorganize the color list without breaking code.
Specific requests like this #154 should be supported.

Don't let the theme colors be accessed by index it just creates dependencies that are hard to fix.

Other improvements would be to be able to add (and remove) colors at run time.

Architectural Improvement: Provide Abstraction Assemblies.

I'm facing the issue of creating an application based on agg-sharp and would like to provide a public API for the application extension. The way agg is designed now, I would need to reference the library directly generating undesired dependency.

My suggestion is to extract interfaces and enumerators from Agg and Gui and create additional interfaces for classes that are not implementing their own interfaces like GuiWidget, for example, creating Agg.Abstractions and Gui.Abstractions assemblies.

This should not generate any breaking change in code level; naturally, child projects like MatterControl need to reference the extra projects to have all the references.

I'm willing to provide a pull request with those changes if you believe the contribution will provide value to the project.

Replace RemoveAllChildren with CloseChildren

Function is frequently used as a helper method to empty a widget and we almost certainly want CloseChildren in all cases where we're not reusing widgets. Widgets that want the RemoveAllChildren behavior should use RemoveChild, keep their references and reuse as appropriate. This will clarify when the reuse behavior is desired and ensure we clean up resources by always calling close when no reuse was required

Rename CloseAllChildren to simply CloseChildren

As a side note jQuery thought the best way to convey this behavior was with the .Empty() function, which removes all children and releases all event references to prevent memory leaks.

Android Example

Hi, can this library be used in Android? Any example?

Thanks.-
Regards.-

subpixel rendering

Hello!

  1. THANK YOU VERY MUCH! for your work on agg-sharp
    I'm a big fan of your works. :)
    YOU are one of my teacher.
  2. I have a question,
    Do you have any idea on ...
    How to implement a Subpixel Rendering base on
    Agg Scanline Technique,
    I've try it but it still not good as expected

THANK YOU
REGARDS
:)

Win

allow idleCallBackTimer.Interval to be configurable

Application locks up and UI (MatterControl) becomes non-responsive for smaller values of idleCallBackTimer.Interval (around 10). Values slightly higher than that seem to cause the application to function correctly.
Allowing idleCallBackTimer.Interval (agg-sharp/PlatformWin32/win32/WinformsSystemWindow.cs:82) to be configurable will allow finetuning the value for systems where System.Timers.Timer doesn't function for an arbitrary Interval value.

OS: ArchLinux 64bit
Application: MatterControl 2.0 beta

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.