I've just updated my glasses to XE12. Since then the Card doesn't behave in the same way as before.
I want to display a card of text. Here is my current code, I had to change "setFullScreenImages" by "setImageLayout()" as it was deprecated.
card = new Card(this);
card.setText("Ce chocolat contient :\nSucre, beurre de cacao, cacao (min 31.5%), lait en poudre entier, liqueur de cacao, lécithine, vanilline.");
card.setImageLayout(ImageLayout.FULL);
card.addImage(R.drawable.card_chocolate_background);
card.setFootnote("Info produit");
The result I got with XE11 was:
The result with XE12:
Can someone tell me how to display the text correctly ? I have a demo tomorrow and I'm a bit stucked with this autoupdate.
Thanks !
This was indeed a change in the full-screen image layout in XE12, to match other card styles used on Glass.
If you're just using the Card to generate views, you can duplicate the old look with a custom layout for the time being. If you need it to insert static cards, on the other hand, you'll either need to use the new layout or switch to ImageLayout.LEFT to fit some more text on the card. You may want to follow issue 315 on our issue tracker, since it sounds like that functionality would help you with creating more customized layouts.
Related
First time poster; long time admirer of the Stack Overflow angels.
I'm having an issue with colors in span text that are controlled by Pango.
Long Version:
I'm updating an old UI program which has C++ code guts with GTK, XML (written by Glade), and an RC stylesheet handling the graphics. Some of our colored markup text is hard-coded in the XML. Some of it is dynamically set in the C++ code.
The problem is, that when the program runs on our older systems, the color referenced by span text as 'green' shows up as #00FF00. On our newer systems, 'green' is showing up as #008000.
Example of code printing to a label widget:
gtk_label_set_markup((GtkLabel *) TitleBarLabel, "<span color='green'>Orbital Cannon Positioning</span>");
I'm fairly certain that Pango is in control of the span text markup. I found that the difference between the greens is exactly the difference between X11 and W3C color lists (https://en.wikipedia.org/wiki/X11_color_names#Clashes_between_web_and_X11_colors).
It seems that our old systems are using X11 and our new ones are using W3C, which makes sense.
I could just replace all instances of 'green' with '#00FF00' but if we wanted to change the colors in the future, we'd have to go through the whole thing again. I'd much rather have the colors changeable through a stylesheet instead of baked into the code.
C++ Code:
GtkWidget * TitleBarLabel;
TitleBarLabel = GTK_WIDGET (get_builder_object (builder, "TitleBarLabel"));
gtk_label_set_markup((GtkLabel *) TitleBarLabel, "<span color='#00FF00'>Death Ray Power Status</span>");
I can create a GdkColor at run-time and gdk_color_parse it with values from a config file, and then use gtk_widget_modify_text() to apply the color to the label widgets. But then that doesn't work for all of the hard-coded span text in the XML. Also, we have pleanty of labels with bits of text colored differently inside the same line.
C++ Code:
GdkColor pass_color;
gdk_color_parse("#00FF00", &pass_color);
gtk_widget_modify_text(TitleBarLabel, GTK_STATE_NORMAL, &pass_color);
I can make a style in my RC file for each color and link every single label that would use that color at run-time. But we'd have to remove all markup coloring and add lots of code for grabbing widgets that we never bothered with before and code for setting names of widgets instead of just printing to them with new span text. It gets the desired result of having the colors changeable in a stylesheet but it's a massive undertaking and it's not intuitive for our veteran engineers who are used to using the color attributes.
RC File:
style "pass_color"
{
fg[NORMAL] = #00FF00
}
widget "*TitleBarLabel_Pass" style "pass_color"
C++ Code:
gtk_widget_set_name(TitleBarLabel, "TitleBarLabel_Pass");
Short Version:
Ideally, I would like to be able to make a new color at run-time that we can link with span text in such faction:
<span color='MyNewColor'>Weather Manipulation Settings</span>
Or maybe even create a new tag that applies specific attributes, like:
<span><MyNewColor>Shark Tank pH Balance</MyNewColor></span>
But I doubt that's possible.
I tried playing around with pango_attr_type_register(), pango_attr_foreground_new(), and friends, but I couldn't figure out how attributes work of if they could even do what I thought they did. After much research, it looks like an 'attribute' is just a one-time setting on a single string of text. And not a new value that can be called in line with span text, as I hoped.
Is anything like this remotely possible without rebuilding all of Pango?
Is there a different work around that would get me a stylesheet like setup?
At this point, I'm open to suggestions.
Version Specs:
Computers showing green as #00FF00
OS: Linux Slackware 13.37 and below
GTK: 2.24.4
Pango: 1.28.4
Computers showing green as #008000
OS: Linux Slackware 14.1
GTK: 2.24.20
Pango: 1.34.1
If you are able to use GTK 3.x, I would suggest doing that, where this is much easier to do using CSS. There is even a way to use multiple CSS styles for different regions in the same label, though it is awkward.
In GTK 2, as you noted, you can reference widgets by their name property in your RC file:
widget "shark-tank-ph-label" style "green-text"
style "green-text" {
text[NORMAL] = #008000
}
I would recommend taking this approach even if it's not what you're used to. Refactoring once to remove the hardcoded colors from your labels will make it much easier the next time you have to change something like this, and will also make your code closer to how things would work in GTK 3.x should you decide to make a port in the future.
How to set color to the card object?
There is some information about which are the support html tags, however i don´t know how to use it.
Card m_InstructionCard new Card(this);
String texto = getString(R.string.instruction_card_text);
m_InstructionCard.setText(Html.fromHtml(texto));
m_InstructionCard.setTimestamp(R.string.instruction_card_info);
m_InstructionCard.addImage(R.drawable.second_capture);
The function setText don´t support spanned.
Should I use style? There is some example of how do it?
As i can´t use card with resource xml, i don´t know how to do it.
The Card.setText method currently only supports unstyled Strings. Please file an enhancement request on our issue tracker if you would like to see other features.
I want to change UIAnnotationView image on mapkit in rubymotion language.
Any one know this, kindly help me.
How about a complete working example? I just tested it :)
A budy and I converted a LOT of iOS code from the iOS Cookbook to RubyMotion
There's a whole chapter on Maps, but the one that looks to answer your question best is this:
https://github.com/IconoclastLabs/rubymotion_cookbook/tree/master/ch_6/06_custompins
It's just like colored pins, but your main difference will be this
pinImage = UIImage.imageNamed("ilpin.png")
annotationView.image = pinImage
Goodluck! - Gant from Iconoclast Labs
I think you mean, an MKAnnotationView? If so, you just need to set the image property to a new UIImage. See this Gist:
https://gist.github.com/3049611
Based on the RubyMotionSamples Beer project - https://github.com/HipByte/RubyMotionSamples/blob/master/Beers/app/beer_map_controller.rb
I have added a new image file called 'signpost.png' under 'resources', and altered the code from using a pin to using a straight up annotation, with the new custom image.
The following code works fine to change the UIAnnotationView's image
view = MKAnnotationView.alloc.initWithAnnotation(annotation, reuseIdentifier:ViewIdentifier)
view.image = UIImage.imageNamed("ptr.jpg")
view.canShowCallout = true
I have saved the image ptr.jpg in resources folder.
I just installed the Expression Blend Studio 4 (Trial) from Microsoft.
I have several tutorials telling me to change the style, that I should go to
(Assets) Styles > SketchStyles
There is nothing under that area except a warning(and link)
This category shows all the styles you have created for the current document or application. Additional styles can be found in the online Expression Gallery.
That link gets me no where fast. It basically goes to the home page of Expression Blend.
If you look at this 90 second video.
http://electricbeach.org/files/sketchflow_overview.wmv
At the 30-36 second mark, he is switching the style from squiggly to something more professional.
I'm trying to demo that same thing, which I believe (keep in mind I'm new to this) I am changing FROM the WigglyStyles style to something else.
With
(Assets) Styles > SketchStyles
being empty, I don't know what I'm missing.
...........
So a 2 part question:
How do I get entries to show up under (Assets) Styles > SketchStyles?
(If different from #1), how do I change the overall style from WigglyStyles to something else (and back to WigglyStyles)?
Thanks!
Is misssing the SketchStyles.xaml.
SketchStyles.xaml – this file contain the resource dictionary with number of styles which SketchFlow project makes use of them internally.
Solution:
Create a new solution, a (sketchflow silverlight solution), copy the SketchStyles.xaml from your created solution drag and drop the to the project that doesn't have this file, and press ctrl+shift+B to build it.
hope it helped.
The message was throwing me off.
The little triangle, pointed "to the right" initially, has to be clicked (and then points down) exposing the sub items.
The message:
This category shows all the styles you have created for the current document or application. Additional styles can be found in the online Expression Gallery.
is what was throwing me off. (And I was thinking the same thing as alimbada, that my install went awry).
Once I expand "Styles" (via the small triangle), everything is there.
Ok!! Did I mention I'm a developer, not a designer?? (haha).
Aka, this was just a big "duh" moment.
Thanks.
I just had a quick play with Sketchflow since I have Blend installed and those styles show up fine. Maybe your install went awry?
In my project i'm trying to use qt linguist. When i change the language from English to Turkish, it is working all constant label.
But some labels i m loading them dynamically according to scenario of use cases.
Whatever i do with qt linguist, it doest workthe texts of these label.
How can i get rid of this problem?
Any help will be apprecialted
Qt has a guide to internationalization, which includes the basic information: to wrap your string in a tr function call.
label->setText( tr( "Hello, World!" ) );
In addition to this, if you want the language to change on the fly, you'll need to identify when the context has changed, and update your labels appropriately. Unfortunately, I can't easily put my hands on the signal that indicates when to do so.