How can I use dockpanel in Linux/Mono with all its features? - linux

I would like to use dockpanel suite in Linux or Mono platform. I heard that there is some methods to modify the source code of dockpanel so that it can be used in Linux platform with all its features like drag and drop and all.Can anyone guide me to achieve that?

Due to its close bindings to Win32 API/PInvoke, currently it is impossible to use full features on Mono. You probably misinterpreted others' words.
Edited: DockPanel Suite 2.6 and above contains Mono support that I developed, http://dockpanelsuite.com

Yes and No.. You can write a silverlight 4.0 program and run it in a browser window on linux you can use silverlight controls.
If you are feeling really brave you can use MoonLight (silverlight by mono) to write full desktop apps on linux. One helpful set of tools (shameless plug) for doing this is MoonBase
But.. Generally, No, if you mean the WPF DockPanel control, you can't use that on top of Mono.

I know you've used WPF tag, but what you heard indicates rather winforms. In such case you may be interested in this. If you really had WPF in mind, look at the IanNorton's answer.

Related

Can I port a cocoa app made in swift to Windows and Linux?

I have a Cocoa app that I wrote targeting OS X 10.11 using swift and storyboards. Is there a way to port it to Linux and Windows, or at least part of it? (e.g. moving some code a Cocoa framework and using a tool to port it etc.)
I saw this question that mentions Cocotron, but it's only for Objective-C and it seems it's not fully developed.
Thanks for you Advice
Apple has said that Swift will be open sourced "later this year" and ported to Linux, but they haven't said any such thing about Windows.
QT is one of the solutions for porting cocoa to windows, but even qt is limited... in a good way. i mean youre not gonna want to program a windows application with ios features in mind like screen shaking.
other solutions consist of devolpers porting cocoa functions and they as well as qt can be incomplete even within the realm of possibility like volume buttons and clicking to change views, etc.
this is the essence of toolchains and frameworks
research those as they are available on swift for windows etc
there are several ways that porting code is possible.
binary, compiler infrastructure are the things that come to mind
sorry if this answer seems uninformative, counter-methodical/"rebellious" or philosophical
Edit: cocoapods.org
Edit: https://swift.org/blog/swift-on-windows/
Edit: http://www.wxswift.org/
there are currently no libraries for writing swift apps on windows, and cocoa is currently only working on ios macos etc
Edit: I recently learned that you can port over existing code onto other platforms via simulation systems like sandboxes and the Wine application on mac which allows 32 bit windows apps to work on mac. if you want to make an app for everyone, then youll have to bundle it with one of those structures - as simple as possible
hope you find this useful
im a beginner swift programmer so this is new to me too
Apple have begun porting Foundation to Swift for use on other platforms:
https://github.com/apple/swift-corelibs-foundation?files=1
UIKit will be much harder but might happen eventually.

Is there a cross platform desktop framework that would utilize native libraries such at .NET and Cocoa?

I am starting a project that is heavily graphics related (think, paint app with layers).
Anyway, I have a long history in C#, Java, JavaScript and Ruby. This application will be open source.
But what I'm looking for is a "build once, use everywhere" framework. Most of the platforms I've looked into either seem to be far too outdated, too complicated, or just not a right fit.
I've looked into Swing, WindowBuilder, wxRuby, etc. So many choices and none seem modern enough, have good documentation, etc.
I was a C# desktop developer for years so if I were targeting Windows only, I would go that route easily. But I want my app to run on Macs too. But, I would like the Mac version to look like it was designed for a Mac and the Windows version designed for Windows, etc. I'm looking at the Mono Project currently. But the idea of my Mac users installing Mono doesn't appeal to me.
Anything Ruby based would be cool but not required.
Anyway, what are some recommendations? I use NetBeans, Eclipse and Visual Studio. So I'm not concerned with learning new IDE's if I had to. I even thought about doing it all in JavaScript and using the canvas but since I need to work with large, local binary files, I didn't know if that would be a good option.
Thanks for any suggestions.
Real Studio can create cross-platform desktop apps for OS X, Windows and Linux. It can also create Cocoa apps and you can use it to interface with Cocoa directly when needed.
However, Real Studio creates Win32 apps, not .NET apps so you cannot directly interface with .NET libraries.

What language choice is good for a c# developer wishing to develop on the Linux platform?

Are there any good OOP languages that you can use on Linux? Obviously Java comes to mind, even running C# under mono.
Looking for a language that can be used for all round development, web dev, desktop, services etc.
Besides Mono C# and Java anything else come to mind?
Python seems to be the obvious choice. There a lot of great web frameworks for it, strong support for development of GTK desktop apps and many others. Ruby should also be mentioned, although it's not usually used for desktop apps.
Don't forget other languages running on top of the JVM either - most notably Scala, Clojure and Groovy.
Vala and D are new and interesting languages with some quality tools available. Vala was primarily designed to work smoothly in GNOME environment.
All of them. Whatever you want to use on Linux, you can.
Linux developent is a lot of things. For GUI application programming, you're most likely to want to program for one of the two big desktop environments, GNOME and KDE, or directly to the widget libraries that they are built on, GTK+ and Qt.
GTK+ is at its root a C library with object orientation being implemented as a set of conventions, very simply explained. However, many now program GTK+ and GNOME using true OOP languages like C++, C# using Mono (some very popular and default GNOME applications are built on Mono).
Another very interesting language for GTK+/GNOME is Vala, which is made to look and behave like C#, but which compiles to idiomatic GTK-using C, so all the GTK+ OOP conventions are lifted up to be part of the Vala language.
KDE and Qt are basically C++ libraries, but these also have bindings to other languages.
Both environments have good Python bindings.
You can still use C# with the Mono project.
Python and Ruby are probably the most logical choice for all-round development. PHP is also great for web development.
Interesting how as soon as Java gets ruled out as an answer that we go straight for dynamic languages.
I'd still suggest using Java as a lot of your C# knowledge will apply with subtle differences in convention.
For the compiled type of app how about Freepascal.
Multi-platform and pretty easy to get the hang of for a C#/Java developer I would have thought. Can do web, desktop, client-server etc etc. And free (as the name implies!). Plus, it's based on Pascal (obviously) so it's well tried and tested and not one of the 'languages du jour' :-)
Give a try to the Free Pascal and Lazarus IDE.
You are getting support for multiple platforms, not only Linux. You write code once and compile it everywhere and you have a quite nice IDE which will speed up your development process.
Take a look at screenshots
TIP: When using Lazarus try the last daily snapshot instead of stable release. Snapshots are much more up to date with bugfixes \ features.
Consider C++ with Boost.org. Boost is always coming out with new releases and it's all open source. Linux and C++ have a very long history and there are plenty of stable tools. Once you know C++, many new worlds seem to open up. There are several good IDE's as well. I like code::blocks.

Flash Programming on Linux

Does anybody knows good IDE that will allow me to develop flash application on Linux?
You may find some useful suggestions over here.
I use Flex Builder for Linux to build applications using Flex. However it can be a bit fiddly to set up currently due to it requiring newer the latest version of the AIR SDK (see the release notes on how to upgrade). Also the MXML editor broken with Eclipse 3.4, so you'll want to stick with 3.3 until they release a patch, or patch 3.4 yourself according to this (untried by me).
In addition to Flex Builder, you can use FDT by PowerFlasher, awesome product.
Website:
http://fdt.powerflasher.com
I don't mean to sound a bit mean, but Noldorin's answer is no good at all and misleading, in fact it is fact-less. Flash development restricted to Windows? REALLY?!?!
I've wrote a command line tool called LFD to make it easier to develop flash applications on Linux.
However LFD mainly is a util tool based on Flex SDK. You may use your favorite code editor like vim or emacs to edit codes. It's not an IDE.
May it help you!

MFC like easy to use tool for Linux

When I used to write test tools in Windows, I use MFC for creating the front-end GUI. This made development of GUI development very fast, and I always used to concentrate on the back-end. Recently I moved to the console based Linux-world. Where most of the things are just console based.
My question: Is there any easy to use equivalent of MFC in Linux?
If you are used to MFC, you will LOVE QT.
http://www.qtsoftware.com/products/
There are a lot of alternatives.
I like wxWidgets. Others will recommend Qt.
Another option is to use Glade to build GTK+ or GNOME applications.
I've never used MFC, but supposedly the wxWidgets toolkit is somewhat MFC-like. Though I prefer Qt over wxWidgets as IMHO the API is nicer, more complete and better documented, and the Qt GUI builder is pretty good.
A nice thing with both Qt and wxWidgets BTW is that they are both cross-platform toolkits; they work on Linux/Unix, Windows, OS X, and maybe other platforms as well.
There's a a huge omission here! gtkmm, the official C++ binding to GTK+, is arguably the modern C++ GUI kit, since it goes out of its way to really use and evolve with the language. For those learning modern C++, it's the best counterpart to the stdlib. It grabbed and kept my interest, where no other GUI lib could, due to its modern and clear API. And it'll work wherever GTK+ does - a tonne of places. I'm glad to have built my first ever (and not trivial!) GUI project around it. It also provides sigc++, which I imagine is really powerful for custom signalling/event systems. Disclaimer: I'm just a self-taught user.

Resources