User (Legacy) Posted May 10, 2006 Report Share Posted May 10, 2006 Hi! How can I create my own Palette for the Gauges? Regards Oliver Denzel Link to comment Share on other sites More sharing options...
User (Legacy) Posted May 10, 2006 Author Report Share Posted May 10, 2006 Hi! How can I create my own Palette for the Gauges? Regards Oliver Denzel Link to comment Share on other sites More sharing options...
Software FX Posted May 11, 2006 Report Share Posted May 11, 2006 Dear Olivier: Palette customization will be one of the many new features part of the next service pack. However, the bits are ready as far as the customization is concerned. Please contact support@softwarefx.com for more details on how to get the HotFixes. Make sure to refer this newsgroup post in your email. Regards, -- PR "Oliver Denzel" <ODE@mik.de> wrote in message news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... > Hi! > > How can I create my own Palette for the Gauges? > > Regards > > Oliver Denzel Link to comment Share on other sites More sharing options...
Software FX Posted May 11, 2006 Report Share Posted May 11, 2006 Dear Olivier: Palette customization will be one of the many new features part of the next service pack. However, the bits are ready as far as the customization is concerned. Please contact support@softwarefx.com for more details on how to get the HotFixes. Make sure to refer this newsgroup post in your email. Regards, -- PR "Oliver Denzel" <ODE@mik.de> wrote in message news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... > Hi! > > How can I create my own Palette for the Gauges? > > Regards > > Oliver Denzel Link to comment Share on other sites More sharing options...
User (Legacy) Posted May 18, 2006 Author Report Share Posted May 18, 2006 Hi! I recently got a hotfix, the dlls are from 3rd May 06. Is this new enough? And how do I customize the palette then? Regards Oliver Denzel Software FX Support wrote: > Dear Olivier: > > Palette customization will be one of the many new features part of the next > service pack. However, the bits are ready as far as the customization is > concerned. Please contact support@softwarefx.com for more details on how to > get the HotFixes. Make sure to refer this newsgroup post in your email. > > Regards, > > -- > PR > > > > "Oliver Denzel" <ODE@mik.de> wrote in message > news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... > >>Hi! >> >>How can I create my own Palette for the Gauges? >> >>Regards >> >>Oliver Denzel > > > Link to comment Share on other sites More sharing options...
User (Legacy) Posted May 18, 2006 Author Report Share Posted May 18, 2006 Hi! I recently got a hotfix, the dlls are from 3rd May 06. Is this new enough? And how do I customize the palette then? Regards Oliver Denzel Software FX Support wrote: > Dear Olivier: > > Palette customization will be one of the many new features part of the next > service pack. However, the bits are ready as far as the customization is > concerned. Please contact support@softwarefx.com for more details on how to > get the HotFixes. Make sure to refer this newsgroup post in your email. > > Regards, > > -- > PR > > > > "Oliver Denzel" <ODE@mik.de> wrote in message > news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... > >>Hi! >> >>How can I create my own Palette for the Gauges? >> >>Regards >> >>Oliver Denzel > > > Link to comment Share on other sites More sharing options...
Software FX Posted May 18, 2006 Report Share Posted May 18, 2006 Dear Olivier: The customization of the Gauges relies on a singleton object called ResourceLibrary. This object follows a pull model, i.e., it will ask when it needs to load a custom palette. 1) Subscribe to the PaletteResolve event: ResourceLibrary.Current.PaletteResolve += new PaletteResolveHandler(Current_PaletteResolve); 2) Create a custom palette, and assign it to the gauge. myGauge.Palette = new Palette("MyCustomPalette"); The string identifier of the palette can be anything. However, myGauge.Palette = new Palette("EarthThones"); is equivalent to myGauge.Palette = Palette.EarthThones. The "EarthThones" palette is built-in, and cannot be customized. 3) Implement the event handler. The event handler will only be called once, because the palette will be cached in a static variable. Therefore, if you create a new gauge, and assign it to the same palette, the event will not be raised. void Current_PaletteResolve(object sender, PaletteResolveEventArgs e) { if (e.Palette.Name == "MyCustomPalette") { using (MemoryStream colorStream = new MemoryStream(PaletteCustomization.Properties.Resources.Custom)) { using (MemoryStream mappingStream = new MemoryStream(PaletteCustomization.Properties.Resources.Custom_Mapping)) { e.LoadPaletteFromStream(colorStream, mappingStream); } } } } Similar to ChartFX, a palette is made up of 1) a color collection 2) a color mapping. In this implementation, I have created a resource called PaletteCustomization (WinForms VS2005). This resource contains two files: Custom and Custom_Mapping; 4) Create the palette files. This is an example for Custom: RGB(0,0,0) RGB(255,255,255) RGB(199,199,199) RGB(224,224,224) RGB(81,121,214) RGB(239,47,65) RGB(255,199,0) RGB(186,229,92) RGB(7,186,206) RGB(168,168,168) RGB(218, 231, 248); Alt BG RGB(64,64,64); RGB(192,150,0);alt start RGB(140,172,69); RGB(61,91,161); RGB(102,102,102);others RGB(72,38,35) And for Custom_Mapping: OutsideBorder, 10 InsideBorder, 1 Indicator, 1 MajorTickmark, 9 MediumTickmark, 9 MinorTickmark, 9 Scale, 3 ScaleBorder, 9 StripBorder, 15 Label, 15 CapColor, 15 NumericalCharacter, 5 Cover, 15 Section1, 6 Section2, 7 Section3, 4 AlternateSection1, 12 AlternateSection2, 13 AlternateSection3, 14 For example, MajorTickmark has a color index of 9. The 9th color in Custom is RGB(168,168,168). Be free to post again if you need more information. "Oliver Denzel" <ODE@mik.de> wrote in message news:nW1QuMneGHA.1536@webserver3.softwarefx.com... > Hi! > > I recently got a hotfix, the dlls are from 3rd May 06. Is this new enough? > And how do I customize the palette then? > > Regards > > Oliver Denzel > > Software FX Support wrote: >> Dear Olivier: >> >> Palette customization will be one of the many new features part of the >> next service pack. However, the bits are ready as far as the >> customization is concerned. Please contact support@softwarefx.com for >> more details on how to get the HotFixes. Make sure to refer this >> newsgroup post in your email. >> >> Regards, >> >> -- >> PR >> >> >> >> "Oliver Denzel" <ODE@mik.de> wrote in message >> news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... >> >>>Hi! >>> >>>How can I create my own Palette for the Gauges? >>> >>>Regards >>> >>>Oliver Denzel >> >> Link to comment Share on other sites More sharing options...
Software FX Posted May 18, 2006 Report Share Posted May 18, 2006 Dear Olivier: The customization of the Gauges relies on a singleton object called ResourceLibrary. This object follows a pull model, i.e., it will ask when it needs to load a custom palette. 1) Subscribe to the PaletteResolve event: ResourceLibrary.Current.PaletteResolve += new PaletteResolveHandler(Current_PaletteResolve); 2) Create a custom palette, and assign it to the gauge. myGauge.Palette = new Palette("MyCustomPalette"); The string identifier of the palette can be anything. However, myGauge.Palette = new Palette("EarthThones"); is equivalent to myGauge.Palette = Palette.EarthThones. The "EarthThones" palette is built-in, and cannot be customized. 3) Implement the event handler. The event handler will only be called once, because the palette will be cached in a static variable. Therefore, if you create a new gauge, and assign it to the same palette, the event will not be raised. void Current_PaletteResolve(object sender, PaletteResolveEventArgs e) { if (e.Palette.Name == "MyCustomPalette") { using (MemoryStream colorStream = new MemoryStream(PaletteCustomization.Properties.Resources.Custom)) { using (MemoryStream mappingStream = new MemoryStream(PaletteCustomization.Properties.Resources.Custom_Mapping)) { e.LoadPaletteFromStream(colorStream, mappingStream); } } } } Similar to ChartFX, a palette is made up of 1) a color collection 2) a color mapping. In this implementation, I have created a resource called PaletteCustomization (WinForms VS2005). This resource contains two files: Custom and Custom_Mapping; 4) Create the palette files. This is an example for Custom: RGB(0,0,0) RGB(255,255,255) RGB(199,199,199) RGB(224,224,224) RGB(81,121,214) RGB(239,47,65) RGB(255,199,0) RGB(186,229,92) RGB(7,186,206) RGB(168,168,168) RGB(218, 231, 248); Alt BG RGB(64,64,64); RGB(192,150,0);alt start RGB(140,172,69); RGB(61,91,161); RGB(102,102,102);others RGB(72,38,35) And for Custom_Mapping: OutsideBorder, 10 InsideBorder, 1 Indicator, 1 MajorTickmark, 9 MediumTickmark, 9 MinorTickmark, 9 Scale, 3 ScaleBorder, 9 StripBorder, 15 Label, 15 CapColor, 15 NumericalCharacter, 5 Cover, 15 Section1, 6 Section2, 7 Section3, 4 AlternateSection1, 12 AlternateSection2, 13 AlternateSection3, 14 For example, MajorTickmark has a color index of 9. The 9th color in Custom is RGB(168,168,168). Be free to post again if you need more information. "Oliver Denzel" <ODE@mik.de> wrote in message news:nW1QuMneGHA.1536@webserver3.softwarefx.com... > Hi! > > I recently got a hotfix, the dlls are from 3rd May 06. Is this new enough? > And how do I customize the palette then? > > Regards > > Oliver Denzel > > Software FX Support wrote: >> Dear Olivier: >> >> Palette customization will be one of the many new features part of the >> next service pack. However, the bits are ready as far as the >> customization is concerned. Please contact support@softwarefx.com for >> more details on how to get the HotFixes. Make sure to refer this >> newsgroup post in your email. >> >> Regards, >> >> -- >> PR >> >> >> >> "Oliver Denzel" <ODE@mik.de> wrote in message >> news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... >> >>>Hi! >>> >>>How can I create my own Palette for the Gauges? >>> >>>Regards >>> >>>Oliver Denzel >> >> Link to comment Share on other sites More sharing options...
User (Legacy) Posted May 18, 2006 Author Report Share Posted May 18, 2006 Hi! I implemented your suggestion, with a change: I read the palette from files. Therefore my code looks like this: private void Current_PaletteResolve(object sender, ChartFX.WinForms.Gauge.Customization.PaletteResolveEventArgs e) { if (e.Palette.Name.StartsWith("MIK")) { try { using (FileStream colorStream = new FileStream("C:\\custom.txt", FileMode.Open)) { using (FileStream mappingStream = new FileStream("C:\\custom_mapping.txt", FileMode.Open)) { e.LoadPaletteFromStream(colorStream, mappingStream); } } } catch (Exception ex) { log.Info("Exception on loading palette: ", ex); } } } The code executes without an exception, but afterwards there is an exception, that the palette MIK-Test (which I defined) is not resolved. Regards Oliver Denzel Software FX Support wrote: > Dear Olivier: > > > The customization of the Gauges relies on a singleton object called > ResourceLibrary. This object follows a pull model, i.e., it will ask when it > needs to load a custom palette. > > 1) Subscribe to the PaletteResolve event: > ResourceLibrary.Current.PaletteResolve += new > PaletteResolveHandler(Current_PaletteResolve); > > 2) Create a custom palette, and assign it to the gauge. > myGauge.Palette = new Palette("MyCustomPalette"); > > The string identifier of the palette can be anything. However, > myGauge.Palette = new Palette("EarthThones"); is equivalent to > myGauge.Palette = Palette.EarthThones. The "EarthThones" palette is > built-in, and cannot be customized. > > 3) Implement the event handler. The event handler will only be called once, > because the palette will be cached in a static variable. Therefore, if you > create a new gauge, and assign it to the same palette, the event will not be > raised. > void Current_PaletteResolve(object sender, PaletteResolveEventArgs e) { > if (e.Palette.Name == "MyCustomPalette") { > using (MemoryStream colorStream = new > MemoryStream(PaletteCustomization.Properties.Resources.Custom)) { > using (MemoryStream mappingStream = new > MemoryStream(PaletteCustomization.Properties.Resources.Custom_Mapping)) { > e.LoadPaletteFromStream(colorStream, mappingStream); > } > } > } > } > > Similar to ChartFX, a palette is made up of 1) a color collection 2) a color > mapping. In this implementation, I have created a resource called > PaletteCustomization (WinForms VS2005). This resource contains two files: > Custom and Custom_Mapping; > > 4) Create the palette files. This is an example for Custom: > > RGB(0,0,0) > RGB(255,255,255) > RGB(199,199,199) > RGB(224,224,224) > RGB(81,121,214) > RGB(239,47,65) > RGB(255,199,0) > RGB(186,229,92) > RGB(7,186,206) > RGB(168,168,168) > RGB(218, 231, 248); Alt BG > RGB(64,64,64); > RGB(192,150,0);alt start > RGB(140,172,69); > RGB(61,91,161); > RGB(102,102,102);others > RGB(72,38,35) > > And for Custom_Mapping: > OutsideBorder, 10 > InsideBorder, 1 > Indicator, 1 > MajorTickmark, 9 > MediumTickmark, 9 > MinorTickmark, 9 > Scale, 3 > ScaleBorder, 9 > StripBorder, 15 > Label, 15 > CapColor, 15 > NumericalCharacter, 5 > Cover, 15 > Section1, 6 > Section2, 7 > Section3, 4 > AlternateSection1, 12 > AlternateSection2, 13 > AlternateSection3, 14 > > For example, MajorTickmark has a color index of 9. The 9th color in Custom > is RGB(168,168,168). > > > Be free to post again if you need more information. > > > "Oliver Denzel" <ODE@mik.de> wrote in message > news:nW1QuMneGHA.1536@webserver3.softwarefx.com... > >>Hi! >> >>I recently got a hotfix, the dlls are from 3rd May 06. Is this new enough? >>And how do I customize the palette then? >> >>Regards >> >>Oliver Denzel >> >>Software FX Support wrote: >> >>>Dear Olivier: >>> >>>Palette customization will be one of the many new features part of the >>>next service pack. However, the bits are ready as far as the >>>customization is concerned. Please contact support@softwarefx.com for >>>more details on how to get the HotFixes. Make sure to refer this >>>newsgroup post in your email. >>> >>>Regards, >>> >>>-- >>>PR >>> >>> >>> >>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... >>> >>> >>>>Hi! >>>> >>>>How can I create my own Palette for the Gauges? >>>> >>>>Regards >>>> >>>>Oliver Denzel >>> >>> > Link to comment Share on other sites More sharing options...
User (Legacy) Posted May 18, 2006 Author Report Share Posted May 18, 2006 Hi! I implemented your suggestion, with a change: I read the palette from files. Therefore my code looks like this: private void Current_PaletteResolve(object sender, ChartFX.WinForms.Gauge.Customization.PaletteResolveEventArgs e) { if (e.Palette.Name.StartsWith("MIK")) { try { using (FileStream colorStream = new FileStream("C:\\custom.txt", FileMode.Open)) { using (FileStream mappingStream = new FileStream("C:\\custom_mapping.txt", FileMode.Open)) { e.LoadPaletteFromStream(colorStream, mappingStream); } } } catch (Exception ex) { log.Info("Exception on loading palette: ", ex); } } } The code executes without an exception, but afterwards there is an exception, that the palette MIK-Test (which I defined) is not resolved. Regards Oliver Denzel Software FX Support wrote: > Dear Olivier: > > > The customization of the Gauges relies on a singleton object called > ResourceLibrary. This object follows a pull model, i.e., it will ask when it > needs to load a custom palette. > > 1) Subscribe to the PaletteResolve event: > ResourceLibrary.Current.PaletteResolve += new > PaletteResolveHandler(Current_PaletteResolve); > > 2) Create a custom palette, and assign it to the gauge. > myGauge.Palette = new Palette("MyCustomPalette"); > > The string identifier of the palette can be anything. However, > myGauge.Palette = new Palette("EarthThones"); is equivalent to > myGauge.Palette = Palette.EarthThones. The "EarthThones" palette is > built-in, and cannot be customized. > > 3) Implement the event handler. The event handler will only be called once, > because the palette will be cached in a static variable. Therefore, if you > create a new gauge, and assign it to the same palette, the event will not be > raised. > void Current_PaletteResolve(object sender, PaletteResolveEventArgs e) { > if (e.Palette.Name == "MyCustomPalette") { > using (MemoryStream colorStream = new > MemoryStream(PaletteCustomization.Properties.Resources.Custom)) { > using (MemoryStream mappingStream = new > MemoryStream(PaletteCustomization.Properties.Resources.Custom_Mapping)) { > e.LoadPaletteFromStream(colorStream, mappingStream); > } > } > } > } > > Similar to ChartFX, a palette is made up of 1) a color collection 2) a color > mapping. In this implementation, I have created a resource called > PaletteCustomization (WinForms VS2005). This resource contains two files: > Custom and Custom_Mapping; > > 4) Create the palette files. This is an example for Custom: > > RGB(0,0,0) > RGB(255,255,255) > RGB(199,199,199) > RGB(224,224,224) > RGB(81,121,214) > RGB(239,47,65) > RGB(255,199,0) > RGB(186,229,92) > RGB(7,186,206) > RGB(168,168,168) > RGB(218, 231, 248); Alt BG > RGB(64,64,64); > RGB(192,150,0);alt start > RGB(140,172,69); > RGB(61,91,161); > RGB(102,102,102);others > RGB(72,38,35) > > And for Custom_Mapping: > OutsideBorder, 10 > InsideBorder, 1 > Indicator, 1 > MajorTickmark, 9 > MediumTickmark, 9 > MinorTickmark, 9 > Scale, 3 > ScaleBorder, 9 > StripBorder, 15 > Label, 15 > CapColor, 15 > NumericalCharacter, 5 > Cover, 15 > Section1, 6 > Section2, 7 > Section3, 4 > AlternateSection1, 12 > AlternateSection2, 13 > AlternateSection3, 14 > > For example, MajorTickmark has a color index of 9. The 9th color in Custom > is RGB(168,168,168). > > > Be free to post again if you need more information. > > > "Oliver Denzel" <ODE@mik.de> wrote in message > news:nW1QuMneGHA.1536@webserver3.softwarefx.com... > >>Hi! >> >>I recently got a hotfix, the dlls are from 3rd May 06. Is this new enough? >>And how do I customize the palette then? >> >>Regards >> >>Oliver Denzel >> >>Software FX Support wrote: >> >>>Dear Olivier: >>> >>>Palette customization will be one of the many new features part of the >>>next service pack. However, the bits are ready as far as the >>>customization is concerned. Please contact support@softwarefx.com for >>>more details on how to get the HotFixes. Make sure to refer this >>>newsgroup post in your email. >>> >>>Regards, >>> >>>-- >>>PR >>> >>> >>> >>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... >>> >>> >>>>Hi! >>>> >>>>How can I create my own Palette for the Gauges? >>>> >>>>Regards >>>> >>>>Oliver Denzel >>> >>> > Link to comment Share on other sites More sharing options...
Software FX Posted May 19, 2006 Report Share Posted May 19, 2006 Dear Olivier: Do you subscribe to the event before rendering the gauge? Is your event handler being called? If so, what is the value of e.Palette.Name? Regards, -- PR "Oliver Denzel" <ODE@mik.de> wrote in message news:pxd$T6oeGHA.3992@webserver3.softwarefx.com... > Hi! > > I implemented your suggestion, with a change: I read the palette from > files. Therefore my code looks like this: > > private void Current_PaletteResolve(object sender, > ChartFX.WinForms.Gauge.Customization.PaletteResolveEventArgs e) > { > if (e.Palette.Name.StartsWith("MIK")) > { > try > { > using (FileStream colorStream = new FileStream("C:\\custom.txt", > FileMode.Open)) > { > using (FileStream mappingStream = new FileStream("C:\\custom_mapping.txt", > FileMode.Open)) > { > e.LoadPaletteFromStream(colorStream, mappingStream); > } > } > } > catch (Exception ex) > { > log.Info("Exception on loading palette: ", ex); > } > } > } > The code executes without an exception, but afterwards there is an > exception, that the palette MIK-Test (which I defined) is not resolved. > > Regards > > Oliver Denzel > > Software FX Support wrote: >> Dear Olivier: >> >> >> The customization of the Gauges relies on a singleton object called >> ResourceLibrary. This object follows a pull model, i.e., it will ask when >> it needs to load a custom palette. >> >> 1) Subscribe to the PaletteResolve event: >> ResourceLibrary.Current.PaletteResolve += new >> PaletteResolveHandler(Current_PaletteResolve); >> >> 2) Create a custom palette, and assign it to the gauge. >> myGauge.Palette = new Palette("MyCustomPalette"); >> >> The string identifier of the palette can be anything. However, >> myGauge.Palette = new Palette("EarthThones"); is equivalent to >> myGauge.Palette = Palette.EarthThones. The "EarthThones" palette is >> built-in, and cannot be customized. >> >> 3) Implement the event handler. The event handler will only be called >> once, because the palette will be cached in a static variable. Therefore, >> if you create a new gauge, and assign it to the same palette, the event >> will not be raised. >> void Current_PaletteResolve(object sender, PaletteResolveEventArgs e) { >> if (e.Palette.Name == "MyCustomPalette") { >> using (MemoryStream colorStream = new >> MemoryStream(PaletteCustomization.Properties.Resources.Custom)) { >> using (MemoryStream mappingStream = new >> MemoryStream(PaletteCustomization.Properties.Resources.Custom_Mapping)) { >> e.LoadPaletteFromStream(colorStream, mappingStream); >> } >> } >> } >> } >> >> Similar to ChartFX, a palette is made up of 1) a color collection 2) a >> color mapping. In this implementation, I have created a resource called >> PaletteCustomization (WinForms VS2005). This resource contains two files: >> Custom and Custom_Mapping; >> >> 4) Create the palette files. This is an example for Custom: >> >> RGB(0,0,0) >> RGB(255,255,255) >> RGB(199,199,199) >> RGB(224,224,224) >> RGB(81,121,214) >> RGB(239,47,65) >> RGB(255,199,0) >> RGB(186,229,92) >> RGB(7,186,206) >> RGB(168,168,168) >> RGB(218, 231, 248); Alt BG >> RGB(64,64,64); >> RGB(192,150,0);alt start >> RGB(140,172,69); >> RGB(61,91,161); >> RGB(102,102,102);others >> RGB(72,38,35) >> >> And for Custom_Mapping: >> OutsideBorder, 10 >> InsideBorder, 1 >> Indicator, 1 >> MajorTickmark, 9 >> MediumTickmark, 9 >> MinorTickmark, 9 >> Scale, 3 >> ScaleBorder, 9 >> StripBorder, 15 >> Label, 15 >> CapColor, 15 >> NumericalCharacter, 5 >> Cover, 15 >> Section1, 6 >> Section2, 7 >> Section3, 4 >> AlternateSection1, 12 >> AlternateSection2, 13 >> AlternateSection3, 14 >> >> For example, MajorTickmark has a color index of 9. The 9th color in >> Custom is RGB(168,168,168). >> >> >> Be free to post again if you need more information. >> >> >> "Oliver Denzel" <ODE@mik.de> wrote in message >> news:nW1QuMneGHA.1536@webserver3.softwarefx.com... >> >>>Hi! >>> >>>I recently got a hotfix, the dlls are from 3rd May 06. Is this new >>>enough? >>>And how do I customize the palette then? >>> >>>Regards >>> >>>Oliver Denzel >>> >>>Software FX Support wrote: >>> >>>>Dear Olivier: >>>> >>>>Palette customization will be one of the many new features part of the >>>>next service pack. However, the bits are ready as far as the >>>>customization is concerned. Please contact support@softwarefx.com for >>>>more details on how to get the HotFixes. Make sure to refer this >>>>newsgroup post in your email. >>>> >>>>Regards, >>>> >>>>-- >>>>PR >>>> >>>> >>>> >>>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>>news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... >>>> >>>> >>>>>Hi! >>>>> >>>>>How can I create my own Palette for the Gauges? >>>>> >>>>>Regards >>>>> >>>>>Oliver Denzel >>>> >>>> >> Link to comment Share on other sites More sharing options...
Software FX Posted May 19, 2006 Report Share Posted May 19, 2006 Dear Olivier: Do you subscribe to the event before rendering the gauge? Is your event handler being called? If so, what is the value of e.Palette.Name? Regards, -- PR "Oliver Denzel" <ODE@mik.de> wrote in message news:pxd$T6oeGHA.3992@webserver3.softwarefx.com... > Hi! > > I implemented your suggestion, with a change: I read the palette from > files. Therefore my code looks like this: > > private void Current_PaletteResolve(object sender, > ChartFX.WinForms.Gauge.Customization.PaletteResolveEventArgs e) > { > if (e.Palette.Name.StartsWith("MIK")) > { > try > { > using (FileStream colorStream = new FileStream("C:\\custom.txt", > FileMode.Open)) > { > using (FileStream mappingStream = new FileStream("C:\\custom_mapping.txt", > FileMode.Open)) > { > e.LoadPaletteFromStream(colorStream, mappingStream); > } > } > } > catch (Exception ex) > { > log.Info("Exception on loading palette: ", ex); > } > } > } > The code executes without an exception, but afterwards there is an > exception, that the palette MIK-Test (which I defined) is not resolved. > > Regards > > Oliver Denzel > > Software FX Support wrote: >> Dear Olivier: >> >> >> The customization of the Gauges relies on a singleton object called >> ResourceLibrary. This object follows a pull model, i.e., it will ask when >> it needs to load a custom palette. >> >> 1) Subscribe to the PaletteResolve event: >> ResourceLibrary.Current.PaletteResolve += new >> PaletteResolveHandler(Current_PaletteResolve); >> >> 2) Create a custom palette, and assign it to the gauge. >> myGauge.Palette = new Palette("MyCustomPalette"); >> >> The string identifier of the palette can be anything. However, >> myGauge.Palette = new Palette("EarthThones"); is equivalent to >> myGauge.Palette = Palette.EarthThones. The "EarthThones" palette is >> built-in, and cannot be customized. >> >> 3) Implement the event handler. The event handler will only be called >> once, because the palette will be cached in a static variable. Therefore, >> if you create a new gauge, and assign it to the same palette, the event >> will not be raised. >> void Current_PaletteResolve(object sender, PaletteResolveEventArgs e) { >> if (e.Palette.Name == "MyCustomPalette") { >> using (MemoryStream colorStream = new >> MemoryStream(PaletteCustomization.Properties.Resources.Custom)) { >> using (MemoryStream mappingStream = new >> MemoryStream(PaletteCustomization.Properties.Resources.Custom_Mapping)) { >> e.LoadPaletteFromStream(colorStream, mappingStream); >> } >> } >> } >> } >> >> Similar to ChartFX, a palette is made up of 1) a color collection 2) a >> color mapping. In this implementation, I have created a resource called >> PaletteCustomization (WinForms VS2005). This resource contains two files: >> Custom and Custom_Mapping; >> >> 4) Create the palette files. This is an example for Custom: >> >> RGB(0,0,0) >> RGB(255,255,255) >> RGB(199,199,199) >> RGB(224,224,224) >> RGB(81,121,214) >> RGB(239,47,65) >> RGB(255,199,0) >> RGB(186,229,92) >> RGB(7,186,206) >> RGB(168,168,168) >> RGB(218, 231, 248); Alt BG >> RGB(64,64,64); >> RGB(192,150,0);alt start >> RGB(140,172,69); >> RGB(61,91,161); >> RGB(102,102,102);others >> RGB(72,38,35) >> >> And for Custom_Mapping: >> OutsideBorder, 10 >> InsideBorder, 1 >> Indicator, 1 >> MajorTickmark, 9 >> MediumTickmark, 9 >> MinorTickmark, 9 >> Scale, 3 >> ScaleBorder, 9 >> StripBorder, 15 >> Label, 15 >> CapColor, 15 >> NumericalCharacter, 5 >> Cover, 15 >> Section1, 6 >> Section2, 7 >> Section3, 4 >> AlternateSection1, 12 >> AlternateSection2, 13 >> AlternateSection3, 14 >> >> For example, MajorTickmark has a color index of 9. The 9th color in >> Custom is RGB(168,168,168). >> >> >> Be free to post again if you need more information. >> >> >> "Oliver Denzel" <ODE@mik.de> wrote in message >> news:nW1QuMneGHA.1536@webserver3.softwarefx.com... >> >>>Hi! >>> >>>I recently got a hotfix, the dlls are from 3rd May 06. Is this new >>>enough? >>>And how do I customize the palette then? >>> >>>Regards >>> >>>Oliver Denzel >>> >>>Software FX Support wrote: >>> >>>>Dear Olivier: >>>> >>>>Palette customization will be one of the many new features part of the >>>>next service pack. However, the bits are ready as far as the >>>>customization is concerned. Please contact support@softwarefx.com for >>>>more details on how to get the HotFixes. Make sure to refer this >>>>newsgroup post in your email. >>>> >>>>Regards, >>>> >>>>-- >>>>PR >>>> >>>> >>>> >>>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>>news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... >>>> >>>> >>>>>Hi! >>>>> >>>>>How can I create my own Palette for the Gauges? >>>>> >>>>>Regards >>>>> >>>>>Oliver Denzel >>>> >>>> >> Link to comment Share on other sites More sharing options...
User (Legacy) Posted May 23, 2006 Author Report Share Posted May 23, 2006 Hi! Yes, the code in the eventhandler gets executed, and the name of the Palette is MIK-Test as I specified. So the code in the if clause also gets executed. Any other hints? Regards Oliver Denzel Software FX Support wrote: > Dear Olivier: > > Do you subscribe to the event before rendering the gauge? Is your event > handler being called? If so, what is the value of e.Palette.Name? > > Regards, > > -- > PR > > > "Oliver Denzel" <ODE@mik.de> wrote in message > news:pxd$T6oeGHA.3992@webserver3.softwarefx.com... > >>Hi! >> >>I implemented your suggestion, with a change: I read the palette from >>files. Therefore my code looks like this: >> >>private void Current_PaletteResolve(object sender, >>ChartFX.WinForms.Gauge.Customization.PaletteResolveEventArgs e) >>{ >>if (e.Palette.Name.StartsWith("MIK")) >>{ >>try >>{ >>using (FileStream colorStream = new FileStream("C:\\custom.txt", >>FileMode.Open)) >>{ >>using (FileStream mappingStream = new FileStream("C:\\custom_mapping.txt", >>FileMode.Open)) >>{ >>e.LoadPaletteFromStream(colorStream, mappingStream); >>} >>} >>} >>catch (Exception ex) >>{ >>log.Info("Exception on loading palette: ", ex); >>} >>} >>} >>The code executes without an exception, but afterwards there is an >>exception, that the palette MIK-Test (which I defined) is not resolved. >> >>Regards >> >>Oliver Denzel >> >>Software FX Support wrote: >> >>>Dear Olivier: >>> >>> >>>The customization of the Gauges relies on a singleton object called >>>ResourceLibrary. This object follows a pull model, i.e., it will ask when >>>it needs to load a custom palette. >>> >>>1) Subscribe to the PaletteResolve event: >>> ResourceLibrary.Current.PaletteResolve += new >>>PaletteResolveHandler(Current_PaletteResolve); >>> >>>2) Create a custom palette, and assign it to the gauge. >>>myGauge.Palette = new Palette("MyCustomPalette"); >>> >>>The string identifier of the palette can be anything. However, >>>myGauge.Palette = new Palette("EarthThones"); is equivalent to >>>myGauge.Palette = Palette.EarthThones. The "EarthThones" palette is >>>built-in, and cannot be customized. >>> >>>3) Implement the event handler. The event handler will only be called >>>once, because the palette will be cached in a static variable. Therefore, >>>if you create a new gauge, and assign it to the same palette, the event >>>will not be raised. >>> void Current_PaletteResolve(object sender, PaletteResolveEventArgs e) { >>> if (e.Palette.Name == "MyCustomPalette") { >>> using (MemoryStream colorStream = new >>>MemoryStream(PaletteCustomization.Properties.Resources.Custom)) { >>> using (MemoryStream mappingStream = new >>>MemoryStream(PaletteCustomization.Properties.Resources.Custom_Mapping)) { >>> e.LoadPaletteFromStream(colorStream, mappingStream); >>> } >>> } >>> } >>> } >>> >>>Similar to ChartFX, a palette is made up of 1) a color collection 2) a >>>color mapping. In this implementation, I have created a resource called >>>PaletteCustomization (WinForms VS2005). This resource contains two files: >>>Custom and Custom_Mapping; >>> >>>4) Create the palette files. This is an example for Custom: >>> >>>RGB(0,0,0) >>>RGB(255,255,255) >>>RGB(199,199,199) >>>RGB(224,224,224) >>>RGB(81,121,214) >>>RGB(239,47,65) >>>RGB(255,199,0) >>>RGB(186,229,92) >>>RGB(7,186,206) >>>RGB(168,168,168) >>>RGB(218, 231, 248); Alt BG >>>RGB(64,64,64); >>>RGB(192,150,0);alt start >>>RGB(140,172,69); >>>RGB(61,91,161); >>>RGB(102,102,102);others >>>RGB(72,38,35) >>> >>>And for Custom_Mapping: >>>OutsideBorder, 10 >>>InsideBorder, 1 >>>Indicator, 1 >>>MajorTickmark, 9 >>>MediumTickmark, 9 >>>MinorTickmark, 9 >>>Scale, 3 >>>ScaleBorder, 9 >>>StripBorder, 15 >>>Label, 15 >>>CapColor, 15 >>>NumericalCharacter, 5 >>>Cover, 15 >>>Section1, 6 >>>Section2, 7 >>>Section3, 4 >>>AlternateSection1, 12 >>>AlternateSection2, 13 >>>AlternateSection3, 14 >>> >>>For example, MajorTickmark has a color index of 9. The 9th color in >>>Custom is RGB(168,168,168). >>> >>> >>>Be free to post again if you need more information. >>> >>> >>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>news:nW1QuMneGHA.1536@webserver3.softwarefx.com... >>> >>> >>>>Hi! >>>> >>>>I recently got a hotfix, the dlls are from 3rd May 06. Is this new >>>>enough? >>>>And how do I customize the palette then? >>>> >>>>Regards >>>> >>>>Oliver Denzel >>>> >>>>Software FX Support wrote: >>>> >>>> >>>>>Dear Olivier: >>>>> >>>>>Palette customization will be one of the many new features part of the >>>>>next service pack. However, the bits are ready as far as the >>>>>customization is concerned. Please contact support@softwarefx.com for >>>>>more details on how to get the HotFixes. Make sure to refer this >>>>>newsgroup post in your email. >>>>> >>>>>Regards, >>>>> >>>>>-- >>>>>PR >>>>> >>>>> >>>>> >>>>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>>>news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... >>>>> >>>>> >>>>> >>>>>>Hi! >>>>>> >>>>>>How can I create my own Palette for the Gauges? >>>>>> >>>>>>Regards >>>>>> >>>>>>Oliver Denzel >>>>> >>>>> > > Link to comment Share on other sites More sharing options...
User (Legacy) Posted May 23, 2006 Author Report Share Posted May 23, 2006 Hi! Yes, the code in the eventhandler gets executed, and the name of the Palette is MIK-Test as I specified. So the code in the if clause also gets executed. Any other hints? Regards Oliver Denzel Software FX Support wrote: > Dear Olivier: > > Do you subscribe to the event before rendering the gauge? Is your event > handler being called? If so, what is the value of e.Palette.Name? > > Regards, > > -- > PR > > > "Oliver Denzel" <ODE@mik.de> wrote in message > news:pxd$T6oeGHA.3992@webserver3.softwarefx.com... > >>Hi! >> >>I implemented your suggestion, with a change: I read the palette from >>files. Therefore my code looks like this: >> >>private void Current_PaletteResolve(object sender, >>ChartFX.WinForms.Gauge.Customization.PaletteResolveEventArgs e) >>{ >>if (e.Palette.Name.StartsWith("MIK")) >>{ >>try >>{ >>using (FileStream colorStream = new FileStream("C:\\custom.txt", >>FileMode.Open)) >>{ >>using (FileStream mappingStream = new FileStream("C:\\custom_mapping.txt", >>FileMode.Open)) >>{ >>e.LoadPaletteFromStream(colorStream, mappingStream); >>} >>} >>} >>catch (Exception ex) >>{ >>log.Info("Exception on loading palette: ", ex); >>} >>} >>} >>The code executes without an exception, but afterwards there is an >>exception, that the palette MIK-Test (which I defined) is not resolved. >> >>Regards >> >>Oliver Denzel >> >>Software FX Support wrote: >> >>>Dear Olivier: >>> >>> >>>The customization of the Gauges relies on a singleton object called >>>ResourceLibrary. This object follows a pull model, i.e., it will ask when >>>it needs to load a custom palette. >>> >>>1) Subscribe to the PaletteResolve event: >>> ResourceLibrary.Current.PaletteResolve += new >>>PaletteResolveHandler(Current_PaletteResolve); >>> >>>2) Create a custom palette, and assign it to the gauge. >>>myGauge.Palette = new Palette("MyCustomPalette"); >>> >>>The string identifier of the palette can be anything. However, >>>myGauge.Palette = new Palette("EarthThones"); is equivalent to >>>myGauge.Palette = Palette.EarthThones. The "EarthThones" palette is >>>built-in, and cannot be customized. >>> >>>3) Implement the event handler. The event handler will only be called >>>once, because the palette will be cached in a static variable. Therefore, >>>if you create a new gauge, and assign it to the same palette, the event >>>will not be raised. >>> void Current_PaletteResolve(object sender, PaletteResolveEventArgs e) { >>> if (e.Palette.Name == "MyCustomPalette") { >>> using (MemoryStream colorStream = new >>>MemoryStream(PaletteCustomization.Properties.Resources.Custom)) { >>> using (MemoryStream mappingStream = new >>>MemoryStream(PaletteCustomization.Properties.Resources.Custom_Mapping)) { >>> e.LoadPaletteFromStream(colorStream, mappingStream); >>> } >>> } >>> } >>> } >>> >>>Similar to ChartFX, a palette is made up of 1) a color collection 2) a >>>color mapping. In this implementation, I have created a resource called >>>PaletteCustomization (WinForms VS2005). This resource contains two files: >>>Custom and Custom_Mapping; >>> >>>4) Create the palette files. This is an example for Custom: >>> >>>RGB(0,0,0) >>>RGB(255,255,255) >>>RGB(199,199,199) >>>RGB(224,224,224) >>>RGB(81,121,214) >>>RGB(239,47,65) >>>RGB(255,199,0) >>>RGB(186,229,92) >>>RGB(7,186,206) >>>RGB(168,168,168) >>>RGB(218, 231, 248); Alt BG >>>RGB(64,64,64); >>>RGB(192,150,0);alt start >>>RGB(140,172,69); >>>RGB(61,91,161); >>>RGB(102,102,102);others >>>RGB(72,38,35) >>> >>>And for Custom_Mapping: >>>OutsideBorder, 10 >>>InsideBorder, 1 >>>Indicator, 1 >>>MajorTickmark, 9 >>>MediumTickmark, 9 >>>MinorTickmark, 9 >>>Scale, 3 >>>ScaleBorder, 9 >>>StripBorder, 15 >>>Label, 15 >>>CapColor, 15 >>>NumericalCharacter, 5 >>>Cover, 15 >>>Section1, 6 >>>Section2, 7 >>>Section3, 4 >>>AlternateSection1, 12 >>>AlternateSection2, 13 >>>AlternateSection3, 14 >>> >>>For example, MajorTickmark has a color index of 9. The 9th color in >>>Custom is RGB(168,168,168). >>> >>> >>>Be free to post again if you need more information. >>> >>> >>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>news:nW1QuMneGHA.1536@webserver3.softwarefx.com... >>> >>> >>>>Hi! >>>> >>>>I recently got a hotfix, the dlls are from 3rd May 06. Is this new >>>>enough? >>>>And how do I customize the palette then? >>>> >>>>Regards >>>> >>>>Oliver Denzel >>>> >>>>Software FX Support wrote: >>>> >>>> >>>>>Dear Olivier: >>>>> >>>>>Palette customization will be one of the many new features part of the >>>>>next service pack. However, the bits are ready as far as the >>>>>customization is concerned. Please contact support@softwarefx.com for >>>>>more details on how to get the HotFixes. Make sure to refer this >>>>>newsgroup post in your email. >>>>> >>>>>Regards, >>>>> >>>>>-- >>>>>PR >>>>> >>>>> >>>>> >>>>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>>>news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... >>>>> >>>>> >>>>> >>>>>>Hi! >>>>>> >>>>>>How can I create my own Palette for the Gauges? >>>>>> >>>>>>Regards >>>>>> >>>>>>Oliver Denzel >>>>> >>>>> > > Link to comment Share on other sites More sharing options...
Software FX Posted May 25, 2006 Report Share Posted May 25, 2006 Dear Olivier: Please contact Support to get the latest hotfix for Gauges, as I have just fixed the problem. BTW, we are really close to release a full-feature service pack in the coming days. The service pack will contain in-depth documentation on how to customize the gauge. Regards, -- PR "Oliver Denzel" <ODE@mik.de> wrote in message news:bz8CF%23jfGHA.1536@webserver3.softwarefx.com... > Hi! > > Yes, the code in the eventhandler gets executed, and the name of the > Palette is MIK-Test as I specified. So the code in the if clause also gets > executed. > > Any other hints? > > Regards > > Oliver Denzel > > Software FX Support wrote: >> Dear Olivier: >> >> Do you subscribe to the event before rendering the gauge? Is your event >> handler being called? If so, what is the value of e.Palette.Name? >> >> Regards, >> >> -- >> PR >> >> >> "Oliver Denzel" <ODE@mik.de> wrote in message >> news:pxd$T6oeGHA.3992@webserver3.softwarefx.com... >> >>>Hi! >>> >>>I implemented your suggestion, with a change: I read the palette from >>>files. Therefore my code looks like this: >>> >>>private void Current_PaletteResolve(object sender, >>>ChartFX.WinForms.Gauge.Customization.PaletteResolveEventArgs e) >>>{ >>>if (e.Palette.Name.StartsWith("MIK")) >>>{ >>>try >>>{ >>>using (FileStream colorStream = new FileStream("C:\\custom.txt", >>>FileMode.Open)) >>>{ >>>using (FileStream mappingStream = new >>>FileStream("C:\\custom_mapping.txt", FileMode.Open)) >>>{ >>>e.LoadPaletteFromStream(colorStream, mappingStream); >>>} >>>} >>>} >>>catch (Exception ex) >>>{ >>>log.Info("Exception on loading palette: ", ex); >>>} >>>} >>>} >>>The code executes without an exception, but afterwards there is an >>>exception, that the palette MIK-Test (which I defined) is not resolved. >>> >>>Regards >>> >>>Oliver Denzel >>> >>>Software FX Support wrote: >>> >>>>Dear Olivier: >>>> >>>> >>>>The customization of the Gauges relies on a singleton object called >>>>ResourceLibrary. This object follows a pull model, i.e., it will ask >>>>when it needs to load a custom palette. >>>> >>>>1) Subscribe to the PaletteResolve event: >>>> ResourceLibrary.Current.PaletteResolve += new >>>> PaletteResolveHandler(Current_PaletteResolve); >>>> >>>>2) Create a custom palette, and assign it to the gauge. >>>>myGauge.Palette = new Palette("MyCustomPalette"); >>>> >>>>The string identifier of the palette can be anything. However, >>>>myGauge.Palette = new Palette("EarthThones"); is equivalent to >>>>myGauge.Palette = Palette.EarthThones. The "EarthThones" palette is >>>>built-in, and cannot be customized. >>>> >>>>3) Implement the event handler. The event handler will only be called >>>>once, because the palette will be cached in a static variable. >>>>Therefore, if you create a new gauge, and assign it to the same palette, >>>>the event will not be raised. >>>> void Current_PaletteResolve(object sender, PaletteResolveEventArgs e) { >>>> if (e.Palette.Name == "MyCustomPalette") { >>>> using (MemoryStream colorStream = new >>>> MemoryStream(PaletteCustomization.Properties.Resources.Custom)) { >>>> using (MemoryStream mappingStream = new >>>> MemoryStream(PaletteCustomization.Properties.Resources.Custom_Mapping)) >>>> { >>>> e.LoadPaletteFromStream(colorStream, mappingStream); >>>> } >>>> } >>>> } >>>> } >>>> >>>>Similar to ChartFX, a palette is made up of 1) a color collection 2) a >>>>color mapping. In this implementation, I have created a resource called >>>>PaletteCustomization (WinForms VS2005). This resource contains two >>>>files: Custom and Custom_Mapping; >>>> >>>>4) Create the palette files. This is an example for Custom: >>>> >>>>RGB(0,0,0) >>>>RGB(255,255,255) >>>>RGB(199,199,199) >>>>RGB(224,224,224) >>>>RGB(81,121,214) >>>>RGB(239,47,65) >>>>RGB(255,199,0) >>>>RGB(186,229,92) >>>>RGB(7,186,206) >>>>RGB(168,168,168) >>>>RGB(218, 231, 248); Alt BG >>>>RGB(64,64,64); >>>>RGB(192,150,0);alt start >>>>RGB(140,172,69); >>>>RGB(61,91,161); >>>>RGB(102,102,102);others >>>>RGB(72,38,35) >>>> >>>>And for Custom_Mapping: >>>>OutsideBorder, 10 >>>>InsideBorder, 1 >>>>Indicator, 1 >>>>MajorTickmark, 9 >>>>MediumTickmark, 9 >>>>MinorTickmark, 9 >>>>Scale, 3 >>>>ScaleBorder, 9 >>>>StripBorder, 15 >>>>Label, 15 >>>>CapColor, 15 >>>>NumericalCharacter, 5 >>>>Cover, 15 >>>>Section1, 6 >>>>Section2, 7 >>>>Section3, 4 >>>>AlternateSection1, 12 >>>>AlternateSection2, 13 >>>>AlternateSection3, 14 >>>> >>>>For example, MajorTickmark has a color index of 9. The 9th color in >>>>Custom is RGB(168,168,168). >>>> >>>> >>>>Be free to post again if you need more information. >>>> >>>> >>>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>>news:nW1QuMneGHA.1536@webserver3.softwarefx.com... >>>> >>>> >>>>>Hi! >>>>> >>>>>I recently got a hotfix, the dlls are from 3rd May 06. Is this new >>>>>enough? >>>>>And how do I customize the palette then? >>>>> >>>>>Regards >>>>> >>>>>Oliver Denzel >>>>> >>>>>Software FX Support wrote: >>>>> >>>>> >>>>>>Dear Olivier: >>>>>> >>>>>>Palette customization will be one of the many new features part of the >>>>>>next service pack. However, the bits are ready as far as the >>>>>>customization is concerned. Please contact support@softwarefx.com for >>>>>>more details on how to get the HotFixes. Make sure to refer this >>>>>>newsgroup post in your email. >>>>>> >>>>>>Regards, >>>>>> >>>>>>-- >>>>>>PR >>>>>> >>>>>> >>>>>> >>>>>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>>>>news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... >>>>>> >>>>>> >>>>>> >>>>>>>Hi! >>>>>>> >>>>>>>How can I create my own Palette for the Gauges? >>>>>>> >>>>>>>Regards >>>>>>> >>>>>>>Oliver Denzel >>>>>> >>>>>> >> Link to comment Share on other sites More sharing options...
Software FX Posted May 25, 2006 Report Share Posted May 25, 2006 Dear Olivier: Please contact Support to get the latest hotfix for Gauges, as I have just fixed the problem. BTW, we are really close to release a full-feature service pack in the coming days. The service pack will contain in-depth documentation on how to customize the gauge. Regards, -- PR "Oliver Denzel" <ODE@mik.de> wrote in message news:bz8CF%23jfGHA.1536@webserver3.softwarefx.com... > Hi! > > Yes, the code in the eventhandler gets executed, and the name of the > Palette is MIK-Test as I specified. So the code in the if clause also gets > executed. > > Any other hints? > > Regards > > Oliver Denzel > > Software FX Support wrote: >> Dear Olivier: >> >> Do you subscribe to the event before rendering the gauge? Is your event >> handler being called? If so, what is the value of e.Palette.Name? >> >> Regards, >> >> -- >> PR >> >> >> "Oliver Denzel" <ODE@mik.de> wrote in message >> news:pxd$T6oeGHA.3992@webserver3.softwarefx.com... >> >>>Hi! >>> >>>I implemented your suggestion, with a change: I read the palette from >>>files. Therefore my code looks like this: >>> >>>private void Current_PaletteResolve(object sender, >>>ChartFX.WinForms.Gauge.Customization.PaletteResolveEventArgs e) >>>{ >>>if (e.Palette.Name.StartsWith("MIK")) >>>{ >>>try >>>{ >>>using (FileStream colorStream = new FileStream("C:\\custom.txt", >>>FileMode.Open)) >>>{ >>>using (FileStream mappingStream = new >>>FileStream("C:\\custom_mapping.txt", FileMode.Open)) >>>{ >>>e.LoadPaletteFromStream(colorStream, mappingStream); >>>} >>>} >>>} >>>catch (Exception ex) >>>{ >>>log.Info("Exception on loading palette: ", ex); >>>} >>>} >>>} >>>The code executes without an exception, but afterwards there is an >>>exception, that the palette MIK-Test (which I defined) is not resolved. >>> >>>Regards >>> >>>Oliver Denzel >>> >>>Software FX Support wrote: >>> >>>>Dear Olivier: >>>> >>>> >>>>The customization of the Gauges relies on a singleton object called >>>>ResourceLibrary. This object follows a pull model, i.e., it will ask >>>>when it needs to load a custom palette. >>>> >>>>1) Subscribe to the PaletteResolve event: >>>> ResourceLibrary.Current.PaletteResolve += new >>>> PaletteResolveHandler(Current_PaletteResolve); >>>> >>>>2) Create a custom palette, and assign it to the gauge. >>>>myGauge.Palette = new Palette("MyCustomPalette"); >>>> >>>>The string identifier of the palette can be anything. However, >>>>myGauge.Palette = new Palette("EarthThones"); is equivalent to >>>>myGauge.Palette = Palette.EarthThones. The "EarthThones" palette is >>>>built-in, and cannot be customized. >>>> >>>>3) Implement the event handler. The event handler will only be called >>>>once, because the palette will be cached in a static variable. >>>>Therefore, if you create a new gauge, and assign it to the same palette, >>>>the event will not be raised. >>>> void Current_PaletteResolve(object sender, PaletteResolveEventArgs e) { >>>> if (e.Palette.Name == "MyCustomPalette") { >>>> using (MemoryStream colorStream = new >>>> MemoryStream(PaletteCustomization.Properties.Resources.Custom)) { >>>> using (MemoryStream mappingStream = new >>>> MemoryStream(PaletteCustomization.Properties.Resources.Custom_Mapping)) >>>> { >>>> e.LoadPaletteFromStream(colorStream, mappingStream); >>>> } >>>> } >>>> } >>>> } >>>> >>>>Similar to ChartFX, a palette is made up of 1) a color collection 2) a >>>>color mapping. In this implementation, I have created a resource called >>>>PaletteCustomization (WinForms VS2005). This resource contains two >>>>files: Custom and Custom_Mapping; >>>> >>>>4) Create the palette files. This is an example for Custom: >>>> >>>>RGB(0,0,0) >>>>RGB(255,255,255) >>>>RGB(199,199,199) >>>>RGB(224,224,224) >>>>RGB(81,121,214) >>>>RGB(239,47,65) >>>>RGB(255,199,0) >>>>RGB(186,229,92) >>>>RGB(7,186,206) >>>>RGB(168,168,168) >>>>RGB(218, 231, 248); Alt BG >>>>RGB(64,64,64); >>>>RGB(192,150,0);alt start >>>>RGB(140,172,69); >>>>RGB(61,91,161); >>>>RGB(102,102,102);others >>>>RGB(72,38,35) >>>> >>>>And for Custom_Mapping: >>>>OutsideBorder, 10 >>>>InsideBorder, 1 >>>>Indicator, 1 >>>>MajorTickmark, 9 >>>>MediumTickmark, 9 >>>>MinorTickmark, 9 >>>>Scale, 3 >>>>ScaleBorder, 9 >>>>StripBorder, 15 >>>>Label, 15 >>>>CapColor, 15 >>>>NumericalCharacter, 5 >>>>Cover, 15 >>>>Section1, 6 >>>>Section2, 7 >>>>Section3, 4 >>>>AlternateSection1, 12 >>>>AlternateSection2, 13 >>>>AlternateSection3, 14 >>>> >>>>For example, MajorTickmark has a color index of 9. The 9th color in >>>>Custom is RGB(168,168,168). >>>> >>>> >>>>Be free to post again if you need more information. >>>> >>>> >>>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>>news:nW1QuMneGHA.1536@webserver3.softwarefx.com... >>>> >>>> >>>>>Hi! >>>>> >>>>>I recently got a hotfix, the dlls are from 3rd May 06. Is this new >>>>>enough? >>>>>And how do I customize the palette then? >>>>> >>>>>Regards >>>>> >>>>>Oliver Denzel >>>>> >>>>>Software FX Support wrote: >>>>> >>>>> >>>>>>Dear Olivier: >>>>>> >>>>>>Palette customization will be one of the many new features part of the >>>>>>next service pack. However, the bits are ready as far as the >>>>>>customization is concerned. Please contact support@softwarefx.com for >>>>>>more details on how to get the HotFixes. Make sure to refer this >>>>>>newsgroup post in your email. >>>>>> >>>>>>Regards, >>>>>> >>>>>>-- >>>>>>PR >>>>>> >>>>>> >>>>>> >>>>>>"Oliver Denzel" <ODE@mik.de> wrote in message >>>>>>news:l2Mjl6AdGHA.3992@webserver3.softwarefx.com... >>>>>> >>>>>> >>>>>> >>>>>>>Hi! >>>>>>> >>>>>>>How can I create my own Palette for the Gauges? >>>>>>> >>>>>>>Regards >>>>>>> >>>>>>>Oliver Denzel >>>>>> >>>>>> >> Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.