diff --git a/Documentation/add_ons.html b/Documentation/add_ons.html new file mode 100644 index 00000000..6d95b37b --- /dev/null +++ b/Documentation/add_ons.html @@ -0,0 +1,72 @@ + + + +ArtPaint: Add-ons + + + +
+
+ + + + + + +
+ + + +
+ +

Add-ons

+Much of ArtPaint's functionality comes through add-ons. Add-ons are small programs that ArtPaint can load to do some specific job. Everyone can make their own add-ons with the help of ArtPaint Add-on Developer Kit (to be released soon), and some knowledge of programming the BeOS. The add-ons can be accessed through paint-window's Add-Ons-menu. Currently all add-ons affect only one layer at a time. + +

Descriptions of the included add-ons

+This part briefly describes the add-ons that were included with the BeOS version. +Currently it doesn't quite match the ones available as yet in Haiku. +
+
Blur +
Opens a window that allows you to adjust the blurriness of the image with a slider. The blur is reflected on the image when you let go of the slider. +
Brightness +
Opens a window that allows you to adjust the brightness of the image with a slider. The change in brightness is reflected on the image right when you move the slider. +
Color Balance +
Opens a window that has three sliders for controlling the amount of red, green and blue color in the image. The change in color-balance is reflected in the image at the moment you move the sliders. +
Contrast +
Opens a window that has a slider for adjusting the contrast of the image. The change in contrst is reflected in the image right away. +
Stretch Histogram +
Improves the contrast of the image by stretcing its histogram to maximum possible length. If the image contains pure black and pure white this operation will do nothing. +
Dispersion +
Changes the pixels positions in the image randomly a little bit to create a "dispersed" look. +
Emboss +
Creates an emboss effect on the image. +
Greyscale +
Converts the image into greyscale. +
Halftone +
Creates a halftone-pattern on the image. The foreground-color is used to color the dark parts and the background-color is used to color the light parts. +
Negative +
Creates a negative image of the picture by inverting every color. The inversion is done in RGB-color-space +
Oil +
Creates a pattern on the image that tries to simulate the effect of painting the image with brush strokes. +
Saturation +
Opens a window that contains a slider for controlling the saturation of the image. The effect is reflected on the image right when the slider is moved. +
Twirl +
Makes a twirl-effect on the image. Opens a window with two sliders for controlling the size and the direction of the twirl. The center for the twirl can be set by clicking on the image and dragging around. +
Wave +
Creates a circular wave effect on the image. Opens a window that controls sliders for controlling the length and the strength of the wave. The wave center can be adjusted by clicking on the image with the mouse and dragging around. +
PerlinWood +
Creates a wood-like texture over the image. +
+ +
+
+
+ + + \ No newline at end of file diff --git a/Documentation/airbrush.html b/Documentation/airbrush.html new file mode 100644 index 00000000..62dc885c --- /dev/null +++ b/Documentation/airbrush.html @@ -0,0 +1,51 @@ + + + +ArtPaint: Airbrush-tool + + + +
+
+ + + + + + +
+ + + +
+ +

Airbrush-tool

+The airbrush-tool simulates an airbrush. The tool is used by pressing the mouse-button over the image and moving the mouse to locations where the airbrush should be applied. +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for airbrush-tool. +
+ + + +
+Figure 1: Setup view for the free line -tool. +
+
+
+

+

+
Size +
This controls how big area the spray from the airbrush will cover. The area is circular and this controls its width. +
Flow +
This controls how much paint will come from the airbrush. The bigger this value is, the faster the paint comes out of the airbrush. +
Airbrush +
When this option is selected the airbrush will cover the surface evenly. +
Spray +
When this option is selected the airbrush will form of individual dots that cover the surface. +
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/blur_tool.html b/Documentation/blur_tool.html new file mode 100644 index 00000000..f8e97efd --- /dev/null +++ b/Documentation/blur_tool.html @@ -0,0 +1,47 @@ + + + +ArtPaint: Blur-tool + + + +
+
+ + + + + + +
+ + + +
+ +

Blur-tool

+The blur-tool is used to blur parts of the image. The tool is used by pressing the mouse-button over the image and moving the mouse around to the parts that need to be blurred. +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for the blur-tool. +
+ + + +
+Figure 1: Setup view for the blur-tool. +
+
+
+

+

+
Size +
This controls the size of the area that is blurred at once. The area is circular and this controls its diameter in pixels. +
Continuous +
When this option is selected the image will be blurred all the time the mouse-button is held down. Otherwise the image will be blurred only when the mouse is moved (with the mouse-button down). +
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/brush_tool.html b/Documentation/brush_tool.html new file mode 100644 index 00000000..57cd898d --- /dev/null +++ b/Documentation/brush_tool.html @@ -0,0 +1,68 @@ + + + +ArtPaint: Brush-tool + + + +
+
+ + + + + + +
+ + + +
+ +

Brush-tool

+The brush-tool uses user-defined brushes to paint on the image. The tool is used by clicking on the image and moving the mouse to produce a free-hand line. +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for brush-tool. +
+ + + +
+Figure 1: Setup view for the brush-tool. +
+
+
+

+The image at left top is preview of the brush. The red line beneath the brush shows the scale of the preview. If the line is full width, the brush is in actual size. If the line is half width, the preview is only half of the brush's actual size. The brush can be rotated to different orientations by clicking on its image and moving the mouse. +

+

+
Rectangle +
When this option is selected, the brush will be rectangle shaped. +
Ellipse +
When this option is selected, the brush will be ellipse shaped. +
Store Brush +
This button does not change the settings for the brush, but it instead stores the brush to brush-window. Brush-window is explained at the end of this page. +
Width +
This option adjusts the width of the brush. The width is measured in pixels +
Height +
This option adjusts the height of the brush. The height is measured in pixels. +
Fade +
This option adjusts how much the edges of the brush will be faded. The bigger this value is the more the edges will be faded. The fade is not relative to brush size, so fade will affect more a little brush than a big brush. +
+

Brush-window

+The brush window is used as a storage for brushes. You can select brush to be used by clicking on it in the brush window. You can also delete the currently selected brush from the brush-window with the menu-item or by pressing delete-key when the brush-window is active. Figure 2 shows the brush-window. +
+ + + +
+Figure 2: The brush-window. +
+
+
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/color_selector.html b/Documentation/color_selector.html new file mode 100644 index 00000000..e5b28369 --- /dev/null +++ b/Documentation/color_selector.html @@ -0,0 +1,45 @@ + + + +ArtPaint: Color Selector -tool + + + +
+
+ + + + + + +
+ + + +
+ +

Color Selector -tool

+Color selector -tool selects colors from the image. It is used by clicking on the image over the color that needs to be selected. The selected color will then become the new foreground-color. If the mouse is moved over the image while the button is held down, a window will pop up showing in RGB-coordinates the color that is under the cursor. +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for the color selector -tool. +
+ + + +
+Figure 1: Setup view for the color selector -tool. +
+
+
+

+

+
Size +
If this option is 1, the selected color will be the one under the cursor. If this is bigger than 1, the selected color will be taken as an average from the rectangular area that has the width indicated by size and whose centerpoint is under the cursor. +
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/colors.html b/Documentation/colors.html new file mode 100644 index 00000000..933236af --- /dev/null +++ b/Documentation/colors.html @@ -0,0 +1,80 @@ + + + +ArtPaint: Colors + + + +
+
+ + + + + + + +
+ + + +
+ +

Colors

+ArtPaint offers many possibilities for selecting colors. Colors can be picked from a user-defined color set, or they can be mixed with sliders using one of the various supplied color-models or the color can be picked straight from the image using the color selector -tool. +

Foreground- and Background-color

+Foreground-color is the color that is used by the tools to do the drawing. The background color is used by the eraser-tool and is used as the color to clear the image to. Also some add-ons might use the background color. +If the color is selected with the primary mouse button it will become the foreground-color. If it is selected with some other mouse button it will become the background-color. +

+

Color sets

+Color sets are collections of colors that can be edited. This way the most frequently needed colors can be stored. Each color set can have between 8 to 64 colors. Color sets can be also saved to disk for later use. +

+

Color-window

+Color-window is the place where new colors can be created with sliders and color-sets can be modified or new sets created. Figure 1 shows what the color-window looks like. + +
+ + + +
+Figure 1: Color-window. +
+ +
+
+ +

+The left side of the color-window contains a grid which contains some colors. The colors in this grid are called a color-set. The long bars in the middle are color-sliders that are used to adjust the color. On the right is a box that reflects the currently adjusted color. +

+On the left side of the color-sliders are four letters indicating what color-model is being used. The lowest letter is always 'A', which stands for alpha. Alpha is rather technical term, but it actually means just transparency of the color. If the slider is on the left, then the color is fully transparent, if the slider is on the right, the color is fully visible. A transparent color will have a black-and-white checkerboard pattern that shows underneath the color. +

+The top three sliders control how the color looks like. What these sliders do depend on the selected color-model. The color-model can be changed from color-window's Mode-menu. The different color-models are summarized below: +

+
RGB +
Red, Green and Blue. This model allows the color to be composed of these three basic colors. These components are the same as are the primitive components on a typical monitor's display. Sometimes this model is referred to as being an additive model. +
CMY +
Cyan, Magenta and Yellow. This model allows the color to be composed of three basic colors. This is exactly the opposite as the RGB-model. This model is often used in printing devices (with the additional component K for black) and is also called a subtractive model. +
HSV +
Hue, Saturation, Value. This model composes the image using three basic properties of color. Hue controls what is the basic hue for the color. Saturation controls how saturated the color is, and value controls the brightness of the color. This is often used in painting applications as it is found to be more intuitive than many other color-spaces. +
YIQ +
This model is the same as is used in North American TV transmissions (NTSC). Y component controls the luminance of the color while I and Q components control the hue of the color. +
YUV +
This model is the same as is used in European TV transmissions (PAL). Y component controls the luminance of the color while U and V components control the hue of the color. +
BeOS Controller +
This model is the standard BeOS color controller. If you are using a 32-bit screen depth it is similar to RGB-control, but if you are using an 8-bit depth, it will display the 256 BeOS system colors. +
+

+You can adjust all of the color sliders (but not alpha) at once to the same value by pressing down left shift before sliding. To adjust the values relative to each other, press down left control instead. This is especially useful with the RGB- and CMY-models. +

+The color sets can be adjusted by clicking on one of the colors and then adjusting the color with a slider. The color can also be copied from color set to another location by clicking on the color and dragging it there. +

+The Set-menu in the color-window allows you to create new color-sets and to delete existing ones. It also allows you to save the sets to disk. The current state of the sets is always saved also automatically when the program is quit. +

+The two arrows below the color set allow for changing between different color sets. The active color set along with the arrows is duplicated in the status-bar of every paint-window to allow quicker selection of colors. + +

+
+
+ + + \ No newline at end of file diff --git a/Documentation/ellipse.html b/Documentation/ellipse.html new file mode 100644 index 00000000..615da666 --- /dev/null +++ b/Documentation/ellipse.html @@ -0,0 +1,54 @@ + + + +ArtPaint: Ellipse-tool + + + +
+
+ + + + + + +
+ + + +
+ +

Ellipse-tool

+The ellipse-tool is used to draw filled and outlined ellipses to the image. It is used by pressing down the mouse-button and dragging the mouse around. A preview of the ellipse is rendered on the screen and when the mouse-button is released, the actual ellipse is drawn. + +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for the ellipse-tool. +
+ + + +
+Figure 1: Setup view for the ellipse-tool. +
+
+
+

+

+
Fill Ellipse +
When this option is enabled, the ellipse will be filled with the foreground-color. Otherwise only the outline of the ellipse will be drawn. +
Corner To Corner +
When this option is selected, the first click will set one corner for the bounding box of the ellipse and releasing the mouse-button will set the opposite corner for the bounding box. +
Center To Corner +
When this option is selected, the first click will set the center for the ellipse and releasing the mouse-button will set the lengths of the half-axis of the ellipse. +
+

Keyboard Modifiers

+
    +
  • Pressing down left control while setting the size of the ellipse forces it to be a circle. +
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/eraser.html b/Documentation/eraser.html new file mode 100644 index 00000000..38cad3ba --- /dev/null +++ b/Documentation/eraser.html @@ -0,0 +1,49 @@ + + + +ArtPaint: Eraser-tool + + + +
+
+ + + + + + +
+ + + +
+ +

Eraser-tool

+The eraser-tool erases the contents of image for some part. The tool is used by clicking on the image on the part that needs erasing. The shape of erased area is circular. The eraser can then be moved along the surface of the image to erase it further. +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for the eraser-tool. +
+ + + +
+Figure 1: Setup view for the eraser-tool. +
+
+
+

+

+
Size +
This option controls the size of the eraser. The eraser always erases a circular area and this value is the circle's diameter in pixels. +
Background +
When this option is selected, the color to be erased to is the background-color. +
Transparent +
When this option is selected, the eraser will erase the image to transparent. +
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/fill_tool.html b/Documentation/fill_tool.html new file mode 100644 index 00000000..a0cefa7f --- /dev/null +++ b/Documentation/fill_tool.html @@ -0,0 +1,53 @@ + + + +ArtPaint: Fill-tool + + + +
+
+ + + + + + +
+ + + +
+ +

Fill-tool

+The fill tool is used to fill a region of the image with a single color or with a gradient of two colors. The fill with single color is done by clicking on the image inside the area that needs to be filled. Filling the gradient is done by clicking on the area to be filled, holding down the button and adjusting the gradient by moving the mouse. The gradient will be finished when the mouse-button is released. +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for the fill-tool. +
+ + + +
+Figure 1: Setup view for the fill-tool. +
+
+
+

+

+
Flood Fill +
When this option is enabled the fill will be done to a bounded area of single color. If the option is not checked, the fill will be done to all pixels in the image that have the same color as the pixel that initiated the fill. +
Enable Gradient +
When this option is checked the fill will be done as a gradient of the two gradient colors. Otherwise the fill will be done using the single foreground color. +
Enable Preview +
When this option is checked the gradient will be previewed in realtime as it is adjusted. If the option is not checked the gradient will not be previewed. +
Gradient color bar +
This color-bar shows what the gradient will look like. You can change the gradient by dragging colors from the color-window to either end of the bar. +
Tolerance +
This option controls how closely the colors must match in order to be considered as the same color by the fill-tool. If the value is 0, the colors must match exactly. If the value is 100, all colors are considered to be the same. +
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/free_line.html b/Documentation/free_line.html new file mode 100644 index 00000000..c593de76 --- /dev/null +++ b/Documentation/free_line.html @@ -0,0 +1,45 @@ + + + +ArtPaint: Free Line -tool + + + +
+
+ + + + + + +
+ + + +
+ +

Free Line -tool

+The free line -tool is the basic tool for painting freehand lines. The tool is used by pressing and holding the mouse-button in the image and then moving the mouse. +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for the free line -tool. +
+ + + +
+Figure 1: Setup view for the free line -tool. +
+
+
+

+

+
Size +
This option controls the width of the resulting line. The width is measured in pixels. +
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/hairy_brush.html b/Documentation/hairy_brush.html new file mode 100644 index 00000000..b12415ad --- /dev/null +++ b/Documentation/hairy_brush.html @@ -0,0 +1,52 @@ + + + +ArtPaint: Hairy Brush -tool + + + +
+
+ + + + + + +
+ + + +
+ +

Hairy Brush -tool

+The hairy brush -tool creates a brush stroke by simulating the motions of individual hairs of a brush. The tool is used by clicking on the image and moving the mouse around to produce a free-hand line. When the mouse is moved faster the produced line is thinner than when the mouse is moved slowly. +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for hairy brush -tool. +
+ + + +
+Figure 1: Setup view for the hairy brush -tool. +
+
+
+

+

+
Hairs +
This controls how many hairs the brush has. +
Size +
This controls how wide the brush is. The width is measured in pixels. +
Color Variance +
This controls how uniform the colors will be among the hairs. If the slider is on the left all of the hairs will have the same color. When the slider is moved towards right the hairs will have their colors modified a little bit to produce more lively stroke. +
Color Amount +
This controls how much color the brush contains. When the brush is moved it will lose some of the color and eventually run out of the color. This simulates the drying of a real brush. + +
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/image_processing.html b/Documentation/image_processing.html new file mode 100644 index 00000000..44666011 --- /dev/null +++ b/Documentation/image_processing.html @@ -0,0 +1,81 @@ + + + +ArtPaint: Image Processing + + + +
+
+ + + + + + +
+ + + +
+ +

Image Processing

+ +This section describes the basic image-processing operations available in ArtPaint. Most of the operations can be applied to a single layer or to all layers at the same time. Note that much of the image-processing functionality is in the add-ons which are described separately. +

+

Rotation

+Rotation is an operation which changes the orientation of the image. Two parameters need to be supplied: the center of rotation (by default is the center of the image) and the angle of rotation. The center of rotation can be adjusted by clicking on the cross that appears on the image and dragging it to another location (it can be changed also by using the secondary mouse-button). The angle can be set by clicking on the image with the primary mouse-button and moving the cursor around. The angle can also be set by entering a number in the text-field in the right side of the status-bar. After the proper rotation is set it can be confirmed with the OK-button on the status-bar. The rotation can also be confirmed by starting some other image processing operation. If the rotation is not what is wanted it can be cancelled from the Cancel-button on the status-bar. +

+Related menu-items: +

    +
  • Layer->Rotate... +
  • Canvas->Rotate... +
+ +

Translation

+Translation is an operation which moves the image to another location. Two parameters need to be supplied: translation in x-direction and translation in y-direction. These can be adjusted by clicking on the image and dragging the mouse. They can also be adjusted with the text-fields in the right side of the status-bar. . After the proper translation is set it can be confirmed with the OK-button on the status-bar. The translation can also be confirmed by starting some other image processing operation. If the translation is not what is wanted it can be cancelled from the Cancel-button on the status-bar. +

+Related menu-items: +

    +
  • Layer->Translate... +
  • Canvas->Translate... +
+

Scaling

+Scaling changes the size of the image. When this operation is applied, a window is opened that contains controls for settings the new dimensions of the image. The window also contains a checkbox labeled "Lock Proportions". Checking this button forces the scaling to be proportional in x- and y-directions. In addition to adjusting the dimension from the controls in the window, they can be adjusted by clicking on the image and moving the mouse. If the checkbox is unchecked both dimensions can be scaled independently of each other. The scaling can be confirmed by pressing the OK-button in the scaling-window. If there are any selections made they will be cleared when the scaling is done. The scaling operation applies to all layers at once. +

+Related menu-item: +

    +
  • Canvas->Scale... +
+

Cropping

+Cropping changes the positions of the borders of the image. When this operation is applied, a window is opened that contains controls for settings the new border locations. Also the borders are drawn on the image and they can be moved to set the new border locations. Cropping can be used not only to make the image smaller, but also to extend it. The cropping can be confirmed by pressing the OK-button in the cropping-window. If there are any selections made they will be cleared when the cropping is done. The cropping operation applies to all layers at once. +

+Related menu-item: +

    +
  • Canvas->Crop... +
+

Flipping

+Flipping flips the image either horizontally or vertically. Flipping is like having an image on a transparent slide and flipping it over. Currently this operation does not care about selections, but this will change in the future however. +

+Related menu-items: +

    +
  • Layer->Flip Horizontally +
  • Layer->Flip Vertically +
  • Canvas->Flip Horizontally +
  • Canvas->Flip Vertically +
+

Changing Layer Transparency

+Although changing the layer transparency is not strictly an image-processing operation, it is documented here. This operation changes the overall transparency of the currently active layer and it does not care about the selections. +

+Related menu-item: +

    +
  • Layer->Change Transparency... +
+ + +
+
+
+ + + \ No newline at end of file diff --git a/Documentation/images/airbrush.gif b/Documentation/images/airbrush.gif new file mode 100644 index 00000000..66a517be Binary files /dev/null and b/Documentation/images/airbrush.gif differ diff --git a/Documentation/images/bar1.gif b/Documentation/images/bar1.gif new file mode 100644 index 00000000..36f22ddf Binary files /dev/null and b/Documentation/images/bar1.gif differ diff --git a/Documentation/images/bar2.gif b/Documentation/images/bar2.gif new file mode 100644 index 00000000..63658669 Binary files /dev/null and b/Documentation/images/bar2.gif differ diff --git a/Documentation/images/bar3.gif b/Documentation/images/bar3.gif new file mode 100644 index 00000000..316be8e8 Binary files /dev/null and b/Documentation/images/bar3.gif differ diff --git a/Documentation/images/bar4.gif b/Documentation/images/bar4.gif new file mode 100644 index 00000000..1a27d4c8 Binary files /dev/null and b/Documentation/images/bar4.gif differ diff --git a/Documentation/images/bar5.gif b/Documentation/images/bar5.gif new file mode 100644 index 00000000..79b38ce8 Binary files /dev/null and b/Documentation/images/bar5.gif differ diff --git a/Documentation/images/blur_tool.gif b/Documentation/images/blur_tool.gif new file mode 100644 index 00000000..ae7d1e74 Binary files /dev/null and b/Documentation/images/blur_tool.gif differ diff --git a/Documentation/images/bottom_bar.gif b/Documentation/images/bottom_bar.gif new file mode 100644 index 00000000..da279f45 Binary files /dev/null and b/Documentation/images/bottom_bar.gif differ diff --git a/Documentation/images/bottom_bar.jpeg b/Documentation/images/bottom_bar.jpeg new file mode 100644 index 00000000..40ce2466 Binary files /dev/null and b/Documentation/images/bottom_bar.jpeg differ diff --git a/Documentation/images/brush_settings.gif b/Documentation/images/brush_settings.gif new file mode 100644 index 00000000..f0a6a2ba Binary files /dev/null and b/Documentation/images/brush_settings.gif differ diff --git a/Documentation/images/brush_store_window.gif b/Documentation/images/brush_store_window.gif new file mode 100644 index 00000000..3f72df86 Binary files /dev/null and b/Documentation/images/brush_store_window.gif differ diff --git a/Documentation/images/brush_tool.gif b/Documentation/images/brush_tool.gif new file mode 100644 index 00000000..a880fad0 Binary files /dev/null and b/Documentation/images/brush_tool.gif differ diff --git a/Documentation/images/brush_window.gif b/Documentation/images/brush_window.gif new file mode 100644 index 00000000..5d9ab4e7 Binary files /dev/null and b/Documentation/images/brush_window.gif differ diff --git a/Documentation/images/color_selector.gif b/Documentation/images/color_selector.gif new file mode 100644 index 00000000..da1e8b63 Binary files /dev/null and b/Documentation/images/color_selector.gif differ diff --git a/Documentation/images/color_window.gif b/Documentation/images/color_window.gif new file mode 100644 index 00000000..bd10a537 Binary files /dev/null and b/Documentation/images/color_window.gif differ diff --git a/Documentation/images/dimension_box.gif b/Documentation/images/dimension_box.gif new file mode 100644 index 00000000..cdf3bd4c Binary files /dev/null and b/Documentation/images/dimension_box.gif differ diff --git a/Documentation/images/download.jpeg b/Documentation/images/download.jpeg new file mode 100644 index 00000000..01f25afe Binary files /dev/null and b/Documentation/images/download.jpeg differ diff --git a/Documentation/images/ellipse_tool.gif b/Documentation/images/ellipse_tool.gif new file mode 100644 index 00000000..2b657c81 Binary files /dev/null and b/Documentation/images/ellipse_tool.gif differ diff --git a/Documentation/images/eraser.gif b/Documentation/images/eraser.gif new file mode 100644 index 00000000..b4e03eb2 Binary files /dev/null and b/Documentation/images/eraser.gif differ diff --git a/Documentation/images/fill_tool.gif b/Documentation/images/fill_tool.gif new file mode 100644 index 00000000..d26ce2aa Binary files /dev/null and b/Documentation/images/fill_tool.gif differ diff --git a/Documentation/images/fill_tool_settings.gif b/Documentation/images/fill_tool_settings.gif new file mode 100644 index 00000000..ccae325d Binary files /dev/null and b/Documentation/images/fill_tool_settings.gif differ diff --git a/Documentation/images/free_line.gif b/Documentation/images/free_line.gif new file mode 100644 index 00000000..f74024f6 Binary files /dev/null and b/Documentation/images/free_line.gif differ diff --git a/Documentation/images/hairy_brush.gif b/Documentation/images/hairy_brush.gif new file mode 100644 index 00000000..86e67a24 Binary files /dev/null and b/Documentation/images/hairy_brush.gif differ diff --git a/Documentation/images/layer_pop_up_menu.gif b/Documentation/images/layer_pop_up_menu.gif new file mode 100644 index 00000000..937fc0b5 Binary files /dev/null and b/Documentation/images/layer_pop_up_menu.gif differ diff --git a/Documentation/images/layer_window.gif b/Documentation/images/layer_window.gif new file mode 100644 index 00000000..2aac90fb Binary files /dev/null and b/Documentation/images/layer_window.gif differ diff --git a/Documentation/images/left_bottom.jpeg b/Documentation/images/left_bottom.jpeg new file mode 100644 index 00000000..a92a03ba Binary files /dev/null and b/Documentation/images/left_bottom.jpeg differ diff --git a/Documentation/images/left_side.jpeg b/Documentation/images/left_side.jpeg new file mode 100644 index 00000000..568a8ebf Binary files /dev/null and b/Documentation/images/left_side.jpeg differ diff --git a/Documentation/images/left_top.jpeg b/Documentation/images/left_top.jpeg new file mode 100644 index 00000000..5b6fdae3 Binary files /dev/null and b/Documentation/images/left_top.jpeg differ diff --git a/Documentation/images/logo_600.gif b/Documentation/images/logo_600.gif new file mode 100644 index 00000000..fb063907 Binary files /dev/null and b/Documentation/images/logo_600.gif differ diff --git a/Documentation/images/logo_600.jpeg b/Documentation/images/logo_600.jpeg new file mode 100644 index 00000000..6ab0b8ae Binary files /dev/null and b/Documentation/images/logo_600.jpeg differ diff --git a/Documentation/images/middle_bar.jpeg b/Documentation/images/middle_bar.jpeg new file mode 100644 index 00000000..3b299382 Binary files /dev/null and b/Documentation/images/middle_bar.jpeg differ diff --git a/Documentation/images/miscellaneous_tab.jpeg b/Documentation/images/miscellaneous_tab.jpeg new file mode 100644 index 00000000..7322795a Binary files /dev/null and b/Documentation/images/miscellaneous_tab.jpeg differ diff --git a/Documentation/images/paint_window.gif b/Documentation/images/paint_window.gif new file mode 100644 index 00000000..5957581c Binary files /dev/null and b/Documentation/images/paint_window.gif differ diff --git a/Documentation/images/palette.gif b/Documentation/images/palette.gif new file mode 100644 index 00000000..a0bff7be Binary files /dev/null and b/Documentation/images/palette.gif differ diff --git a/Documentation/images/palette_window.gif b/Documentation/images/palette_window.gif new file mode 100644 index 00000000..116dcd90 Binary files /dev/null and b/Documentation/images/palette_window.gif differ diff --git a/Documentation/images/rectangle_tool.gif b/Documentation/images/rectangle_tool.gif new file mode 100644 index 00000000..b041948e Binary files /dev/null and b/Documentation/images/rectangle_tool.gif differ diff --git a/Documentation/images/reference.jpeg b/Documentation/images/reference.jpeg new file mode 100644 index 00000000..0a69647e Binary files /dev/null and b/Documentation/images/reference.jpeg differ diff --git a/Documentation/images/resize.gif b/Documentation/images/resize.gif new file mode 100644 index 00000000..7ce313c9 Binary files /dev/null and b/Documentation/images/resize.gif differ diff --git a/Documentation/images/right_bottom.jpeg b/Documentation/images/right_bottom.jpeg new file mode 100644 index 00000000..74c453ef Binary files /dev/null and b/Documentation/images/right_bottom.jpeg differ diff --git a/Documentation/images/right_side.jpeg b/Documentation/images/right_side.jpeg new file mode 100644 index 00000000..a461748f Binary files /dev/null and b/Documentation/images/right_side.jpeg differ diff --git a/Documentation/images/right_top.jpeg b/Documentation/images/right_top.jpeg new file mode 100644 index 00000000..99d5b36c Binary files /dev/null and b/Documentation/images/right_top.jpeg differ diff --git a/Documentation/images/save_formats.gif b/Documentation/images/save_formats.gif new file mode 100644 index 00000000..47c51e82 Binary files /dev/null and b/Documentation/images/save_formats.gif differ diff --git a/Documentation/images/selection.gif b/Documentation/images/selection.gif new file mode 100644 index 00000000..e220dd3d Binary files /dev/null and b/Documentation/images/selection.gif differ diff --git a/Documentation/images/selector_tool.gif b/Documentation/images/selector_tool.gif new file mode 100644 index 00000000..d59f5c12 Binary files /dev/null and b/Documentation/images/selector_tool.gif differ diff --git a/Documentation/images/shareware.jpeg b/Documentation/images/shareware.jpeg new file mode 100644 index 00000000..2ee2f2ca Binary files /dev/null and b/Documentation/images/shareware.jpeg differ diff --git a/Documentation/images/shortcuts.jpeg b/Documentation/images/shortcuts.jpeg new file mode 100644 index 00000000..444fc5d4 Binary files /dev/null and b/Documentation/images/shortcuts.jpeg differ diff --git a/Documentation/images/signature.gif b/Documentation/images/signature.gif new file mode 100644 index 00000000..3dbc17b6 Binary files /dev/null and b/Documentation/images/signature.gif differ diff --git a/Documentation/images/start_windows.gif b/Documentation/images/start_windows.gif new file mode 100644 index 00000000..6dbd8a1c Binary files /dev/null and b/Documentation/images/start_windows.gif differ diff --git a/Documentation/images/status_bar_normal.gif b/Documentation/images/status_bar_normal.gif new file mode 100644 index 00000000..6933d2d5 Binary files /dev/null and b/Documentation/images/status_bar_normal.gif differ diff --git a/Documentation/images/status_bar_progress.gif b/Documentation/images/status_bar_progress.gif new file mode 100644 index 00000000..75e93bdb Binary files /dev/null and b/Documentation/images/status_bar_progress.gif differ diff --git a/Documentation/images/status_bar_rotate.gif b/Documentation/images/status_bar_rotate.gif new file mode 100644 index 00000000..df44d9ec Binary files /dev/null and b/Documentation/images/status_bar_rotate.gif differ diff --git a/Documentation/images/straight_line.gif b/Documentation/images/straight_line.gif new file mode 100644 index 00000000..f9a4c4fb Binary files /dev/null and b/Documentation/images/straight_line.gif differ diff --git a/Documentation/images/text_window.gif b/Documentation/images/text_window.gif new file mode 100644 index 00000000..f845a4ce Binary files /dev/null and b/Documentation/images/text_window.gif differ diff --git a/Documentation/images/title_bar.jpeg b/Documentation/images/title_bar.jpeg new file mode 100644 index 00000000..e08e6a07 Binary files /dev/null and b/Documentation/images/title_bar.jpeg differ diff --git a/Documentation/images/tool.gif b/Documentation/images/tool.gif new file mode 100644 index 00000000..6bf81574 Binary files /dev/null and b/Documentation/images/tool.gif differ diff --git a/Documentation/images/tool_setup.gif b/Documentation/images/tool_setup.gif new file mode 100644 index 00000000..807f615e Binary files /dev/null and b/Documentation/images/tool_setup.gif differ diff --git a/Documentation/images/tools.gif b/Documentation/images/tools.gif new file mode 100644 index 00000000..0261c062 Binary files /dev/null and b/Documentation/images/tools.gif differ diff --git a/Documentation/images/top_bar.gif b/Documentation/images/top_bar.gif new file mode 100644 index 00000000..7eb2c2ce Binary files /dev/null and b/Documentation/images/top_bar.gif differ diff --git a/Documentation/images/transparency_tool.gif b/Documentation/images/transparency_tool.gif new file mode 100644 index 00000000..96f562d8 Binary files /dev/null and b/Documentation/images/transparency_tool.gif differ diff --git a/Documentation/images/transparent_dot.gif b/Documentation/images/transparent_dot.gif new file mode 100644 index 00000000..42927c19 Binary files /dev/null and b/Documentation/images/transparent_dot.gif differ diff --git a/Documentation/images/tutorial.jpeg b/Documentation/images/tutorial.jpeg new file mode 100644 index 00000000..75e3b19d Binary files /dev/null and b/Documentation/images/tutorial.jpeg differ diff --git a/Documentation/images/undo_tab.jpeg b/Documentation/images/undo_tab.jpeg new file mode 100644 index 00000000..3d6dd30c Binary files /dev/null and b/Documentation/images/undo_tab.jpeg differ diff --git a/Documentation/images/welcome.jpeg b/Documentation/images/welcome.jpeg new file mode 100644 index 00000000..6bfb74a3 Binary files /dev/null and b/Documentation/images/welcome.jpeg differ diff --git a/Documentation/images/welcome_left1.gif b/Documentation/images/welcome_left1.gif new file mode 100644 index 00000000..3984a6e9 Binary files /dev/null and b/Documentation/images/welcome_left1.gif differ diff --git a/Documentation/images/welcome_left2.gif b/Documentation/images/welcome_left2.gif new file mode 100644 index 00000000..d79475e1 Binary files /dev/null and b/Documentation/images/welcome_left2.gif differ diff --git a/Documentation/images/welcome_left3.gif b/Documentation/images/welcome_left3.gif new file mode 100644 index 00000000..f93412b7 Binary files /dev/null and b/Documentation/images/welcome_left3.gif differ diff --git a/Documentation/images/welcome_left4.gif b/Documentation/images/welcome_left4.gif new file mode 100644 index 00000000..15df3fb3 Binary files /dev/null and b/Documentation/images/welcome_left4.gif differ diff --git a/Documentation/images/welcome_left5.gif b/Documentation/images/welcome_left5.gif new file mode 100644 index 00000000..8c0904e8 Binary files /dev/null and b/Documentation/images/welcome_left5.gif differ diff --git a/Documentation/images/windows_tab.jpeg b/Documentation/images/windows_tab.jpeg new file mode 100644 index 00000000..2471ed75 Binary files /dev/null and b/Documentation/images/windows_tab.jpeg differ diff --git a/Documentation/index.html b/Documentation/index.html new file mode 100644 index 00000000..bc3eff42 --- /dev/null +++ b/Documentation/index.html @@ -0,0 +1,113 @@ + + +ArtPaint Documentation, Main Page + + +
+ + + + +
+ +
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + +
+ +
+ + + + + + + + + + + +
+ +
+
+ +
+ + +
+ +
+ + + + +
+
+ +ArtPaint documentation was last modified on 26th of January 1999 (main page on 2017/3/27). +
+ +
+All images in this document were created with ArtPaint. +
+
+ + \ No newline at end of file diff --git a/Documentation/layers.html b/Documentation/layers.html new file mode 100644 index 00000000..1f980a7e --- /dev/null +++ b/Documentation/layers.html @@ -0,0 +1,66 @@ + + + +ArtPaint: Layers + + + +
+
+ + + + + + +
+ + + +
+

Layers

+Layers is a concept that allows for a lot of flexibility in image creation and manipulation. In short: layers allow the image to consist of multiple individual layers that can be painted and manipulated independently of each other. A layer can be thought of as a transparent slide that shows through what is underneath it except for the parts that are fully covered with paint. Only one layer can be active at a time. This means that painting operations affect only one layer. Some image-processing operations affect all layers no matter what layer is actually active. +

+The layers in ArtPaint have the following features: +

    +
  • Layers can be added or deleted +
  • Layers can be reordered +
  • Layers can be merged +
  • Support for unlimited number of layers +
  • Layers can be hidden +
  • Layers can be duplicated +
+

+Currently most of the painting that can be done to a layer is replacement painting. This means that whatever color was in the layer gets replaced by the new color when it is being painted. This means that in order to get a semi-transparent part in the image multiple layers must be used. +

+

The Layer-window

+The place where the layers can be controlled is the layer-window, which is pictured in figure 1. +
+ + + +
+Figure 1: The layer-window. +
+
+
+

+The layer window displays layers for the currently active paint-window (or the window that was last active). At the top of the window is a thumbnail of the image. Below that is area for layers. Each layer has its own rectangle-shaped entry in that area. The active layer is marked with darker grey background and a blue rectangle around the thumbnail-image. On the left side of the layer's area is the thumbnail-image of that layer's contents. You can drag this image to a paint-window to copy the layer there. On the right side is a checkbox for controlling whether the layer should be visible or not. By pressing primary mouse-button in the grey area and dragging up or down the layers can be reordered. By pressing secondary mouse-button over the grey area you can bring up a pop-up-menu for controlling the layer operations (it can be brought up also by pressing the primary mouse-button while holding down a modifier-key on the keyboard). Figure 2 shows this menu. + +

+ + + +
+Figure 2: Layer pop-up-menu. +
+
+
+

+The menu-items "Merge With Front Layer" and "Merge With Back Layer" merge the layer with its neighbor. Merging means that the two layers are removed from the image and replaced with just one layer. Front layer means the layer that is upper in the list and back layer means the layer that is lower in the list. "Add Layer In Front" and "Add Layer Behind" add a new layer behind or in front of the layer where the button was pressed in. "Duplicate Layer" duplicates the layer where the mouse-button was pressed in. "Delete Layer" removes the layer from the image. +

+
+
+ + + \ No newline at end of file diff --git a/Documentation/paint_window.html b/Documentation/paint_window.html new file mode 100644 index 00000000..1bef762d --- /dev/null +++ b/Documentation/paint_window.html @@ -0,0 +1,236 @@ + + + +ArtPaint: Paint Window + + + +
+
+ + + + + + +
+ + + +
+ +

Paint-Window

+The paint-window is the central part of the program where you create the images. It also contains a menu-bar for controlling operations such as saving the image and creating new windows. In figure 1 is a picture of a paint-window. +

+

+ + + +
Figure 1: A paint-window.
+
+
+

+The paint-window is divided into three distinct subsections: the canvas, the status-bar and the menu-bar. In figure 1 the canvas is the white area in the middle of the window. It is used for painting the image. The status-bar is at the bottom of the window. It contains information such as coordinates and selected colors and allows you to also zoom the view and select new colors. The menu-bar can be used to invoke many operations, such as opening new windows and saving the image. +

+

The canvas

+The canvas is the area where you can paint your image. When a paint-window is first opened it does not have a canvas. You should select a suitable canvas size and then press the "Create Canvas"-button to create a canvas for the paint-window. Figure 2 shows the controls that are available for settings the size of the canvas. +

+

+ + +
Figure 2: Controls for settings the canvas size.
+
+
+

+The size can be selected by settings the numbers in the two fields or by selecting one of the recently used sizes from the pop-up-list on the right. If only an approximate size is needed, it can be quickly selected by dragging the window to the required size. +

+When the canvas has been created you can use any of the painting tools to paint on it. The painting tool can be used by pressing down the primary mouse-button. The secondary mouse-button brings up a pop-up-menu where you can change the active tool. +

+

The status-bar

+The status-bar is at the bottom of the window and it displays status-information about the current state of the program. Status-bar also contains tools for zooming the image and for selecting colors. Status-bar can be in several different states depending on the state of the program. The different states of the status-bar are listed here: +
+
Canvas not created -mode +

+

Normal-mode +

+

Transform-mode +

+

Add-on-mode +

+

Busy-mode +

+

+

+The canvas not created -mode comes up when the window has no canvas. At this point the status-bar does not offer any functionality. This shows a message at the bottom of the bar. In most modes this place is reserved for helpful messages. +

+Normal-mode is the most usual, and it comes up when the canvas has been created. It has the following components (from left to right): +

+
Coordinates-box +
Displays the coordinates that the mouse is over. If the mouse is outside of the image this displays the width and height of the image instead. +
Magnification-box +
Displays the magnification-level of the image. When you click your mouse over this it brings up a slider with which the zooming level can be adjusted freely. +
Magnification-buttons +
Allow you to zoom in and out from the image in predefined steps. +
Selected colors +
Shows the current foreground- and background-color. Clicking on these with the primary mouse button opens up the color-window. Clicking with other mouse buttons exchanges the two colors with each other. +
Color-set +
Displays the current color-set. The two arrows change between different sets. +
+

+Transform-mode comes up when you start an image transformation such as rotation or translation. This mode may also come up with some add-ons. On the right side of the status-bar are two buttons for cancelling and applying the transformation. On their left side are control-views for controlling the transform. +

+Add-on mode is similar to normal-mode, but it does not display colors. The status-bar comes to this mode when you have started some add-on or for example when you are adjusting the transparency of the layer. +

+Busy-mode comes up when you have selected some operation that is going to take a substantial amount of time. Usually this goes by quite quickly, but depending on the speed of the computer and the size of the image, some operations might take a while. When the status-bar is in this mode you cannot do anything to that image (but you can edit other images if you wish). +

+

The menu-bar

+The menu-bar behaves like you would expect from a BeOS application. The following list summarizes the menu-items and describes their functionality. +

+

File-menu

+
+
Recent Images +
This has a list of recent images as a submenu. Look at the status-bar to see the path of the image your cursor is over. +
Open Image +
Brings up a file-panel for opening an image. The file-panel displays only directories and image-files. +
Save Image As +
Brings up a file-panel for saving the image. The file-panel contains a pop-up-menu for choosing the required save-format and also a button for bringing up a settings window for that format. +
Save Image +
Saves the image using the name and format that were used when it was last saved. +
New Project +
Opens a new, empty, paint-window. +
Recent Projects +
This has a list of recent projects as a submenu. Look at the status-bar to see the path of the project your cursor is over. +
Open Project +
Brings up a file-panel for opening a project from the disk. +
Save Project As +
Brings up a file-panel for saving the current project to the disk. +
Save Project +
Saves the project using the name (and path) it was last saved with. +
Close +
Closes the current window. +
Quit +
Closes all of the windows and quits the program. +
+

Edit-menu

+
+
Undo... +
Undoes the previous action. The name of this item will change according to what the previous action was. +
Redo... +
Redoes the action that was last undone. The name of this item will change to reflect what operation is to be redone. +
Cut +
This item has a submenu that allows you to cut the active layer or all layers. Cutting means that the layer (or all layers) is stored on the clipboard and then cleared. If you have made a selection only the selected area will be cut. +
Copy +
This is almost the same as cut, but this does not clear the layer (or the image). +
Paste As a New Layer +
Pastes the contents of the clipboard as a new layer. +
Paste As a New Project +
Pastes the contents of the clipboard as a new project. Opens a new window where the pasted image goes. Pasting does not empty the clipboard. +
Grow Selection +
Grows the size of the selection by one pixel in each direction. +
Shrink Selection +
Shrinks the size of the selection by one pixel from each direction. +
Invert Selection +
Inverts the selection by turning selected areas into unselected and unselected areas into selected. +
Clear Selection +
Clears the selection. This makes everything selected and it does not clear the actual image. +
+

Layer-menu

+
+
Rotate +
Starts rotating the currently active layer. +
Translate +
Starts translating the currently active layer. +
Flip Horizontally +
Flips the active layer horizontally +
Flip Vertically +
Flips the active layer vertically. +
Change Transparency +
Brings up a window where you can adjust the overall transparency of the active layer. +
Clear Layer +
Clears the layer to the background-color. +
Insert Text +
Brings up a window which allows you to insert text into the image. +
Show Layer Window +
Shows the layer-window. +
Add Layer +
Adds a new layer to the top of the image. +
+

+

Canvas-menu

+
+
Rotate +
Starts rotating the whole image. +
Translate +
Starts translating the whole image. +
Flip Horizontally +
Flips the whole image horizontally +
Flip Vertically +
Flips the whole image vertically. +
Crop +
Starts cropping the image. Opens up a new window where the crop amount can be adjusted. Crop also allows the extension of the image. +
Scale +
Starts scaling the image. Opens up a new window for setting the scaling parameters. +
Clear Canvas +
Clears the image to the background-color. This is same as clearing all of the layers separately. +
+

+

Window-menu

+
+
Zoom In +
Zooms in on the image. +
Zoom out +
Zooms out from the image. +
Set Zoom Level +
This has a submenu that contains a set of predefined zoom-levels that can be used to set the zooming of the image. Default value is 100%. +
Set Grid +
Contains a submenu of items that set the grid size. The grid restricts the drawing operations to certain steps. For example 8x8 restricts the drawing operations to 8 by 8 pixel blocks. Grid is useful for drawing diagrams and such things. Default value is off. +
Resize To Fit +
Resizes the window so that as much of the image is visible as possible while the window still fits on the screen. +
Show Palette Window +
Brings up the color-palette window that can be used to adjust colors and color-sets. +
Show Layer Window +
Brings up the layer window. +
Show Tool Window +
Brings up the window that can be used to select painting tools. +
Show Tool Setup Window +
Brings up the window that can be used to set up the painting tools. +
Show Brush Window +
Brings up the window that holds previously defined brushes. +
Settings +
Brings up the window where settings of the program can be adjusted. +
+

+

Add-Ons-menu

+The contents of this menu varies depending on what add-ons have been installed. + +

+

Help-menu

+
+
User Manual +
Opens the ArtPaint documentation in a web-browser. +
Shortcuts +
Opens a page describing ArtPaint's keyboard shortcuts in a web-browser. +
About ArtPaint +
Opens a window that contains scrolling text that tells you about ArtPaint. +
Registration Info +
Displays the documentation for the registration-process if the program has not yet been registered. Otherwise opens a new window that displays registration status. +
+

The title-bar

+Every paint-window has a title-bar like most other windows. The title-bar is shown in the following figure. +

+

+ + + +
Figure 1: The title-bar.
+
+
+

+The title-bar contains three pieces of information. The star on the left tells that the project has been changed since it was last saved. The 'Untitled - 2' is the name of the project, which in this case is still unnamed. When the project is saved to disk this will change to reflect that. The 'pic00007.jpg' is the name of the picture that this project was last saved to or loaded from. +

+ +
+
+ + + \ No newline at end of file diff --git a/Documentation/painting_tools.html b/Documentation/painting_tools.html new file mode 100644 index 00000000..39a8fae0 --- /dev/null +++ b/Documentation/painting_tools.html @@ -0,0 +1,59 @@ + + + +ArtPaint: Painting Tools + + + +
+
+ + + + + + +
+ + + +
+ +

Painting Tools

+Painting tools are the most important tools when creating new images. They are also useful when modifying existing images or manipulating for example scanned images. This section describes how the painting tools can be used and what options are available for each painting tool. What can be done with the painting tools is only limited by the user's imagination. However some tools fit to some jobs better than others. +

+At any given moment only one painting-tool can be active. Active means that pressing the mouse-button on the image starts drawing with that tool. All of the paint-windows share the same tool. The active tool can be changed by two different methods: by clicking on the image with the secondary mouse-button and selecting the tool from the appearing pop-up-menu, or from the tool selection window. The tool selection window is pictured below. From this picture you can examine a tool closer by clicking on its icon. The tool selection window can be resized to have the tools in a single row or a column or something in between. +

+ +
+ + + + + + + + + + + + + + + + + + + + + + +

+To select a tool from the tool selection window, just click on its icon with the primary mouse-button. By clicking on the icon with the secondary mouse-button you can bring up the tool-settings window. The tool-settings window allows you to change the settings for the active tool. It is described in detail in the tool-sections. + +

+
+
+ + + \ No newline at end of file diff --git a/Documentation/rectangle.html b/Documentation/rectangle.html new file mode 100644 index 00000000..686a6546 --- /dev/null +++ b/Documentation/rectangle.html @@ -0,0 +1,59 @@ + + + +ArtPaint: Rectangle-tool + + + +
+
+ + + + + + +
+ + + +
+ +

Rectangle-tool

+The rectangle-tool is used to draw filled and outlined rectangles to the image. It is used by pressing down the mouse-button and dragging the mouse around. A preview of the rectangle is rendered on the screen and when the mouse-button is released, the actual rectangle is drawn. + +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for the rectangle-tool. +
+ + + +
+Figure 1: Setup view for the rectangle-tool. +
+
+
+

+

+
Fill Rectangle +
When this option is enabled, the rectangle will be filled with the foreground-color. Otherwise only the outline of the rectangle will be drawn. +
Corner To Corner +
When this option is selected, the first click will set one corner of the rectangle and releasing the mouse-button will set the opposite corner. +
Center To Corner +
When this option is selected, the first click will set the center for the rectangle and releasing the mouse-button will set one of the corners. +
Enable Rotation +
When this option is set, the rectangle can be rotated after its size has been set. The rotation can be done by moving the mouse around and then pressing the mouse-button to finish the rotation. +
Enable Anti-Aliasing +
When this option is enabled, the edges of the rectangle will be antialiased to avoid a step-like effect. Currently this option has only meaning if Enable Rotation is also selected. +
+

Keyboard Modifiers

+
    +
  • Pressing down left control while setting the size of the rectangle forces the rectangle to be a square. +
  • Pressing down left control while rotating the rectangle constrains the rotation to 5 degree steps. +
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/reference.html b/Documentation/reference.html new file mode 100644 index 00000000..f85a6a66 --- /dev/null +++ b/Documentation/reference.html @@ -0,0 +1,39 @@ + + + +ArtPaint: Reference + + + +
+
+ + + + + + +
+ + + +
+

ArtPaint Reference

+This section describes the features of ArtPaint. The following links lead you to descriptions of specific areas. + +

+

+
+
+ + + \ No newline at end of file diff --git a/Documentation/selections.html b/Documentation/selections.html new file mode 100644 index 00000000..15a1c9dd --- /dev/null +++ b/Documentation/selections.html @@ -0,0 +1,48 @@ + + + +ArtPaint: Selections + + + +
+
+ + + + + + +
+ + + +
+

Selections

+Selections allow part of the image to be selected so that image-processing operations and painting tools affect only the selected part. The selections are made with the selector-tool. When there is no selection, everything is selected. This means that you can not make nothing to be selected. +

+Selections are indicated with line that goes around the selected area. The line has a black and white pattern that moves around to make it stand out from the rest of the image. Figure 1 shows an image with a selection. + +

+ + + +
+Figure 1: Image with a selection. +
+
+
+ +

+The selection affects all layers. This means that if you make a selection when certain layer is active and change then the active layer, the selection will stay the same. However the painting operations will go to that new layer just like when there is no selection at all. +

+When you do operations on selections you do it just like when there is no selection. If you wish to rotate the selection, just select the appropriate item from the menu-bar. Same thing for translation. +

+It should be noted that there are some operations that do not care about the selection. For example all of the operations that change the image size lose the selection. Also some add-ons might not respect the selection. + +

+
+
+ + + \ No newline at end of file diff --git a/Documentation/selector.html b/Documentation/selector.html new file mode 100644 index 00000000..30045804 --- /dev/null +++ b/Documentation/selector.html @@ -0,0 +1,57 @@ + + + +ArtPaint: Selector-tool + + + +
+
+ + + + + + +
+ + + +
+ +

Selector-tool

+The selector-tool allows the selection of some area from the image. This tool has many different modes that affect how the tool is used. +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for the selector-tool. +
+ + + +
+Figure 1: Setup view for the selector-tool. +
+
+
+

+

+
Add Area +
When this option is selected, the newly made selection will be added to the previous selection. +
Subtract Area +
When this option is selected, the newly made selection will be subtracted from the previous selection. +
Free Line +
When this option is selected, the selection is made by clicking on the image and dragging the mouse around to draw a free-hand line. When the button is released the area that is inside of the line will be the new selection. +
Rectangle +
When this option is selected, the selection is made by clicking on the image and dragging the mouse around to draw a rectangle. When the button is released the area that is inside of the rectangle will be the new selection. +
Magic Wand +
When this option is selected, the selection is made by clicking on the image once. The tool then selects a proper area that matches the color that the click was made on and this becomes the new selection. +
Intelligent Scissors +
When this mode is selected, the selection is made by clicking on the image several times to make a path of points. The tool combines these points by lines that try to follow the edges in the image. The tool is finished by double-clicking on the image, which causes the area that is inside the lines to become the new selected area. +
Tolerance +
Tolerance controls how different colors the magic wand sees as the same color. If the tolerance is 0, the colors must match exactly to be considered the same, and if the tolerance is 100, all colors will be considered the same. +
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/settings.html b/Documentation/settings.html new file mode 100644 index 00000000..d2f31fa9 --- /dev/null +++ b/Documentation/settings.html @@ -0,0 +1,65 @@ + + + +ArtPaint: Settings + + + +
+
+ + + + + + + + + + + +
+ + + +
+ +

Settings

+Most of the settings, like settings for tools, window positions, colors, etc. are saved automatically whenever the program is quit. There are also some settings that can be set through a settings window. These settings are also saved when the program is exited. The settings window allows for changing general options that affect how the program looks and behaves. + +

The settings window

+The settings window has three tabs that each control different types of settings. The first tab is labelled 'Windows' and is picture in figure 1. +
+ + +
Figure 1: 'Windows' tab
+
+
+

+The checkboxes allow for changing between different window-modes. If a checkox is checked then the corresponding window will float above other windows of the app. Otherwise that window will behave just like a regular window. +

+The second tab is for controlling the depth of undo mechanism and is labelled 'Undo'. The depth means how many operations can be backtracked in the best situation. This means that information for those operations is kept in memory. If it seems that there is too little memory for the program to operate with some image, it is advisable to lower the depth of the undo. Setting undo off frees quite a lot of memory, so it can be used in the emergency case when operating on some very big images. The 'Undo' tab is displayed in figure 2. + +

+ + +
Figure 2: 'Undo' tab
+
+
+

+The third tab is labelled 'Miscellanous' and it is used to control some other options. It is displayed in figure 3. +

+ + +
Figure 2: 'Miscellanous' tab
+
+
+

+The cursor part controls how the mouse cursor appears when drawing on the image. If the 'Cross Hair Cursor' is selected, the cursor will look like a cross hair. If the 'Tool Cursor' is selected, the cursor will change depending on what painting-tool is in use. The checkbox 'Confirm Quitting' enables the boxes that ask you if you want to save the project when closing a window and the project has been changed since the last save. +

+

+
+

+ + + \ No newline at end of file diff --git a/Documentation/shortcuts.html b/Documentation/shortcuts.html new file mode 100644 index 00000000..45e73b73 --- /dev/null +++ b/Documentation/shortcuts.html @@ -0,0 +1,134 @@ + + + +ArtPaint: Keyboard Shortcuts + + + +
+
+ + + + + + +
+ + + +
+ +

Keyboard Shortcuts

+This page describes the keyboard shortcuts that can be used in ArtPaint. Currently all of these shortcuts apply to the paint-window. The shortcuts are grouped here by function. The menukey is either alt or control, which way you have set it in the menu preferences. +

+

File handling shortcuts

+
+
menukey + O +
Opens an image +
shift + menukey + O +
Opens a project +
menukey + S +
Saves the image with the current name +
shift + menukey + S +
Saves the project with the current name +
+ +

Clipboard shortcuts

+
+
menukey + X +
Cuts the active layer to the clipboard +
shift + menukey + X +
Cuts all layers to the cliplboard +
menukey + C +
Copies the active layer to the clipboard +
shift + menukey + C +
Copies all layers to the clipboard +
menukey + V +
Pastes the contents of the clipboard as a new layer +
shift + menukey + V +
Pastes the contents of the cilpboard as a new project +
+ + +

Window shortcuts

+
+
menukey + B +
Shows the brush window +
menukey + K +
Shows the tool selection window +
menukey + L +
Shows the layer window +
menukey + M +
Shows the tool setup window +
menukey + P +
Shows the color palette window +
menukey + N +
Creates a new paint window +
menukey + Y +
Resizes the window to fit the image +
+ +

Image editing shortcuts

+
+
menukey + R +
Starts rotating the active layer +
shift + menukey + R +
Starts rotating all of the layers +
menukey + T +
Starts translating the active layer +
shift + menukey + T +
Starts translating all of the layers +
menukey + left arrow +
Flips the active layer horizontally +
shift + menukey + left arrow +
Flips all layers horizontally +
menukey + up arrow +
Flips the active layer vertically +
shift + menukey + up arrow +
Flips all layers vertically +
controlkey + menukey + C +
Crop the image +
controlkey + menukey + S +
Scale the image +
+ + +

Selection shortcuts

+
+
menukey + G +
Grows the selection +
menukey + H +
Shrinks the selection +
menukey + D +
Clears the selection +
+ +

General shortcuts

+
+
menukey + Z +
Undo +
shift + menukey + Z +
Redo +
menukey + + +
Zoom in +
menukey + - +
Zoom out +
menukey + . +
Inserts a layer in the image +
menukey + I +
Inserts text into the active layer +
menukey + Q +
Quits the program +
menukey + W +
Closes the active window +
arrow keys +
Scroll the image around +
+ +
+
+
+ + + \ No newline at end of file diff --git a/Documentation/straight_line.html b/Documentation/straight_line.html new file mode 100644 index 00000000..daae6bb0 --- /dev/null +++ b/Documentation/straight_line.html @@ -0,0 +1,50 @@ + + + +ArtPaint: Straight Line -tool + + + +
+
+ + + + + + +
+ + + +
+ +

Straight Line -tool

+The straight line -tool allows the drawing of straight lines. The tool is used by pressing the mouse-button down on the starting point of the line and releasing it at the wanted endpoint. +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for straight line -tool. +
+ + + +
+Figure 1: Setup view for the straight line -tool. +
+
+
+

+

+
Size +
This option controls the width of the line. The width is measured in pixels. +
Enable Anti-Aliasing +
When this option is enabled the borders of the lines will be smoothed to avoid step-like effect at the borders of the lines. +
Adjustable Width +
When this option is enabled the Size-option is ignored and the line is draw with the thickness of 1. After the endpoint has been set, you are allowed to adjust the width of the line by moving the mouse and then setting it by clicking one more time on the image. +
+ +
+
+
+ + + \ No newline at end of file diff --git a/Documentation/text_tool.html b/Documentation/text_tool.html new file mode 100644 index 00000000..6478a2fe --- /dev/null +++ b/Documentation/text_tool.html @@ -0,0 +1,48 @@ + + + +ArtPaint: Text-tool + + + +
+
+ + + + + + +
+ + + +
+ +

Text-tool

+Text-tool is used to insert text into the image. The text-tool is used by clicking on the image at the location where the inserted text is wanted. This brings up a window for adjusting the appearance of the text. This window is documented at the end of this page. +

Settings

+Text-tool has no settings. +

Text Tool Window

+The text tool window is shown in figure 1. It contains a text-area at the top where the text can be written. Below that is a pop-up-menu for selecting the font type. Then there are sliders for adjusting the size, rotation and shear of the text. Finally at the bottom is a checkbox for enabling or disabling anti-aliasing for the text. + +
+ + + +
+Figure 1: Text tool window. +
+ +
+
+

+The color of the text can be set with the color-window. Whenever the text tool window is open, all color adjusting done in the color-window will be reflected in the text-color. If only part of the text needs to be colored, it can be selected in the text-area. +

+The text can be moved around by clicking on the image and moving the mouse around. The rotation can also be adjusted by clicking on the image with the secondary mouse-button and moving the mouse. +

+
+
+ + + \ No newline at end of file diff --git a/Documentation/transparency_tool.html b/Documentation/transparency_tool.html new file mode 100644 index 00000000..53445aa8 --- /dev/null +++ b/Documentation/transparency_tool.html @@ -0,0 +1,47 @@ + + + +ArtPaint: Transparency-tool + + + +
+
+ + + + + + +
+ + + +
+ +

Transparency-tool

+The transparency-tool is used to adjust the transparency of a layer. This changes the transparency of a circular area. The new transparency will be the same as what is foreground-color's transparency. The tool is used by clicking on the image on the part where the transparency is needed to change. The tool then gradually changes the transparency for each pixel to the target transparency. +

Settings

+Figure 1 shows the contents of the tool-setup-window when it is displaying the setup for the transparency-tool. +
+ + + +
+Figure 1: Setup view for the transparency-tool. +
+
+
+

+

+
Size +
This option controls the size of the area whose transparency is being changed. The area is circular and this value is its diameter in pixels. +
Speed +
This option controls how fast the transparency will be changed, i.e. how long it takes before the target transparency is reached. +
+
+
+
+ + + \ No newline at end of file diff --git a/Documentation/tutorial.html b/Documentation/tutorial.html new file mode 100644 index 00000000..464e4c35 --- /dev/null +++ b/Documentation/tutorial.html @@ -0,0 +1,185 @@ + + + +ArtPaint: Tutorial + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ +

What is in this tutorial?

+
+ +This tutorial contains a step by step -guide to creating a simple image with ArtPaint. This tutorial will familiarize you with the basic principles of using ArtPaint. After going through this tutorial you should be able to create images with ArtPaint and save them to the disk. +
+ +
+ +

Step 1: Starting the program

+
+ + +You can start the program by double-clicking on its icon. After you have done this you are presented with a set of windows. The windows will be arranged in somewhat similar manner as in the picture on the left. If you see that some of the windows are missing from your screen there is no need to worry. You will only be needing one of the window's at this stage. The window that you will need right now is labeled "Untitled - 1" and it has a grey background with lighter grey stripes in it. After you have located this window you can proceed on to step 2. +
+ +
+ +

Step 2: Creating a canvas

+
+ + +The window labeled "Untitled - 1" is the window that you will be doing the painting in. But first you should define what size of an image you want to create. You can find in the lower right corner of the window a box with two numeric fields in them. To these fields you can enter the size of the image that you want to create. The numbers mean how many pixels is the image's height and width. For the purpose of this tutorial put the width to about 300 and height to about 150. After you have done this push the button labeled "Create Canvas" just below the two fields. This then creates an area where you can start painting. +
+ +
+ +

Step 3: Selecting colors

+
+ + +Before you actually start painting you should probably select a suitable color. You can select a new color from the palette window. That window can be opened from the menu in your paint window. Just select the submenu "Window" and from that the entry "Show Palette Window". The palette-window contains some sliders on the right side and a grid with different colors in it on the left side. If you see a color in the grid that you like you can select it by clicking on it. If you do not see a suitable color in the grid you can adjust the colors with the sliders on the right. After you have chosen a suitable color go back to the paint window. +
+ +
+ +

Step 4: Selecting tools

+
+ + +Now that you have a color selected you should still select a tool that you'd like to use. The tools can be selected from tool window. This window can be opened from the same place in the menu that you used to open the palette window, just select "Show Tool Window" instead of "Show Palette Window". From the tool-window you can select a tool to be used by clicking on its icon. For the purpose of this tutorial click on the tool which has two rectangles in its icon. That tool can be used to draw rectangles on the image. +
+ +
+ +

Step 5: Setting up the tools

+
+ + +With the tool selected you could just draw into the image, but before that it might be a good idea to set up the tool a little. You can change the settings for the tool by opening a tool settings window. This can be done by selecting from the menu "Window" and then "Show Tool Setup Window". After you have set the settings to your liking you can paint with that tool by clicking with the mouse on the image. +
+ +
+ +

Step 6: Saving the image

+
+ + +After you have created the image that you like, you can save it by selecting from the menu "File" the item "Save Image As...". This brings up a standard BeOS save dialog where you can choose the appropriate directory and enter a file name. In addition to that the save panel contains a pop-up-menu for selecting the proper save-format and a button labeled "Settings..." that brings up a window where you can change settings that affect how the image is saved. Select the appropriate file-format (for example JPEG), type in a suitable name and press "Save". That stores your image on the disk for later use and concludes this tutorial. Now you should know the basics of using ArtPaint and you can go on and explore its functionality. +
+ +
+
+
+ + + \ No newline at end of file diff --git a/Documentation/welcome.html b/Documentation/welcome.html new file mode 100644 index 00000000..d093c7f9 --- /dev/null +++ b/Documentation/welcome.html @@ -0,0 +1,89 @@ + + + +Welcome to ArtPaint + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + +

Welcome to ArtPaint

+
+ + +ArtPaint is a painting and image-processing tool for the BeOS. It offers a lot of functionality for both generating new images and manipulating existing ones. As an example of what ArtPaint can do all images in this document were created or manipulated with it. +
+ + +The main features of ArtPaint include a comprehensive set of painting-tools and real-time preview for many image-manipulating operations. The key design principle has been to let the user see what he is doing instead of just forcing him to type in some numbers and then hoping that the result will not be too far from the expected. +
+ + +ArtPaint's functionality is not well served by describing it with words. For that reason I suggest that you now put this documentation away and start playing with the program. After you have made yourself comfortable with the program you may find that you'd like to know a little more about it. In that case the other chapters in this document might help you. +
+ + +I truly hope that you'll enjoy using this program and find it useful.

+Yours, +
+ + + + +
+ +
+
+
+ + + diff --git a/addons/AddOns/Crashes-ArtPaint/ColorReducer/Makefile b/addons/AddOns/QUESTIONABLE/ColorReducer/Makefile similarity index 100% rename from addons/AddOns/Crashes-ArtPaint/ColorReducer/Makefile rename to addons/AddOns/QUESTIONABLE/ColorReducer/Makefile diff --git a/addons/AddOns/Crashes-ArtPaint/ColorReducer/Reducer.cpp b/addons/AddOns/QUESTIONABLE/ColorReducer/Reducer.cpp similarity index 100% rename from addons/AddOns/Crashes-ArtPaint/ColorReducer/Reducer.cpp rename to addons/AddOns/QUESTIONABLE/ColorReducer/Reducer.cpp diff --git a/addons/AddOns/Crashes-ArtPaint/ColorReducer/Reducer.h b/addons/AddOns/QUESTIONABLE/ColorReducer/Reducer.h similarity index 100% rename from addons/AddOns/Crashes-ArtPaint/ColorReducer/Reducer.h rename to addons/AddOns/QUESTIONABLE/ColorReducer/Reducer.h diff --git a/addons/AddOns/Crashes-ArtPaint/ColorReducer/color_mapper.cpp b/addons/AddOns/QUESTIONABLE/ColorReducer/color_mapper.cpp similarity index 100% rename from addons/AddOns/Crashes-ArtPaint/ColorReducer/color_mapper.cpp rename to addons/AddOns/QUESTIONABLE/ColorReducer/color_mapper.cpp diff --git a/addons/AddOns/Crashes-ArtPaint/ColorReducer/color_mapper.h b/addons/AddOns/QUESTIONABLE/ColorReducer/color_mapper.h similarity index 100% rename from addons/AddOns/Crashes-ArtPaint/ColorReducer/color_mapper.h rename to addons/AddOns/QUESTIONABLE/ColorReducer/color_mapper.h diff --git a/addons/AddOns/Crashes-ArtPaint/ColorReducer/palette_generator.cpp b/addons/AddOns/QUESTIONABLE/ColorReducer/palette_generator.cpp similarity index 100% rename from addons/AddOns/Crashes-ArtPaint/ColorReducer/palette_generator.cpp rename to addons/AddOns/QUESTIONABLE/ColorReducer/palette_generator.cpp diff --git a/addons/AddOns/Crashes-ArtPaint/ColorReducer/palette_generator.h b/addons/AddOns/QUESTIONABLE/ColorReducer/palette_generator.h similarity index 100% rename from addons/AddOns/Crashes-ArtPaint/ColorReducer/palette_generator.h rename to addons/AddOns/QUESTIONABLE/ColorReducer/palette_generator.h diff --git a/addons/AddOns/Not-Working/Brightness/Brightness.cpp b/addons/AddOns/Working/Brightness/Brightness.cpp similarity index 98% rename from addons/AddOns/Not-Working/Brightness/Brightness.cpp rename to addons/AddOns/Working/Brightness/Brightness.cpp index 9562ed88..77f75adb 100644 --- a/addons/AddOns/Not-Working/Brightness/Brightness.cpp +++ b/addons/AddOns/Working/Brightness/Brightness.cpp @@ -17,6 +17,7 @@ #include "Brightness.h" #include "ManipulatorInformer.h" #include "Selection.h" +#include "SysInfoBeOS.h" #ifdef __cplusplus extern "C" { @@ -300,9 +301,9 @@ void BrightnessManipulator::SetPreviewBitmap(BBitmap *bm) } if (preview_bitmap != NULL) { - system_info info; - get_system_info(&info); - double speed = info.cpu_count * 2000; // TODO: used to be info.cpu_clock_speed but was removed; + BeOS_system_info info; + get_BeOS_system_info(&info); + double speed = info.cpu_count * info.cpu_clock_speed; // Let's select a resolution that can handle all the pixels at least // 10 times in a second while assuming that one pixel calculation takes diff --git a/addons/AddOns/Not-Working/Brightness/Brightness.h b/addons/AddOns/Working/Brightness/Brightness.h similarity index 100% rename from addons/AddOns/Not-Working/Brightness/Brightness.h rename to addons/AddOns/Working/Brightness/Brightness.h diff --git a/addons/AddOns/Not-Working/Brightness/Makefile b/addons/AddOns/Working/Brightness/Makefile similarity index 100% rename from addons/AddOns/Not-Working/Brightness/Makefile rename to addons/AddOns/Working/Brightness/Makefile diff --git a/addons/AddOns/Not-Working/Contrast/Contrast.cpp b/addons/AddOns/Working/Contrast/Contrast.cpp similarity index 98% rename from addons/AddOns/Not-Working/Contrast/Contrast.cpp rename to addons/AddOns/Working/Contrast/Contrast.cpp index 98409d91..0c3b3670 100644 --- a/addons/AddOns/Not-Working/Contrast/Contrast.cpp +++ b/addons/AddOns/Working/Contrast/Contrast.cpp @@ -17,6 +17,7 @@ #include "Contrast.h" #include "ManipulatorInformer.h" #include "Selection.h" +#include "SysInfoBeOS.h" #ifdef __cplusplus extern "C" { @@ -323,9 +324,9 @@ void ContrastManipulator::SetPreviewBitmap(BBitmap *bm) } if (preview_bitmap != NULL) { - system_info info; - get_system_info(&info); - double speed = info.cpu_count * 2000; // TODO: used to be info.cpu_clock_speed but was removed + BeOS_system_info info; + get_BeOS_system_info(&info); + double speed = info.cpu_count * info.cpu_clock_speed; // Let's select a resolution that can handle all the pixels at least // 10 times in a second while assuming that one pixel calculation takes diff --git a/addons/AddOns/Not-Working/Contrast/Contrast.h b/addons/AddOns/Working/Contrast/Contrast.h similarity index 100% rename from addons/AddOns/Not-Working/Contrast/Contrast.h rename to addons/AddOns/Working/Contrast/Contrast.h diff --git a/addons/AddOns/Not-Working/Contrast/Makefile b/addons/AddOns/Working/Contrast/Makefile similarity index 100% rename from addons/AddOns/Not-Working/Contrast/Makefile rename to addons/AddOns/Working/Contrast/Makefile diff --git a/addons/AddOns/Not-Working/ContrastManipulatorAddOn/ContrastManipulator.cpp b/addons/AddOns/Working/ContrastManipulatorAddOn/ContrastManipulator.cpp similarity index 100% rename from addons/AddOns/Not-Working/ContrastManipulatorAddOn/ContrastManipulator.cpp rename to addons/AddOns/Working/ContrastManipulatorAddOn/ContrastManipulator.cpp diff --git a/addons/AddOns/Not-Working/ContrastManipulatorAddOn/ContrastManipulator.h b/addons/AddOns/Working/ContrastManipulatorAddOn/ContrastManipulator.h similarity index 100% rename from addons/AddOns/Not-Working/ContrastManipulatorAddOn/ContrastManipulator.h rename to addons/AddOns/Working/ContrastManipulatorAddOn/ContrastManipulator.h diff --git a/addons/AddOns/Not-Working/ContrastManipulatorAddOn/Makefile b/addons/AddOns/Working/ContrastManipulatorAddOn/Makefile similarity index 100% rename from addons/AddOns/Not-Working/ContrastManipulatorAddOn/Makefile rename to addons/AddOns/Working/ContrastManipulatorAddOn/Makefile diff --git a/addons/AddOns/Crashes-ArtPaint/GaussianBlur/GaussianBlur.cpp b/addons/AddOns/Working/GaussianBlur/GaussianBlur.cpp similarity index 98% rename from addons/AddOns/Crashes-ArtPaint/GaussianBlur/GaussianBlur.cpp rename to addons/AddOns/Working/GaussianBlur/GaussianBlur.cpp index 3c599856..31d9a83c 100644 --- a/addons/AddOns/Crashes-ArtPaint/GaussianBlur/GaussianBlur.cpp +++ b/addons/AddOns/Working/GaussianBlur/GaussianBlur.cpp @@ -19,6 +19,7 @@ #include "GaussianBlur.h" #include "ImageProcessingLibrary.h" #include "Selection.h" +#include "SysInfoBeOS.h" #ifdef __cplusplus @@ -196,9 +197,9 @@ void GaussianBlurManipulator::SetPreviewBitmap(BBitmap *bm) } if (preview_bitmap != NULL) { - system_info info; - get_system_info(&info); - double speed = info.cpu_count * 2000; // TODO: used to be info.cpu_clock_speed but was removed + BeOS_system_info info; + get_BeOS_system_info(&info); + double speed = info.cpu_count * info.cpu_clock_speed; // Let's select a resolution that can handle all the pixels at least // 10 times in a second while assuming that one pixel calculation takes diff --git a/addons/AddOns/Crashes-ArtPaint/GaussianBlur/GaussianBlur.h b/addons/AddOns/Working/GaussianBlur/GaussianBlur.h similarity index 100% rename from addons/AddOns/Crashes-ArtPaint/GaussianBlur/GaussianBlur.h rename to addons/AddOns/Working/GaussianBlur/GaussianBlur.h diff --git a/addons/AddOns/Crashes-ArtPaint/GaussianBlur/Makefile b/addons/AddOns/Working/GaussianBlur/Makefile similarity index 100% rename from addons/AddOns/Crashes-ArtPaint/GaussianBlur/Makefile rename to addons/AddOns/Working/GaussianBlur/Makefile diff --git a/addons/AddOns/Not-Working/Interference/Interference.cpp b/addons/AddOns/Working/Interference/Interference.cpp similarity index 98% rename from addons/AddOns/Not-Working/Interference/Interference.cpp rename to addons/AddOns/Working/Interference/Interference.cpp index b4932b02..af368a9c 100644 --- a/addons/AddOns/Not-Working/Interference/Interference.cpp +++ b/addons/AddOns/Working/Interference/Interference.cpp @@ -17,6 +17,7 @@ #include "Interference.h" #include "PixelOperations.h" #include "Selection.h" +#include "SysInfoBeOS.h" #define PI M_PI @@ -185,9 +186,9 @@ void InterferenceManipulator::SetPreviewBitmap(BBitmap *bm) } } if (preview_bitmap != NULL) { - system_info info; - get_system_info(&info); - double speed = info.cpu_count * 2000; // TODO: used to be info.cpu_clock_speed but was removed + BeOS_system_info info; + get_BeOS_system_info(&info); + double speed = info.cpu_count * info.cpu_clock_speed; speed = speed / 15000; BRect bounds = preview_bitmap->Bounds(); diff --git a/addons/AddOns/Not-Working/Interference/Interference.h b/addons/AddOns/Working/Interference/Interference.h similarity index 100% rename from addons/AddOns/Not-Working/Interference/Interference.h rename to addons/AddOns/Working/Interference/Interference.h diff --git a/addons/AddOns/Not-Working/Interference/Makefile b/addons/AddOns/Working/Interference/Makefile similarity index 100% rename from addons/AddOns/Not-Working/Interference/Makefile rename to addons/AddOns/Working/Interference/Makefile diff --git a/addons/AddOns/Working/Makefile b/addons/AddOns/Working/Makefile index c0acf7d8..66cf9a8e 100644 --- a/addons/AddOns/Working/Makefile +++ b/addons/AddOns/Working/Makefile @@ -1,4 +1,9 @@ -SUBDIRS := AdaptiveHistogramEqualization AntiDitherer BlurAddOn ColorBalanceAddOn ColorSeparator DispersionAddOn EdgeDetector EmbossAddOn EnhanceEdges GrayscaleAddOn Halftone MarbleTexturer NegativeAddOn OilAddOn PolarMapper TwirlAddOn WaveAddOn WoodRelief +SUBDIRS := AdaptiveHistogramEqualization AntiDitherer BlurAddOn \ +ColorBalanceAddOn ColorSeparator Contrast ContrastManipulatorAddOn \ +DispersionAddOn EdgeDetector EmbossAddOn EnhanceEdges GaussianBlur \ +GrayscaleAddOn Halftone Interference MarbleTexturer NegativeAddOn \ +OilAddOn PolarMapper Saturation Sharpness Threshold TwirlAddOn \ +WaveAddOn WoodRelief all clean: @for d in $(SUBDIRS); do \ diff --git a/addons/AddOns/Not-Working/Saturation/Makefile b/addons/AddOns/Working/Saturation/Makefile similarity index 100% rename from addons/AddOns/Not-Working/Saturation/Makefile rename to addons/AddOns/Working/Saturation/Makefile diff --git a/addons/AddOns/Not-Working/Saturation/Saturation.cpp b/addons/AddOns/Working/Saturation/Saturation.cpp similarity index 98% rename from addons/AddOns/Not-Working/Saturation/Saturation.cpp rename to addons/AddOns/Working/Saturation/Saturation.cpp index 9d69c6f6..2a5d8d5b 100644 --- a/addons/AddOns/Not-Working/Saturation/Saturation.cpp +++ b/addons/AddOns/Working/Saturation/Saturation.cpp @@ -16,6 +16,7 @@ #include "ManipulatorInformer.h" #include "Saturation.h" #include "Selection.h" +#include "SysInfoBeOS.h" #ifdef __cplusplus extern "C" { @@ -339,9 +340,9 @@ void SaturationManipulator::SetPreviewBitmap(BBitmap *bm) } if (preview_bitmap != NULL) { - system_info info; - get_system_info(&info); - double speed = info.cpu_count * 2000; // TODO: used to be info.cpu_clock_speed but was removed + BeOS_system_info info; + get_BeOS_system_info(&info); + double speed = info.cpu_count * info.cpu_clock_speed; // Let's select a resolution that can handle all the pixels at least // 10 times in a second while assuming that one pixel calculation takes diff --git a/addons/AddOns/Not-Working/Saturation/Saturation.h b/addons/AddOns/Working/Saturation/Saturation.h similarity index 100% rename from addons/AddOns/Not-Working/Saturation/Saturation.h rename to addons/AddOns/Working/Saturation/Saturation.h diff --git a/addons/AddOns/Crashes-ArtPaint/Sharpness/Makefile b/addons/AddOns/Working/Sharpness/Makefile similarity index 100% rename from addons/AddOns/Crashes-ArtPaint/Sharpness/Makefile rename to addons/AddOns/Working/Sharpness/Makefile diff --git a/addons/AddOns/Crashes-ArtPaint/Sharpness/Sharpness.cpp b/addons/AddOns/Working/Sharpness/Sharpness.cpp similarity index 99% rename from addons/AddOns/Crashes-ArtPaint/Sharpness/Sharpness.cpp rename to addons/AddOns/Working/Sharpness/Sharpness.cpp index bc711cca..11096999 100644 --- a/addons/AddOns/Crashes-ArtPaint/Sharpness/Sharpness.cpp +++ b/addons/AddOns/Working/Sharpness/Sharpness.cpp @@ -18,6 +18,7 @@ #include "Sharpness.h" #include "ImageProcessingLibrary.h" #include "Selection.h" +#include "SysInfoBeOS.h" #ifdef __cplusplus extern "C" { @@ -322,9 +323,9 @@ void SharpnessManipulator::SetPreviewBitmap(BBitmap *bm) } if (preview_bitmap != NULL) { - system_info info; - get_system_info(&info); - double speed = info.cpu_count * 2000; // TODO: used to be info.cpu_clock_speed but was removed + BeOS_system_info info; + get_BeOS_system_info(&info); + double speed = info.cpu_count * info.cpu_clock_speed; // Let's select a resolution that can handle all the pixels at least // 10 times in a second while assuming that one pixel calculation takes diff --git a/addons/AddOns/Crashes-ArtPaint/Sharpness/Sharpness.h b/addons/AddOns/Working/Sharpness/Sharpness.h similarity index 100% rename from addons/AddOns/Crashes-ArtPaint/Sharpness/Sharpness.h rename to addons/AddOns/Working/Sharpness/Sharpness.h diff --git a/addons/AddOns/Not-Working/Threshold/Makefile b/addons/AddOns/Working/Threshold/Makefile similarity index 100% rename from addons/AddOns/Not-Working/Threshold/Makefile rename to addons/AddOns/Working/Threshold/Makefile diff --git a/addons/AddOns/Not-Working/Threshold/Threshold.cpp b/addons/AddOns/Working/Threshold/Threshold.cpp similarity index 98% rename from addons/AddOns/Not-Working/Threshold/Threshold.cpp rename to addons/AddOns/Working/Threshold/Threshold.cpp index fff069e4..700d2fd4 100644 --- a/addons/AddOns/Not-Working/Threshold/Threshold.cpp +++ b/addons/AddOns/Working/Threshold/Threshold.cpp @@ -24,6 +24,7 @@ #include "Selection.h" #include "Threshold.h" #include "ThresholdView.h" +#include "SysInfoBeOS.h" #ifdef __cplusplus @@ -326,9 +327,9 @@ void ThresholdManipulator::SetPreviewBitmap(BBitmap *bm) } if (preview_bitmap != NULL) { - system_info info; - get_system_info(&info); - double speed = info.cpu_count * 2000; // TODO: used to be info.cpu_clock_speed but was removed + BeOS_system_info info; + get_BeOS_system_info(&info); + double speed = info.cpu_count * info.cpu_clock_speed; // Let's select a resolution that can handle all the pixels at least // 10 times in a second while assuming that one pixel calculation takes diff --git a/addons/AddOns/Not-Working/Threshold/Threshold.h b/addons/AddOns/Working/Threshold/Threshold.h similarity index 100% rename from addons/AddOns/Not-Working/Threshold/Threshold.h rename to addons/AddOns/Working/Threshold/Threshold.h diff --git a/addons/AddOns/Not-Working/Threshold/ThresholdView.cpp b/addons/AddOns/Working/Threshold/ThresholdView.cpp similarity index 99% rename from addons/AddOns/Not-Working/Threshold/ThresholdView.cpp rename to addons/AddOns/Working/Threshold/ThresholdView.cpp index cff9ca6e..f9df96ba 100644 --- a/addons/AddOns/Not-Working/Threshold/ThresholdView.cpp +++ b/addons/AddOns/Working/Threshold/ThresholdView.cpp @@ -29,7 +29,7 @@ ThresholdView::ThresholdView(BRect rect, BMessage *msg) histogramRect = BRect(4,4,259,103); histogramBitmap = new BBitmap(histogramRect,B_RGBA32); - BMenu *a_menu = new BMenu("a_menu"); + BMenu *a_menu = new BMenu("Based on:"); a_menu->AddItem(new BMenuItem("Intensity",new BMessage(HISTOGRAM_MODE_INTENSITY))); a_menu->AddItem(new BMenuItem("Red",new BMessage(HISTOGRAM_MODE_RED))); a_menu->AddItem(new BMenuItem("Green",new BMessage(HISTOGRAM_MODE_GREEN))); diff --git a/addons/AddOns/Not-Working/Threshold/ThresholdView.h b/addons/AddOns/Working/Threshold/ThresholdView.h similarity index 100% rename from addons/AddOns/Not-Working/Threshold/ThresholdView.h rename to addons/AddOns/Working/Threshold/ThresholdView.h diff --git a/addons/AddOns/Working/TwirlAddOn/Twirl.cpp b/addons/AddOns/Working/TwirlAddOn/Twirl.cpp index 369edc71..cbdc45de 100644 --- a/addons/AddOns/Working/TwirlAddOn/Twirl.cpp +++ b/addons/AddOns/Working/TwirlAddOn/Twirl.cpp @@ -19,6 +19,7 @@ #include "Twirl.h" #include "PixelOperations.h" #include "Selection.h" +#include "SysInfoBeOS.h" #ifdef __cplusplus @@ -429,9 +430,9 @@ void TwirlManipulator::SetPreviewBitmap(BBitmap *bm) } if (preview_bitmap != NULL) { - system_info info; - get_system_info(&info); - double speed = info.cpu_count * 2000; // TODO: used to be info.cpu_clock_speed but was removed + BeOS_system_info info; + get_BeOS_system_info(&info); + double speed = info.cpu_count * info.cpu_clock_speed; speed = speed / 10000; BRect bounds = preview_bitmap->Bounds(); diff --git a/addons/AddOns/Working/WaveAddOn/Wave.cpp b/addons/AddOns/Working/WaveAddOn/Wave.cpp index 23840e4d..67f9d0bb 100644 --- a/addons/AddOns/Working/WaveAddOn/Wave.cpp +++ b/addons/AddOns/Working/WaveAddOn/Wave.cpp @@ -18,6 +18,7 @@ #include "Wave.h" #include "PixelOperations.h" #include "Selection.h" +#include "SysInfoBeOS.h" #define PI M_PI @@ -895,9 +896,9 @@ void WaveManipulator::SetPreviewBitmap(BBitmap *bm) } } if (preview_bitmap != NULL) { - system_info info; - get_system_info(&info); - double speed = info.cpu_count * 2000; // TODO: used to be info.cpu_clock_speed but was removed + BeOS_system_info info; + get_BeOS_system_info(&info); + double speed = info.cpu_count * info.cpu_clock_speed; speed = speed / 15000; BRect bounds = preview_bitmap->Bounds(); diff --git a/build.sh b/build.sh index 957c998e..d88c3c1c 100755 --- a/build.sh +++ b/build.sh @@ -3,8 +3,9 @@ echo "Building ArtPaint" make -f Makefile OBJ_DIR="objects_artpaint" $* echo "Building ArtPaint addons" make -f Makefile_addons OBJ_DIR="objects_addons" $* -echo "Moving final executable and addons into dist folder" +echo "Moving final executable, addons, and Documentation into dist folder" mkdir -p dist/add-ons cp -af objects_artpaint/ArtPaint dist cp -rf addons/AddOns/Working/*/objects_addons/*.so dist/add-ons +cp -arf Documentation dist/Documentation echo "Build has finished!"