|
Dillo
|
#include <fltkviewport.hh>
Public Types | |
| enum | GadgetOrientation { GADGET_VERTICAL, GADGET_HORIZONTAL } |
Public Member Functions | |
| FltkViewport (int x, int y, int w, int h, const char *label=0) | |
| ~FltkViewport () | |
| void | resize (int x, int y, int w, int h) |
| void | draw () |
| int | handle (int event) |
| void | setCanvasSize (int width, int ascent, int descent) |
| Set the canvas size. More... | |
| bool | usesViewport () |
| Return, whether this view uses a viewport. More... | |
| int | getHScrollbarThickness () |
| Get the thickness of the horizontal scrollbar, when it is visible. More... | |
| int | getVScrollbarThickness () |
| Get the thickness of the vertical scrollbar, when it is visible. More... | |
| void | scroll (int dx, int dy) |
| void | scroll (dw::core::ScrollCommand cmd) |
| Scroll the viewport as commanded. More... | |
| void | scrollTo (int x, int y) |
| Scroll the vieport to the given position. More... | |
| void | setViewportSize (int width, int height, int hScrollbarThickness, int vScrollbarThickness) |
| Set the viewport size. More... | |
| void | setScrollStep (int step) |
| void | setGadgetOrientation (bool hscrollbarVisible, bool vscrollbarVisible, GadgetOrientation gadgetOrientation) |
| void | setDragScroll (bool enable) |
| void | addGadget (Fl_Widget *gadget) |
Public Member Functions inherited from dw::fltk::FltkWidgetView | |
| FltkWidgetView (int x, int y, int w, int h, const char *label=0) | |
| ~FltkWidgetView () | |
| void | drawText (core::style::Font *font, core::style::Color *color, core::style::Color::Shading shading, int x, int y, const char *text, int len) |
| void | drawSimpleWrappedText (core::style::Font *font, core::style::Color *color, core::style::Color::Shading shading, int x, int y, int w, int h, const char *text) |
| void | drawImage (core::Imgbuf *imgbuf, int xRoot, int yRoot, int x, int y, int width, int height) |
| bool | usesFltkWidgets () |
| void | addFltkWidget (Fl_Widget *widget, core::Allocation *allocation) |
| void | removeFltkWidget (Fl_Widget *widget) |
| void | allocateFltkWidget (Fl_Widget *widget, core::Allocation *allocation) |
| void | drawFltkWidget (Fl_Widget *widget, core::Rectangle *area) |
Public Member Functions inherited from dw::fltk::FltkViewBase | |
| FltkViewBase (int x, int y, int w, int h, const char *label=0) | |
| ~FltkViewBase () | |
| void | draw () |
| int | handle (int event) |
| void | setLayout (core::Layout *layout) |
| This methods notifies the view, that it has been attached to a layout. More... | |
| void | setCursor (core::style::Cursor cursor) |
| Set the cursor appearance. More... | |
| void | setBgColor (core::style::Color *color) |
| Set the background of the view. More... | |
| void | startDrawing (core::Rectangle *area) |
| Called before drawing. More... | |
| void | finishDrawing (core::Rectangle *area) |
| Called after drawing. More... | |
| void | queueDraw (core::Rectangle *area) |
| Queue a region, which is given in canvas coordinates, for drawing. More... | |
| void | queueDrawTotal () |
| Queue the total viewport for drawing. More... | |
| void | cancelQueueDraw () |
| Cancel a draw queue request. More... | |
| void | drawPoint (core::style::Color *color, core::style::Color::Shading shading, int x, int y) |
| void | drawLine (core::style::Color *color, core::style::Color::Shading shading, int x1, int y1, int x2, int y2) |
| void | drawTypedLine (core::style::Color *color, core::style::Color::Shading shading, core::style::LineType type, int width, int x1, int y1, int x2, int y2) |
| void | drawRectangle (core::style::Color *color, core::style::Color::Shading shading, bool filled, int x, int y, int width, int height) |
| void | drawArc (core::style::Color *color, core::style::Color::Shading shading, bool filled, int centerX, int centerY, int width, int height, int angle1, int angle2) |
| void | drawPolygon (core::style::Color *color, core::style::Color::Shading shading, bool filled, bool convex, core::Point *points, int npoints) |
| core::View * | getClippingView (int x, int y, int width, int height) |
| void | mergeClippingView (core::View *clippingView) |
| void | setBufferedDrawing (bool b) |
Public Member Functions inherited from lout::object::Object | |
| virtual | ~Object () |
| The destructor is defined as virtual (but not abstract), so that destruction of Object's works properly. More... | |
| virtual bool | equals (Object *other) |
| Returns, whether two objects are equal. More... | |
| virtual int | hashValue () |
| Return a hash value for the object. More... | |
| virtual Object * | clone () |
| Return an exact copy of the object. More... | |
| virtual void | intoStringBuffer (misc::StringBuffer *sb) |
| Store a textual representation of the object in a misc::StringBuffer. More... | |
| const char * | toString () |
| Use object::Object::intoStringBuffer to return a textual representation of the object. More... | |
| virtual size_t | sizeOf () |
| Return the number of bytes, this object totally uses. More... | |
Protected Member Functions | |
| int | translateViewXToCanvasX (int x) |
| int | translateViewYToCanvasY (int y) |
| int | translateCanvasXToViewX (int x) |
| int | translateCanvasYToViewY (int y) |
Private Types | |
| enum | { SCROLLBAR_THICKNESS = 15 } |
Private Member Functions | |
| void | adjustScrollbarsAndGadgetsAllocation () |
| void | adjustScrollbarValues () |
| void | hscrollbarChanged () |
| void | vscrollbarChanged () |
| void | positionChanged () |
| void | selectionScroll () |
| void | updateCanvasWidgets (int oldScrollX, int oldScrollY) |
Static Private Member Functions | |
| static void | hscrollbarCallback (Fl_Widget *hscrollbar, void *viewportPtr) |
| static void | vscrollbarCallback (Fl_Widget *vscrollbar, void *viewportPtr) |
| static void | selectionScroll (void *vport) |
| static void | draw_area (void *data, int x, int y, int w, int h) |
Private Attributes | |
| int | scrollX |
| int | scrollY |
| int | scrollDX |
| int | scrollDY |
| int | hasDragScroll |
| int | dragScrolling |
| int | dragX |
| int | dragY |
| int | horScrolling |
| int | verScrolling |
| Fl_Scrollbar * | vscrollbar |
| Fl_Scrollbar * | hscrollbar |
| GadgetOrientation | gadgetOrientation [4] |
| lout::container::typed::List < lout::object::TypedPointer < Fl_Widget > > * | gadgets |
Additional Inherited Members | |
Protected Attributes inherited from dw::fltk::FltkViewBase | |
| core::Layout * | theLayout |
| int | canvasWidth |
| int | canvasHeight |
| int | mouse_x |
| int | mouse_y |
| Fl_Widget * | focused_child |
| dw::fltk::FltkViewport::FltkViewport | ( | int | x, |
| int | y, | ||
| int | w, | ||
| int | h, | ||
| const char * | label = 0 |
||
| ) |
| dw::fltk::FltkViewport::~FltkViewport | ( | ) |
References DBG_OBJ_DELETE, and gadgets.
| void dw::fltk::FltkViewport::addGadget | ( | Fl_Widget * | gadget | ) |
References adjustScrollbarsAndGadgetsAllocation(), lout::container::typed::List< T >::append(), and gadgets.
|
private |
References GADGET_HORIZONTAL, GADGET_VERTICAL, gadgetOrientation, gadgets, hscrollbar, lout::container::typed::Collection< T >::iterator(), SCROLLBAR_THICKNESS, lout::container::typed::Collection< T >::size(), and vscrollbar.
Referenced by addGadget(), resize(), setGadgetOrientation(), and setViewportSize().
|
private |
References dw::fltk::FltkViewBase::canvasHeight, dw::fltk::FltkViewBase::canvasWidth, hscrollbar, scrollX, scrollY, and vscrollbar.
Referenced by scrollTo(), and setCanvasSize().
| void dw::fltk::FltkViewport::draw | ( | ) |
References draw_area(), hscrollbar, SCROLLBAR_THICKNESS, scrollDX, scrollDY, and vscrollbar.
|
staticprivate |
References gadgets, and lout::container::typed::Collection< T >::iterator().
Referenced by draw().
|
virtual |
Get the thickness of the horizontal scrollbar, when it is visible.
Does not have to be implemented, when usesViewport returns false.
Implements dw::core::View.
References SCROLLBAR_THICKNESS.
|
virtual |
Get the thickness of the vertical scrollbar, when it is visible.
Does not have to be implemented, when usesViewport returns false.
Implements dw::core::View.
References SCROLLBAR_THICKNESS.
| int dw::fltk::FltkViewport::handle | ( | int | event | ) |
References dw::core::style::CURSOR_DEFAULT, dw::core::style::CURSOR_MOVE, dragScrolling, dragX, dragY, dw::fltk::FltkViewBase::handle(), hasDragScroll, horScrolling, hscrollbar, dw::fltk::FltkViewBase::mouse_x, dw::fltk::FltkViewBase::mouse_y, positionChanged(), scroll(), selectionScroll(), dw::fltk::FltkViewBase::setCursor(), verScrolling, and vscrollbar.
|
staticprivate |
Referenced by FltkViewport().
|
private |
References hscrollbar, scroll(), and scrollX.
|
private |
| void dw::fltk::FltkViewport::resize | ( | int | x, |
| int | y, | ||
| int | w, | ||
| int | h | ||
| ) |
| void dw::fltk::FltkViewport::scroll | ( | int | dx, |
| int | dy | ||
| ) |
References scrollTo(), scrollX, and scrollY.
Referenced by handle(), hscrollbarChanged(), scroll(), selectionScroll(), setViewportSize(), and vscrollbarChanged().
|
virtual |
Scroll the viewport as commanded.
Reimplemented from dw::core::View.
References dw::core::BOTTOM_CMD, dw::fltk::FltkViewBase::canvasHeight, hscrollbar, dw::core::LEFT_CMD, dw::core::LINE_DOWN_CMD, dw::core::LINE_UP_CMD, dw::core::RIGHT_CMD, dw::core::SCREEN_DOWN_CMD, dw::core::SCREEN_LEFT_CMD, dw::core::SCREEN_RIGHT_CMD, dw::core::SCREEN_UP_CMD, scroll(), scrollTo(), scrollX, dw::core::TOP_CMD, and vscrollbar.
|
virtual |
Scroll the vieport to the given position.
Does not have to be implemented, when usesViewport returns false.
Implements dw::core::View.
References adjustScrollbarValues(), dw::fltk::FltkViewBase::canvasHeight, dw::fltk::FltkViewBase::canvasWidth, hscrollbar, lout::misc::max(), lout::misc::min(), positionChanged(), SCROLLBAR_THICKNESS, scrollDX, scrollDY, dw::core::Layout::scrollPosChanged(), scrollX, scrollY, dw::fltk::FltkViewBase::theLayout, updateCanvasWidgets(), and vscrollbar.
Referenced by scroll().
|
private |
References hscrollbar, dw::fltk::FltkViewBase::mouse_x, dw::fltk::FltkViewBase::mouse_y, scroll(), and vscrollbar.
Referenced by handle(), and selectionScroll().
|
staticprivate |
References selectionScroll().
|
virtual |
Set the canvas size.
Reimplemented from dw::fltk::FltkViewBase.
References adjustScrollbarValues(), and dw::fltk::FltkViewBase::setCanvasSize().
|
inline |
| void dw::fltk::FltkViewport::setGadgetOrientation | ( | bool | hscrollbarVisible, |
| bool | vscrollbarVisible, | ||
| FltkViewport::GadgetOrientation | gadgetOrientation | ||
| ) |
References adjustScrollbarsAndGadgetsAllocation(), and gadgetOrientation.
| void dw::fltk::FltkViewport::setScrollStep | ( | int | step | ) |
References hscrollbar, and vscrollbar.
|
virtual |
Set the viewport size.
Does not have to be implemented, when usesViewport returns false.
This will normally imply a resize of the UI widget. Width and height are the dimensions of the new size, including the scrollbar thicknesses.
Implements dw::core::View.
References adjustScrollbarsAndGadgetsAllocation(), hscrollbar, scroll(), scrollX, scrollY, and vscrollbar.
|
protectedvirtual |
Implements dw::fltk::FltkViewBase.
References scrollX.
|
protectedvirtual |
Implements dw::fltk::FltkViewBase.
References scrollY.
|
protectedvirtual |
|
protectedvirtual |
|
private |
References hscrollbar, and vscrollbar.
Referenced by scrollTo().
|
virtual |
Return, whether this view uses a viewport.
Implements dw::core::View.
|
staticprivate |
Referenced by FltkViewport().
|
private |
References scroll(), scrollY, and vscrollbar.
|
private |
Referenced by FltkViewport(), handle(), and positionChanged().
|
private |
Referenced by handle().
|
private |
Referenced by handle().
|
private |
Referenced by adjustScrollbarsAndGadgetsAllocation(), FltkViewport(), and setGadgetOrientation().
|
private |
Referenced by addGadget(), adjustScrollbarsAndGadgetsAllocation(), draw_area(), FltkViewport(), and ~FltkViewport().
|
private |
Referenced by FltkViewport(), and handle().
|
private |
Referenced by FltkViewport(), and handle().
|
private |
|
private |
Referenced by draw(), FltkViewport(), and scrollTo().
|
private |
Referenced by draw(), FltkViewport(), and scrollTo().
|
private |
|
private |
|
private |
Referenced by FltkViewport(), and handle().
|
private |
1.8.8