Giter Club home page Giter Club logo

qt5-cadaques's People

Contributors

jryannel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qt5-cadaques's Issues

typo: s/of/off

back-link: ch04/index.html#input-elements

We start of with the text editing elements
I think you mean;
We start off with the text editing elements

English

back-link: ch04/index.html#quick-starter

s/an overview about QML/an overview of QML/
s/Later we will have a short look onto how to/Later briefly look at how to/
s/arrange lements/arrange elements/
s/look onto elements/look at elements/

I won't repeat suggestions that are the same to save us all time.
Suggestion: g/look onto/look at/

Elaborate on Item element

back-link: ch04/index.html#item-element

I think you should elaborate a little bit more about the Item element.

Event though you have put the following statement at the end of the section, "An item has many fundamental properties, we will introduce most of them over the course of the book.", I still think you should list some properties because you mention geometry.

For example:
The Item doesn't do any painting by itself but has a lot of properties that is used to affect the visual appearance, among others, anchoring, geometry, rotation, scaling and opacity.

This makes it more clear that the Item actually have a lot of functionality for visual items.

Item and MouseArea -> no visual

I wouldn't call Item and MouseArea visual.
They have a geometry, but that's it...

In detail:
a. QObject non visual, no geometry
b. QDeclarativeItem default: non visual, geometry
c. QDeclarativeItem with contents: visual, geometry

The difference between b and c is, if this flag is set or not:
QGraphicsItem::ItemHasNoContents

back-link: ch04/index.html#item-element

Hint to QDecalarativeImageProvider

back-link: ch04/index.html#image-element

Even if QDecalarativeImageProvider is not or is later explained, add at least a note here. It gave me quite a headache when I wanted to use an Image element with dynamically generated content and without having to write it somewhere in the filesystem. Would have been easier if I had at least know this class and what its purpose is at that time.

Rectangle / border

back-link: ch04/index.html#rectangle-element

"Additonal it supports borders defined by color and width": could be missleading, because "Rectangle" also supports those properties, hence "border.color" and "border.width" might be better.

English

back-link: ch04/index.html#qml-syntax

s/QML is a declarative language to describe/QML is a declarative language used to describe/

z-order of Items

back-link: ch04/index.html#item-element

Probably you need to mention the natural and the z-order of Items.

For example, later in the chapter (Simple Transformations) you have a MouseArea as a background and three rockets that you can click. Why does this "just work" both graphics and click-wise.

Mention of property aliases?

back-link: ch04/index.html#properties

Did not know about the 'default' keyword. Very interesting. But perhaps you could also mention the property alias? Another very useful feature I discovered more or less by coincidence.

property <type> <name> : <value>

back-link: ch04/index.html#properties

no idea if something like that is important ... but the right grama syntax would be:
[default] property [: defaultValue]

... the [default] can be left out.

grammar / typo

back-link: ch04/index.html#properties

s/A property has default a value and a well-defined type./A property has a default value and a well-defined type./

s%// (7) Keys is a attached property%// (7) KeyNavigation is an attached property%
btw, "focus: true" has nothing to do with attached properties, so it should be placed before the comment above.

More info about the Text element

back-link: ch04/index.html#text-element

Nice things to mention in this section is alignment, elide, format and style.

I do also believe that you should put a note about the difference of using anchoring to align the text compared to hor/vert-alignment

default value

There are 2 side to the phrase "default value" ... in in qml-space you should only use the second one:

  1. type-default-value (closed possible in c++ would be default-contructor)
  2. state-default-value ... the value you set in your qml file out-side of all states ... or better: for the default state.

As the second one is very important to understand if you want to become a qml-hero it's dangarouse to "flood" people with 1. ;)
Either remove all statments about it, or find another word for it ;)

back-link: ch04/index.html#properties

Misc

back-link: ch04/index.html#rectangle-element

You should mention where the list of color names comes from. (Looks like rgb.txt to me.)

s/premanufactured/predefined/

Rephrase?

back-link: ch04/index.html#mousearea-element

s/By this it allows you to show the user an interface element, but the interaction are can be larger./By this it allows you to show the user an interface element, but the interaction can be larger./
(remove "are") - but still hard to digest.

Full sentence

back-link: ch05/index.html#fluid-elements

This comes together with a system to describe your user interface using states. Where each state defines property changes and can be enhanced with transitions, ...

Either us comma instead of full stop: ... states, where ...
or remove "Where" -> ... states. Each state defines ...

Run spell-checker

There are many spelling errors / typos that a spell-checker could easily find (like gop, propertis, proeprty, choosen etc.)

it is used to reference elements inside a QML document.

actually that's wrong.
The key word is dynamic scoping ... at powerful, dempting and extermly dangarous pattern which one can't turn off :(

To some extend your write: It's very important to only reference elements inside YOUR qml document, altough nobody forces you to.
This should be a "tip" or something

name vs. type

"An element is declared by it’s name followed by { }"

isn't it "type" or "name of the component" ... it's not the name of the element.
It's a minor perspective thing ... but I think "type" would be easier to understand

Horizontal gradients

back-link: ch04/index.html#rectangle-element

"Note
It is not possible to create an angled gradient. For this it’s better to use premanufactured images"

Maybe also worth noting that horizontal gradients can be created by rotating the item by 90 degrees?

s/event handler/signal handler/

back-link: ch04/index.html#properties

At position 8 in the numbered list: 'For every property you can provide an event handler.'

I think that this should be 'signal handler' and not 'event handler'

typo: s/then/than

back-link: ch04/index.html#layout-items

...stronger then competing geometry...
should be:
...stronger than competing geometry...

typo: It's, should be Its

back-link: ch04/index.html#text-element

It’s most notable property... Should probably be 'Its'

The element calculates it’s initial... Probably here too

typo: flow should be Flow

back-link: ch04/index.html#positioning-elements

The final positioner is flow.
Should be:
The final positioner is Flow.

Always better to scale down

back-link: ch04/index.html#simple-transformations

"It’s always better to scale images down then up."

Should this be a side note? Could it also include an explanation why this is the case?

Also found a typo: s/then/than

Almost whole 'Scripting' paragraph is incorrect

back-link: ch04/index.html#scripting

  1. The text handler doesn't print the number of times the text has changed, it only prints the text.
    Maybe change 'text handler' to 'onTextChanged signal handler'
  2. The text doesn't react on the escape key but the space key.
    You don't set the text from the js function, you update the spacesPressed property which will trigger the binding which updates the text
  3. There's nothing in the example that will clear the text.

I think that you should highlight and elaborate on "The difference between QML : and JS = is, the binding is a contract and keeps true. The JS = is a one-time assignment.". It's a big difference between property binding and assignment.

(1) is not correct

back-link: ch04/index.html#scripting

See
"// (1) handler for text changes
onTextChanged: console.log("text changed:", text)"

Spelling

back-link: ch04/index.html#text-element

s/It’s most notable property is the text property or type string. The element calculates it default with and height based on the given text and the font used./It’s most notable property is the text property of type string. The element calculates its default width and height based on the given text and the font used./
(or->of, it=>its, with->width)

Misc

back-link: ch04/index.html#text-element

You should mention wrapping and whether (and how) to set a background color.

Code suggestions

back-link: ch04/index.html#scripting

I'd rename count to increment and rename counter to spacePresses and change the key from Escape to Space.

Makes it sense to at leaset mention AnchorAnimation here?

back-link: ch05/index.html#animation-elements

I already noticed in the last chapter in the drag&drop note that you wrote you cannot drag an drop anchored elements, but did not say they can be 'unanchored' on-the-fly if necessary. Now you show all important animation elements, but again miss the AnchorAnimation. I am sure it will appear sooner or later, but why not put it into the list?

qml should be upper case

back-link: ch04/index.html#qml-syntax

Current: Let’s start with a simple example of a qml file to explain the different syntax.
Should be: Let’s start with a simple example of a QML file to explain the different syntax.

Queries

back-link: ch04/index.html#qml-syntax

You don't explain why it is a good idea to name the root element "root". Why not "app" or "application" or "window"?

You don't explain why the id name is unquoted but the color name is quoted when both are single words.

You show how to run qmlscene on Unix-like systems but not on Windows. Also, you don't explain why you are using qmlscene rather than some other exectuable.

typo

back-link: ch04/index.html#qml-syntax

s/QML is designed from the ground up to describe user interfaces not text-document./QML is designed from the ground up to describe user interfaces not text-documents./
"text-documents" (plural)

s/In general you always want to import QtQuick 2.0 as your default set as elements/In general you always want to import QtQuick 2.0 as your default set of elements/

Consistency: In the same list (above) either print a full stop at the end of each list element or remove it for each element.

rectangle.qml or Rectangle.qml or main.qml

back-link: ch04/index.html#qml-syntax

The filename for the rectangle example is 'rectangle.qml'. The common practice for naming QML-component files is to use camel-case. If the rectangle example is intended to be used as a 'stand-alone' application I would recommend changing the name to main.qml (or something similar) to make it clear for the user that this is an application and not a component.

Positioners are a part of QtQuick and not QML

back-link: ch04/index.html#positioning-elements

These are called positioners and the following are provided in QML Row, Column, Grid and Flow.

Correct me if I'm wrong but aren't positioners actually a part of QtQuick and not QML?

BlackBerry cascades uses QML but doesn't have positioners, unfortunately :)

spelling

back-link: ch04/index.html#image-element

s/An image using PreserveAspectCrop should also to enable the clippping to avoid image data to be painted outside the Image element boundaries./An image using PreserveAspectCrop should also enable clippping to avoid image data to be painted outside the Image element boundaries./
(remove "to", possibly "the", as well?)

spelling / english

back-link: ch04/index.html#components

s/
There are different way to create components in QML./
There are different ways to create components in QML./
(way->ways)

s/
Our task is now to extract the button ui in a reusable component./
Now our task is to turn the button UI into a reusable component/ ??

s/
You do this by imagine how you would like to use the button./
To do so, consider how you would like to use the button./ ??

s/
Also I would expect the button has a sensible default size/
Also I would expect the button to have a sensible default size/ ?

s/
Additional we need to export the properties a user might want to change on the root level./
Additionally we need to export the properties a user might want to change on the root level./

s/
For this is important to now, out the root level properties can be accessed from outside this file./
It is important to know, that only root level properties can be accessed from outside a component file/ ??

s/
We will introduce more such ui components and also come back the button theme later./
We will introduce more such ui components and also come back to the button theme later./

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.