[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Программирование в Gtk, Gtk-- и Gdk



On Mon, 24 Jan 2000, Виктор Вислобоков wrote:

> Привет всем.
> 
> Не буду флеймить про то какая там идет документация
> по недокументированным Widget'ам (а они на мой взгляд
> как раз и представляют максимальный интерес), а просто
> попрошу тех кого знает кинуть в меня примером по
> поводу использования GtkDrawadble, в плане не просто
> отрисовки через pixmap, а на предмет рисования
> линий, текста, картинок, словом того чем славен canvas.
> 
> Возможно я плохо представляю что такое GtkDrawable,
> тогда пихните меня в сторону того Widget'а, который
> дает возможности Canvas в Gtk.
> 
> Смотрел Gdk, но там опять все на уровне описания API,
> а примеров я нигде не видел.
> 
> Словом, помогите, pls.
> 
> Виктор

 Рекомендую выкачать (если еще нет) Reference Documentation Project  - там
документированы glib, gtk, gdk, gnome (документация на каждую функцию - по
крайне мере так будет). Брать здесь: http://developer.gnome.org/doc/API/
  
 По поводу рисования на Drawable - конкретно этот файл:
 http://developer.gnome.org/doc/API/gdk/gdk-drawing-primitives.html
 Drawable это либо Pixmap, либо Window. Но это очень низкоуровневый подход.

 Возможно больше заинтересует GnomeCanvas - входит в gnome-libs
 В доках к ней есть примеры. Наверное это то, что нужно, и скорее
 всего там есть все графические примитивы, которые нужны (насколько я помню,
 эти примитивы реализованы в gnome-libs - линии, элипсы, текст, картинки,
 виджеты -  см. Gnome User Interface Library Reference Manual - есть в
 исходниках gnome-libs). Вот первые строки "gnome-canvas.h":

/* GnomeCanvas widget - Tk-like canvas widget for Gnome
 *
 * GnomeCanvas is basically a port of the Tk toolkit's most excellent canvas
 * widget.  Tk is copyrighted by the Regents of the University of California,
 * Sun Microsystems, and other parties.
 *
 * Copyright (C) 1998 The Free Software Foundation
 *
 * Authors: Federico Mena <federico@nuclecu.unam.mx>
 *          Raph Levien <raph@gimp.org>
 */
 Так что это должно быть тоже самое, что и Tk Canvas.

 Есть еще библиотека libart - сама иногда называется libart_gpl, есть еще 
 версия libart_lgpl - очень умно написана (использует очень умные алгоритмы 
 для ускорения и flicker-free drawing) - by  Raph Levien. По моему на ней и
 построена gnome-canvas. 

 В принципе есть хорошая и большая (900kb html) книга by Havoc Pendington:
 "Gtk and Gnome Application Development": http://developer.gnome.org/doc/GGAD/
 Но я рекомендую rdp-docs - так сразу видно, какие функции есть.

 Насчет примеров, рекомендую выкачать исходники gtk и gnome-libs - ведь все
 виджеты используют gdk drawables для рисования.

 Best regards,
  -Vlad


Reply to: