IonicWind Software

Aurora Compiler => Software Projects => Topic started by: sapero on May 31, 2009, 05:10:10 PM

Title: Ribbon examples for Windows7
Post by: sapero on May 31, 2009, 05:10:10 PM
These 5 samples demonstrate the Windows Ribbon API, markup, and features, taken from the latest download notification.
EDIT: removed 'invalid' directory from archive.
Title: Re: Ribbon examples for Windows7
Post by: sapero on June 09, 2009, 01:36:38 PM
I have next two examples, and a micro ribbon implementation for XP users.

In this attachment you'll find three projects:
ribbonwrapper - a COM server dll with custom implementation of ribbon tabs, groups and buttons, nothing more, just pure calculations and drawing. You can register this dll if you wish but this is not required, both examples can create the required object by loading the dll and calling DllGetClassObject.
The LoadUI method does not load the compilled markup file, instead it searches for and loads the xml file from executable directory.

demoapp - a ultra mini application that shows how the ribbon interface is working. It will not work on Windows7, just on XP with this "wrapper".
ebdemoapp - Emergence version.

If you think that I'm breaking the law by implementing a custom ribbon interface, please let me know.
Title: Re: Ribbon examples for Windows7
Post by: sapero on June 10, 2009, 04:54:02 AM
You may notice Emergence example is crashing if you close the window. This is because the base classes are calling FreeHeap in the Release method if reference count decreases to zero. Aurora is using heap for new/delete and Ebasic uses global memory.
If you have downloaded headers from 9th june 2009, please update to 10th. I've changed FreeHeap to __DELETE in the base classes.

I have updated also the wrapper examples. Small buttons are now handled properly. In the Aurora version I've changed Domodal to ShowDialog, because OnClose was not called.
Title: Re: Ribbon examples for Windows7
Post by: DominiqueB on June 10, 2009, 12:41:42 PM
Hello,

can't recompile the ripponwrapper.awp project because from deff.inc

#include "..\\projects\\xml\\lib\\xml.inc"

doesn't exist ?

Thank's

Dominique
Title: Re: Ribbon examples for Windows7
Post by: sapero on June 11, 2009, 05:07:21 AM
Dominique, the XML libray you can download here (http://www.ionicwind.com/forums/index.php/topic,2956.0.html) or in the attached set of files (updated recently).

But you will be unable to compile this (wrapper) code without modifications. I'm using a custom extensions to the parser (it modifies the code before it gets compilled) to use try/catch blocks and NEW without parentheses, and the #region tool.
See in CUIFramework::GetView for "try" block, and ClassFactory::CreateInstance for customized NEW.

If you really want to compile it, please download the archive below, copy all files to wrapper directory and add the two libs to wrapper project.

EDIT: reuploaded, fixed (probably crashing) FindClose for the default compiler configuration.