Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

You can override some Qcadoo Framework resources (such as images, CSS)  without need to modify them by adding plugin with new version of given resource inside the same relative path as in qcadoo-view.

Warning

I recommend you placing all resource's overridings in one separate plugin to be avoided avoid of time-consuming searching for appearance modifications in whole application or accidental overriding your previous changes.

Warning

As long as we do not have any impact on the order of loading JAR archives' resources under Tomcat (http://issues.qcadoo.org/browse/QCADOO-352) and the default order based on their (JARs) names there is need to give your GUI-customizing plugin name that will be lexicographically smaller than 'qcadoo-view'.

I. Overriding resources

For example: We want to replace logo seen at top left corner.

...

  1. Create (arbitrary named) plugin for UI customizations (if such plugin does not already exists in your application)

    Info

    Note that you do not need to specify an <view:resource /> element in qcadoo-plugin.xml for resources which you override. They are already registered in qcadoo-view plugin.

  2. Find relative path of resource which you want to replace with your own.
    In our case this is /qcadooView/public/css/core/images/logo_small.png.

  3. Put new resource in src/main/resources/<relative path obtained in step 2>
    For example: src/main/resources/qcadooView/public/css/core/images/logo_small.png

Be aware that path contains plugin identifier of the original resource owner (in above example - qcadooView), not plugin in which you placing new version (for example appNameCustomLook)!

II. Adding custom CSS rules

Qcadoo Framework allow you to appending additional CSS rules without need to overriding whole existing CSS file since we provide empty qcadooView/public/css/custom.css in version 1.2.0.
You can appending additional rules instead of replacing whole CSS sheets just by override custom.css (see previous section).

...