Audio file tagging (read/write) library? - delphi

TagLib seems like a good choice, but I don't use C++ and bindings for other languages are limited. Currently I use the ATL library, but it hasn't been maintained since 2005 and I'm having a hard time doing this myself. So I'm looking for another open source alternative that is actively developed. Do you know of one?

Do you mean id3 tags? The Jedi project has components to do that:
http://sourceforge.net/project/showfiles.php?group_id=45786
Look for JvID3v1 and JvID3v2.

There is a Delphi component library called newac http://code.google.com/p/newac/ that has bindings for TagLib.

I've not used it personally, but it looks like Audio::TagLib (in CPAN) is a Perl interface / substitute for TagLib.

Related

Delphi 7 : how to generate class hierarchy?

I am seeking to understand someone else's code in Delphi 7 (I suspect that newer version have this built in, but I don't want to spring > $1k for the newest version).
Are their any (preferably FOSS) tools which will help me generate a class hierarchy diagram?
Actually, the class browser in GExperts is ok. Maybe not as good as the accepted answer, but just one of a great collection of tools
You can use ESS-model from SourceForge.
If you Load and .PAS (also .DPR, .CLASS,...) with some classes this program generate a Class Diagram and some Documentation. It's free and you can access to code source.
Regards
AFAIK ModelMaker 6.2 was included with Delphi 7, it's a UML tool. You can import your source code in it and generate class diagrams etc, I really don't remember anymore all of it's features, but I do remember that ModelMaker is awesome tool and it's sure worth a look.
Update: Model Maker (now MMX) is now free for all supported Delphi IDEs
You can take a look at our SynProject tool.
Synopse SynProject is an open source application for code source versioning and automated documentation of Delphi projects.
There is a pascal source parser, which will create all classes hierarchy documentation.
And it's much more than a parser: you can write the whole Specifications/Architecture/Design/Test/Release documents list in an integrated manner.
There are some tutorials, screenshots and resulting documentation sample in the above link.
Peganza's Pascal Analyzer (not FOSS)
Doc-o-matic's documentation generator creates class hierarchies. They have a free express version you can try.

Delphi and XQuery/XPath 2.0?

How do people use XQuery and/or XPath 2.0 from Delphi? I've got MSXML v6.0 working from Delphi, so any sufficiently documented COM-implementation will work. What's your favorite?
My Favourite: I've always found that importing MSXML provides excellent support for all the XPath queries I've ever needed it for.
Close second: I'm not aware of any native delphi libraries that can match MSXML's depth of features however OmniXML provides great support for basic XPath queries and if you're not using expressions, for example, then it's a pretty good alternative.
Sadly, I do not think that there are currently any native Delphi XML Libraries that fully support XPath 2.0.
You can use the fast and opensource libxml2 library. There is a Sourceforge Project for free Delphi bindings.
I love OmniXML. It has a lot of supporting code and classes that extend its primary usage. You may also want to look at SimpleStorage that simplifies work with XML a lot.

FxCop/StyleCop for Delphi?

Does anyone know of an equivalent to FxCop/StyleCop for Delphi? I would really like to get the automatic checking of style, etc. into Continuous Integration.
There's Pascal Analyzer from Peganza: http://www.peganza.com/products_pal.htm
I don't know how the features compare to FxCop, since I haven't really used either one.
The closest I've seen is CodeHealer from SOCK software. We use it, and we have integrated it into our FinalBuilder build. It differs from FxCop in one important way: It analyzes the source code, rather than the produced executable. It also doesn't check quite as much as FxCop does. But I think it is the best thing which is available in this category for Delphi.
Delphi 2009 support isn't there just yet, but they say they're working on it.
Delphi Code Analyzer is another one that is open source.
The DGrok project started with something like FxCop some years ago. The parser and analysis parts are still available, read more at "DGrok 0.8.1: multithreading, default options, GPL" - The parser is a .Net project but
DGrok is a set of tools for parsing
Delphi source code and telling you
stuff about it. Read more about it on
the DGrok project page.
There is a new Delphi plugin for Sonar, which uses a Delphi grammar to run automatic tests over the source code.
I've heard of something called Delforex but haven't used it myself (yet)
Delforex is great for actually formatting the code. It does not do much more than that though. (we have/do use it).
I would second the votes for either Pascal Analyzer or Code Healer.
Vaccano
Doesn't Delphi output .net compatible IL code? I haven't used it in an age but I thought newer versions output .net assemblies.
If so then I would have thought FXcop would work and you could always add some of your own custom rules to it. Stylecop would not work but you could at least get FXCop running.

What editor do you use for OpenLaszlo coding?

I'm new to developing in OpenLaszlo, and have tried Eclipse (hoping for decent code completion), but found it far too heavy for my tastes. fell back to using Textmate, but the bundle for OpenLaszlo is terribly out of date.
Any suggestions? or should I just roll up my sleeves and write a new bundle for Textmate?
I personally use SpketIDE as an Eclipse plugin. It has some code completion, good syntax highlighting.
I use VIM for this. The VIM mode that ships with OpenLaszlo recognizes both the XML tags and the embedded JavaScript. Of course, if you're not already a VIM user, it's a big project to dive in.
If you use a texteditor or XML editor with support for XSD schema, you can generate a custom XSD file of your application using this OpenLaszlo Schema Generator tool. The tool uses Ant to generate the schema file, which then can be used by the editor of your choice.
We used Visual Studio. And we used it just as a great XML editor.
I also used Notepad2 because it is very lightweight and has syntax highlighting.
I've been using Notepad++ with the XML language chosen (since Open Laszlo is basically just XML and javascript). Simple, but effective and free.
I wouldn't have added it otherwise, but since its arch-enemy VI(m) was mentioned:
Emacs
is worth listing. :)
Without knowing much about OL, I am pretty sure one of gazillions of modes it has provides some level of support for your editing needs.
I've been developing in OpenLaszlo since 2006. I currently use NotePad++ with .lzx files set to be interpreted as XML files, this allows the code to be highlighted well in different colours for the different parts that make up OpenLaszlo code (XML nodes, JavaScript/AS3, etc.).
You can find NotePad++ at:
http://notepad-plus-plus.org/
it is free.
I just test my application by loading it into a web browser page.

Plugin for Tortoise SVN get Redmine's issue list, plugin in Delphi

I downloaded tortoise plugin samples, but I don't know how to
implement it on Delphi.
I have successfully compile C# sample, and use it on a repository, but
my knowledge in C# for general development is poor. In other hande, I
don't know how to start creating that plugin in Delphi, but after that
I think would be easy for me.
I want to make a plugin to Redmine Issue List integration.
Something like "hello world" stuff would be great!
here some guide lines to do a new plugin using C#:
http://svn.devjavu.com/tracexplorer/trunk/ext/tortoisesvn.net/issue-tracker-plugins.txt
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=1113569
The TSVN plugin API is COM-based. I'd start by learning how to implement a COM object in Delphi. There's this book. I also found this.
If you already know how to implement COM objects in Delphi, then I apologise for being condescending. Do you have any questions specifically about the IBugTraqProvider interface? Oh, and IBugTraqProvider2 is new to TSVN 1.6 (i.e. not released yet).
Go to
File->New->Other...->ActiveX and select COM Object
You will need interface declaration. Delphi supports *.tlb directly. If there is none than you must translate *.idl to pascal interface declaration. That is easier than it sounds.
Note that interface declarations are probably somewhere in SVN trunk.
You than need to declare that your new COM object implements IBugTraqProvider interface, and implement it as you need.
When you are done, you probably need to register your new COM library with TortoiseSVN.
You can see at this page for a fonctionnal C# plugin :
http://www.redmine.org/boards/3/topics/5420

Resources