ࡱ; 0  !"#$%&'()*+,-./z23456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy{}~Root Entry  !"#$%&'()*+./01689:;<=>?@BCDEFGHIJKLMNQRSTUVXYZ[\]^_`abcdefghijklmnopqrsuvwx !r\V)䰱 PresentationStarImpress 5.0rp0Object 1 ®`V8:q_5p0Object 2aօ)䰱Je1M'SSfxDocumentInfo  |1$;6 |1hqR uK Info 0 Info 1 Info 2 Info 3 |1$;6!< TASK,0,1,H 1,0,100,1,Oh+'0 h t 33@ׄ.@0:@|XOutdevItemPool 1   )     &'()*+,-./06789:;UVWXYZ[\]c !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstt      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefd70~'@qXX',@X'.@2XXX' @X'@Arrow ArrowddXXXS'c@(ArrowddXX'.@^,XXX'"@,XX'@XX'@X @ @  @! @7 @M @c @y'@XX'b@̙XX X2XD'6@O22ddX'(@X'"@BMvv(@@SD@x^SI 0 s\ z 46ZBn8x)1̔.<觔B+̄ ޢ40:prf |q]~+H~|WFMbP@aoCē[ȡz6~U{߃XbXn**F@ XXXX X&X,77 h@ +;(,,--..XXXX X&XDXJHH @ +' +'+'' +'' g* (@'A'1'+'!''''''''' +'XXX X&X,X8XJX\Xff @ JJKK JJKKJJKKQQVVJJKKJJKKJJKKJJKKJJKK JJKK  JJQQVVXX X2XPXbXtXXXXXXJ@ X8p)W "8bFt$:Pf|,BXn4J`v 8 d   . D Z p  , B X n   2 H ^ t  $ : P p 2Qq}g P+EditEngineItemPool D6f%0z>g*|@1 ",StarBatsN -",StarBatsN -",StarBatsN -"` ` ,StarBatsN -" ,StarBatsN -",StarBatsN -"hh,StarBatsN -",StarBatsN -",StarBatsN -"pp,StarBatsN - "X,StarBatsN -",StarBatsN -",StarBatsN -"` ` ,StarBatsN -" ,StarBatsN -",StarBatsN -"hh,StarBatsN -",StarBatsN -",StarBatsN -"pp,StarBatsN - ",StarBatsN -",StarBatsN -",StarBatsN -"` ` ,StarBatsN -" ,StarBatsN -",StarBatsN -"hh,StarBatsN -",StarBatsN -",StarBatsN -"pp,StarBatsN - Z"|,StarBatsN -"|,StarBatsN -` ` ,StarBatsN K",StarBatsN -,StarBatsN K"pp,StarBatsN -"  ,StarBatsN -" ,StarBatsN -"%%,StarBatsN -"0*0*,StarBatsN -Z r,StarBats -r,StarBats -r,StarBats -r ,StarBats -r,StarBats -r,StarBats -rpp,StarBats -rXX,StarBats -r@@,StarBats -r(#(#,StarBats - "XX,StarBatsi -",StarBatsi -",StarBatsi -"` ` ,StarBatsi -" ,StarBatsi -",StarBatsi -"hh,StarBatsi -",StarBatsi -",StarBatsi -XX.XNXn XX @1@2 XX@3dddxdddxdddx*dddxFdddFddd Fddd FdddxdddxYdddY ddd YDdddYDdddYDdddYD8ddd8YDXdddXYDxdddxYD!ddd!YDXX!X4XGXZXmXXXXXXX X#X<XUXnX<( n@ h4o2  XXXX X&X,X2X8X>XD (@7 StarBats!"- StarBats !K StarBatsX!"- StarBats!"- StarBats!"- StarBats!r- StarBatsX!"- StarBatsX!"- StarBats!r-  StarBats!"-  StarBats!"-  StarBatsX!"-  StarBats!"- StarBats!"- StarBatsX!KXXGXXXX+XdXXXXHXXXX,@'%@:dddddXdddd ,dd|d@ddd`  dddhddddddpddd  xddd (#ddd% 'ddd0* 2dddX ddd,dd|d,dd|d,dd|ddddYdddY|` ddd` YdddYdddYpdddpY ddd Y  ddd Y!*dddX#%ddd%Y$0*ddd0*YXX!X4XGXZXmXXXXXXXXXX+X>XQXjXXXXXXXX,XEA'@;ddddddddddddd,ddd dddXXX&X2X>XJXVXb1'@;dX+'(@;S XXX' @<!'@6<X'@`<TimesX'@ < Nd 4d d d {d d d hd ld d d id XXX"X,X6X@XJXTX^XhXrX|?( @8='@X=XX'@{=X'@=X'@=XX'@=X'@>X%' @>S' @0>"' @F>' @\>@v>AX@!U"z""""###$/$N$v$$$$$$ %PCg* "XX,StarBatsN -",StarBatsN -",StarBatsN -"` ` ,StarBatsN -" ,StarBatsN -",StarBatsN -"hh,StarBatsN -",StarBatsN -",StarBatsN -"pp,StarBatsN - ( StarBats!"-+'!''Times'Od 08s{2 + RStandardStandard#'''''''''''''''+;(,,--..g* (@'A'1'+'!'''''''''Object with arrowStandardObject with arrow'''''''Object with shadowStandardObject with shadow+;(,,--..Object without fillStandardObject without fill'TextStandardText'' Text bodyStandard Text body'''Text body justfiedStandardText body justfied''+'First line indentStandardFirst line indent''g*@'TitleStandardTitle'''Title1StandardTitle1 '''+;(,,--..+''Title2StandardTitle2 ''+;(,,--..g*@'A'+''HeadingStandardHeading''A''Heading1StandardHeading1''A'''Heading2StandardHeading2''A''''Dimension LineStandardDimension Line'''''''Home~LT~Gliederung 1Home~LT~Gliederung 1''g*@'A'+'!'''''''''Home~LT~Gliederung 2Home~LT~Gliederung 1Home~LT~Gliederung 2@'A'' Home~LT~Gliederung 3Home~LT~Gliederung 2Home~LT~Gliederung 3@'A''Home~LT~Gliederung 4Home~LT~Gliederung 3Home~LT~Gliederung 4@'A'' Home~LT~Gliederung 5Home~LT~Gliederung 4Home~LT~Gliederung 5@'A'' Home~LT~Gliederung 6Home~LT~Gliederung 5Home~LT~Gliederung 6@'A'' Home~LT~Gliederung 7Home~LT~Gliederung 6Home~LT~Gliederung 7@' A'' Home~LT~Gliederung 8Home~LT~Gliederung 7Home~LT~Gliederung 8@' A'' Home~LT~Gliederung 9Home~LT~Gliederung 8Home~LT~Gliederung 9@' A'' Home~LT~Titel Home~LT~Titel''QQg*+'!''' ''''''Home~LT~UntertitelHome~LT~Untertitel''QQg*@' +'!''' ''''''Home~LT~NotizenHome~LT~Notizen ''!'''''''''Home~LT~HintergrundobjekteHome~LT~Hintergrundobjekte+;(,,--..Home~LT~HintergrundHome~LT~Hintergrund''TitleTitle@SubtitleSubtitle@Background objectsBackground objects@ Background Background@NotesNotes@ Outline 1 Outline 1@ Outline 2 Outline 1 Outline 2@ Outline 3 Outline 2 Outline 3@ Outline 4 Outline 3 Outline 4@ Outline 5 Outline 4 Outline 5@ Outline 6 Outline 5 Outline 6@ Outline 7 Outline 6 Outline 7@ Outline 8 Outline 7 Outline 8@ Outline 9 Outline 8 Outline 9@tPDP8> p< n  x H t & Y %#@t  aօ)䰱 Spreadsheet StarCalc 5.0Je1SfxDocumentInfo  |1DA |1U DrMdn_JoeMn0|1<76|1qR|1l6RODrLy LAYER_LAYOUTDrLy LAYER_BCKGRNDDrLy LAYER_BACKGRNDOBJDrLyLAYER_CONTROLSDrLy!LAYER_MEASURELINESDrMP'JoeMlVTDrML DrOb<SVDr&y1A&DrOb<SVDr&;LdA&DrOb<SVDr&y.1LDrOb<SVDr&;.LdLDrXXgg fHome~LT~GliederungDrMPJoeM`mRDrML DrObSVDr&_mR'Home~LT~Hintergrund_mRDrObSVDr& oe! Home~LT~Titel oepxV4B1[#Click to edit the title text format Home~LT~Titel<( (@'DrObWSVDr& oe{J(Home~LT~Gliederung 1 oe{J xV4B1 %Click to edit the outline text formatHome~LT~Gliederung 1<( (@'Second Outline LevelHome~LT~Gliederung 2<( (@'Third Outline LevelHome~LT~Gliederung 3<( ( @'Fourth Outline LevelHome~LT~Gliederung 4<( (@'Fifth Outline LevelHome~LT~Gliederung 5<( ( @'Sixth Outline LevelHome~LT~Gliederung 6<( ( @'Seventh Outline LevelHome~LT~Gliederung 7<( ( @' Eighth Outline LevelHome~LT~Gliederung 8<( ( @'#Ninth Outline LevelHome~LT~Gliederung 9<(  ( @'$ DrXXgg ^Home~LT~GliederungDrMPJoeMVTlDrML DrObSVDr&T C(0! Home~LT~TitelT C(0dxV4B1OClick to move the slide Home~LT~Titel<( (@'DrObSVDr& 3G"]#Home~LT~Notizen 3G"]mxV4B1XClick to edit the notes formatHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPgcJoeMlVTDrML8DrMD,DrXX Handoutsgg FHome~LT~GliederungDrPgJJoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel oecxV4B1NAdvantages (continued) Home~LT~Titel<( (@'DrOb SVDr& oe|J& Home~LT~Untertitel oe|JxV4B1jEThe GTK+ C object model uses prefixed function names and cast macros:Home~LT~Untertitel<( (@' +'Home~LT~Untertitel<( (@' +'4gtk_button_set_text(GTK_BUTTON(button), "sometext");Home~LT~Untertitel<( (@' +'4Home~LT~Untertitel<( (@' +'&gtkmm C++ code is shorter and clearer:Home~LT~Untertitel<( (@' +'Home~LT~Untertitel<( (@' +'button.set_text("sometext");Home~LT~Untertitel<( (@' +'DrXXgg RHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPg7JoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel oeexV4B1Pgtkmm2 - GNOME2 with C++ Home~LT~Titel<( (@'DrObSVDr&f#r'Jm+ Standardf#r'Jm+}^NAT5 @GIF89aw𻻻PPP666) ?6 >*QT#%Gkkki,%HYYYp/ ?U$* j- x DS0007!Created from gtkmm_logo.png! ?,wpH,Ȥrl:ae جvVxL.h AaN@lt{er sUt  dr QcsfӬF Њ߮drWڽ}*hl&D㐓,#_O2ƀdw]B!t!I''xc@%Rg~RhCrzYCZ@yȑG}2R$OqK{غN -*?Vm{(ΆZLknwaKUv V ﹵m ?3vgJ/kDk!JZo8 )J\r9h@s|2ϾDL+%0Y-*͘|m#f40(ߺSS4c>\YqJ-޹c Xlvl0Rx2جCCsފ6~#m7΍x>/vMJ8n6 arnsκbj~>}{EVCӰK|O3N;|U|lɯ)p -iPZh~!WMTTV| UGAP&+շ@q}0w@ꅯ`ZP")dm' @x' ;G?[YUpW]P.A &vaM6,X1 CR\s1HE!!V`(2*̌Acв1URvk4l<6P'wU#&xT-<' @/ሓQ#bU 9/x:R t2Uq,|X\ʄUhXDnre)e٧؅e|*KWb,P5{9)7[{]} g憢9P}E,iOS\;W@aW Lff¡6wLЀj>TB8y:`Q{7u\8A~K}.c}KiuK!X=#oQpjO58vwo7O0>ay~s^܍/x/ljmYBQ5Q֧x^s/ @_9({iQ/6J mHm嫦=v僠g|{|1[w%F|?կio`@QWKiC]M~z~w rX}2MY#PG/׀q@ ؁"Hu'/ ^WAz'z8#r$}2x w-#cUE&KX[aіDw87gb6x2Aw_}r E8zLxgK؅lڤnP0 uMB4Z("(ma( rB") kHHlT|5WFkͧ}(tjQX7psovovyI'%SOY y[%W(G!r`wq WxUGvZwp7'2hv. %S6SxX$gx|7(P)ːcWy {hs%8bui 3 2"T`&H%I旈p$`gp$roD`.X<^x`*q8I6jrCQ%``*Bvs0sP }p`;%rÆ sfXv EQ##VQ(?S^C 5Yv "gvs$-ed)xCً6 1fqv'Y*1 P`jB+f&Dgy'w\ȉgkn,&Fu hDppwI/ 6qb Yďx*kSx$@,m)9hIG wi%3@)!|`]UV0 LKDRKiTiDpɋ9eQYn3'&9#qCYcb@i<⠥7vC yJSל>f!`f |"+Z{5ze"IJ_`_c,.Z0:,Z98ʤ4+N):\Re2B}zOKzUgtآIʥ M:6j*P BlCcb[/oaJscCER1XڦpZYbvʩ#B"`Vz=Jʨکx*XWF&y:G2&ȸzڥZ:,v"# ,Enƚڬ c57, p"ISzDʭq*Oj>t-ʪ Lڮ G*K%'nԆWZy:nuKݚ J$l:/!˖{ k*[+2ZY*ʲ)kߚ{VZz[D:7([]˵E9B6,U"{8KM˶+K?3Z6j4Zm9ȴo5U;b16X˜=۲p˳] 9}i뷃>[HNKSB$h6k9^kh=úI˷K+kALJֳ,1GL ڢ[Rk~#b:ڮ(曠/rFy[$<@+.:'K; p~?N  &ahwã"Bd,#%2B(l ^Dj)Üph(*6A;DrObSVDr& 3oeH! Home~LT~Titel 3oeHxV4B1t,Murray Cumminghttp://gtkmm.sourceforge.net Home~LT~Titel<( (@' DrXXgg NHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]#Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPgOJoeM`mRDrLyLayoutDrLy BackgroundDrLy!Background objectsDrLyControlsDrLyDimension LinesDrML8DrMD,DrObSVDr& oe! Home~LT~Titel oe`xV4B1KAdvantages of gtkmm Home~LT~Titel<( (@'DrObSVDr& oe|J(Home~LT~Gliederung 1, oe|J xV4B1All the advantages of C++.Home~LT~Gliederung 1 <( (@''Type-safe: find errors at compile time.Home~LT~Gliederung 1 <( (@'"Inheritance to derive new widgets.Home~LT~Gliederung 1 <( (@'Simpler memory management.Home~LT~Gliederung 1 <( (@' Less code.Home~LT~Gliederung 1 <( (@'Forget reference counting.Home~LT~Gliederung 1 <( (@'DrXXgg NHome~LT~GliederungDrPgJoeMVTlDrLyLayoutDrLy BackgroundDrLy!Background objectsDrLyControlsDrLyDimension LinesDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]#Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg NHome~LT~GliederungDrPgJoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titelx oeYxV4B1D HelloWorld.h Home~LT~Titel<( (@'DrObSVDr& hoeL& Home~LT~Untertitelr hoeLS xV4B1& %class HelloWorld : public Gtk::WindowHome~LT~Untertitel<( (@' +' %{Home~LT~Untertitel<( (@' +' public:Home~LT~Untertitel<( (@' +'  HelloWorld();Home~LT~Untertitel<( (@' +'  virtual ~HelloWorld();Home~LT~Untertitel<( (@' +'  Home~LT~Untertitel<( (@' +'  protected:Home~LT~Untertitel<( (@' +'  //Signal handlers:Home~LT~Untertitel<( (@' +' # virtual void on_button_clicked();Home~LT~Untertitel<( (@' +' #Home~LT~Untertitel<( (@' +'  //Member widgets:Home~LT~Untertitel<( (@' +'  Gtk::Button m_button;Home~LT~Untertitel<( (@' +' };Home~LT~Untertitel<( (@' +' DrXXgg RHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPg)  JoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titely oeZxV4B1E HelloWorld.cc Home~LT~Titel<( (@'DrOblSVDr& @oe O& Home~LT~Untertitel  @oe OxV4B1HelloWorld::HelloWorld()Home~LT~Untertitel<( (@'!+': m_button("Hello World") Home~LT~Untertitel<( (@'!+'{Home~LT~Untertitel<( (@'!+') // Sets the border width of the window.Home~LT~Untertitel<( (@'!+') set_border_width(10);Home~LT~Untertitel<( (@'!+' Home~LT~Untertitel<( (@'!+' D // When the button receives the "clicked" signal, it will call theHome~LT~Untertitel<( (@'!+'D9 // hello() method. The hello() method is defined below.Home~LT~Untertitel<( (@'!+'9X m_button.signal_clicked().connect( SigC::slot(this, &HelloWorld::on_button_clicked) );Home~LT~Untertitel<( (@'!+'XHome~LT~Untertitel<( (@'!+'9 // This packs the button into the Window (a container).Home~LT~Untertitel<( (@'!+'9 add(m_button);Home~LT~Untertitel<( (@'!+'Home~LT~Untertitel<( (@'!+'> // The final step is to display this newly created widget...Home~LT~Untertitel<( (@'!+'> m_button.show();Home~LT~Untertitel<( (@'!+'}Home~LT~Untertitel<( (@'!+'Home~LT~Untertitel<( (@'!+'$void HelloWorld::on_button_clicked()Home~LT~Untertitel<( (@'!+'${Home~LT~Untertitel<( (@'!+'* std::cout << "Hello World" << std::endl;Home~LT~Untertitel<( (@'!+'*}Home~LT~Untertitel<( (@'!+'DrXXgg RHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0 DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPgJoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titels oeTxV4B1?main.cc Home~LT~Titel<( (@'DrObSVDr& oe{J& Home~LT~Untertitel oe{Jo xV4B1H !int main (int argc, char* argv[])Home~LT~Untertitel<( (@' +' !{Home~LT~Untertitel<( (@' +'  Gtk::Main kit(argc, argv);Home~LT~Untertitel<( (@' +' Home~LT~Untertitel<( (@' +'  HelloWorld helloworld;Home~LT~Untertitel<( (@' +'  kit.run(helloworld);Home~LT~Untertitel<( (@' +' 3 //Shows the window and returns when it is closed.Home~LT~Untertitel<( (@' +' 3Home~LT~Untertitel<( (@' +' return 0;Home~LT~Untertitel<( (@' +' }Home~LT~Untertitel<( (@' +' DrXXmain.ccgg RHome~LT~GliederungDrPg |JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0 DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXmain.ccgg VHome~LT~GliederungDrPgQJoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel~ oe_xV4B1JComparison with QT Home~LT~Titel<( (@'DrObSVDr& iI Standard iIObject 2StarCalcDrXXgg RHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0 DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPgwJoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel oe`xV4B1Kgtkmm 2: What's new Home~LT~Titel<( (@'DrOb:SVDr& oe|J(Home~LT~Gliederung 1 oe|JxV4B1 Glib::ustringHome~LT~Gliederung 1<( ( @' Main WindowHome~LT~Gliederung 1<( ( @'Glib::RefPtr<>Home~LT~Gliederung 1<( ( @'Signals improvedHome~LT~Gliederung 1<( ( @' PropertiesHome~LT~Gliederung 1<( ( @' MiscellaneousHome~LT~Gliederung 1<( ( @'DrXXgg VHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPg]JoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel oefxV4B1QWhat's new: Glib::ustring Home~LT~Titel<( (@'DrObSVDr& oe|J(Home~LT~Gliederung 12 oe|JxV4B1UTF8 for multi-byte languages.Home~LT~Gliederung 1<( ( @'Same interface as std::string.Home~LT~Gliederung 1<( ( @'QCasts to and from std::string, in case you don't care about internationalization.Home~LT~Gliederung 1<( ( @'+No UTF8 string in the C++ Standard Library.Home~LT~Gliederung 1<( ( @''Use it if you want, or forget about it.Home~LT~Gliederung 1<( ( @'DrXXgg RHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPg.JoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel oedxV4B1OWhat's new: Main Window Home~LT~Titel<( (@'DrObSVDr& oe|J(Home~LT~Gliederung 1 oe|JlxV4B1O/No more obscure "delete_event" signal nonsense.Home~LT~Gliederung 1<( ( @'&No more self-destructing Gtk::Windows.Home~LT~Gliederung 1<( ( @' Gtk::Main::run(window) override.Home~LT~Gliederung 1<( ( @'\Shows the window, starts the event loop, and stops the event loop when the window is closed.Home~LT~Gliederung 1<( ( @'gSays 'This is the main application window.' or 'The window and the application have the same lifetime.'Home~LT~Gliederung 1<( ( @'DrXXgg RHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPgJoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel oegxV4B1RWhat's new: Glib::RefPtr<> Home~LT~Titel<( (@'DrOb=SVDr& oe}Q(Home~LT~Gliederung 1 oe}QxV4B1bWe can only ref and unref GObjects, and the C++ wrapper must stay alive as long as the C instance.Home~LT~Gliederung 1<( ( @'0You don't care so use the RefPtr<> smartpointer.Home~LT~Gliederung 1<( ( @'For instance, Gdk::Bitmap can only be instantiated with a create() function:Glib::RefPtr bitmap = Gdk::Bitmap::create(window, data, width, height);if(bitmap){ int depth = bitmap->get_depth().}Home~LT~Gliederung 1<( ( @'LM MopNever ref/unref again.Home~LT~Gliederung 1<( ( @'DrXXgg RHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPgJoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel oeixV4B1TWhat's new: Signals improved Home~LT~Titel<( (@'DrObSVDr& oe|J(Home~LT~Gliederung 1q oe|JRxV4B1;~Prefixed by signal_, and accessible via accessors:button.signal_clicked().connect(SigC::slot(*this, &Something::somemethod));Home~LT~Gliederung 1<( ( @'23 3~8We use C++ types, so no need to use wrap() or ref/unref.Home~LT~Gliederung 1<( ( @'DrXXgg RHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPgFJoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel oecxV4B1NWhat's new: Properties Home~LT~Titel<( (@'DrOb|SVDr& oe|J(Home~LT~Gliederung 1 oe|JxV4B1GTK+ properties can be used like so:someobject.property_something().set_value(2);int value = someobject.property_something().get_value();Home~LT~Gliederung 1<( ( @'$%%RS=Change Notification via property_something().signal_changed()Home~LT~Gliederung 1<( ( @'=OProperties are rarely used, but they do seem to be necessary for Gtk::TextView.Home~LT~Gliederung 1<( ( @'DrXXgg VHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPgSJoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel oefxV4B1QWhat's new: miscellaneous Home~LT~Titel<( (@'DrObSVDr& oeIQ(Home~LT~Gliederung 1 oeIQxV4B1r:Include "gtkmm/something.h" instead of"gtk--/something.h"Home~LT~Gliederung 1<( ( @'&'PMethods and classes that are deprecated in GTK+ 2.0 are not wrapped in gtkmm 2.0Home~LT~Gliederung 1<( ( @'EThe GDK wrappers are now auto-generated and are in the Gdk namespace.Home~LT~Gliederung 1<( ( @'sDefault signal handlers previously suffixed with _impl. Now prefixed with on_ - for instance, Button::on_clicked().Home~LT~Gliederung 1<( ( @'Namespaced enums.Home~LT~Gliederung 1<( ( @'DrXXgg RHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPgJoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel oelxV4B1Wgtkmm 2: Implementation Changes Home~LT~Titel<( (@'DrObSVDr& oe|J(Home~LT~Gliederung 1T oe|J5xV4B1BClearer, better documented, more maintainable code-generating codeHome~LT~Gliederung 1<( ( @'BUse of GTK+'s .defs C interface-definition format, parsed by perl.Home~LT~Gliederung 1<( ( @'(Separate .hg/.ccg files, parsed by perl.Home~LT~Gliederung 1<( ( @'1Wrappers for GObject, GtkObject, and Boxed Types.Home~LT~Gliederung 1<( ( @'$Doxygen for reference documentation.Home~LT~Gliederung 1<( ( @'DrXXgg RHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrPgKJoeM`mRDrML8DrMD,DrObSVDr& oe! Home~LT~Titel| oe]xV4B1HMore information Home~LT~Titel<( (@'DrObSVDr& oe|J(Home~LT~Gliederung 1% oe|JxV4B1EIncredibly good documentation athttp://gtkmm.sourceforge.net/gtkmm2/Home~LT~Gliederung 1 <( ( @' !2Helpful people ongtkmm-main@lists.sourceforge.netHome~LT~Gliederung 1 <( ( @'SMany examples and demos, including C++ versions of all of the C examples and demos.Home~LT~Gliederung 1 <( ( @'(Details worked out onirc.gnome.org #c++Home~LT~Gliederung 1 <( ( @'DrXXgg VHome~LT~GliederungDrPg|JoeMVTlDrML8DrMD,DrOb<SVDr&T C(0DrObSVDr& 3G#]# Home~LT~Notizen 3G#]axV4B1LClick to add notesHome~LT~Notizen<( ( @' DrXXgg VHome~LT~GliederungDrXXFGeneric PrinterSGENPRT PostScriptH`Tl`Tld,,lprdefault_queueSGENPRT DrVwP SVDr SVDr:SVDr{{SVDrALayout:SVDr{{SVDr#SVDr SVDr# SVDr0 SVDr1 SVDr3 SVDr4SVDr@SVDr SVDrD SVDrP SVDrQ DrHL DrHL DrHL M'S uK Info 0 Info 1 Info 2 Info 3 |1DA<Oh+'0 h t 8@Q@0:@B,BBScDocumentPool >ddefghijklmnopqrstuwxyz{|}~ddefghijklmnopqrstuvwxyz{~ddefghijklmnpqrstuvwxyz{|}~ddefghijklmnopqtuvwxyz{|}~0'e&@@d d XX'f@XX'g@X'h@X'n@XX'q@:X'u@`Xe'x@eX'z'@X('|Q@ 2222X''}@4 X@'!@adddXA'@ddXC'@X @ 1EditEngineItemPool 6f 0 P 11EditEngineItemPool 6f30{(@pX P 1EditEngineItemPool 6f 0 P 1LEditEngineItemPool 6fB0+ {((@# ppXX P=  () 1EditEngineItemPool / 6f 0I PW  1SEditEngineItemPool 4 6fJ0 {(0@ p|1pXX! P ,  XXS@1EditEngineItemPool  6f 0 P  16EditEngineItemPool  6f30 {(@ pX PPage  1EditEngineItemPool 6f 0  P 1EditEngineItemPool 6f 0 P! 1QEditEngineItemPool 6fB0L{((@DppXX P^ Page /  1EditEngineItemPool U6f 0o P} XXX |@Defaulte'f'Defaulte'f'Defaulte'f'n'u'XX,XJJ'Z@{}''@'A'C'z'|('}''@'A'C'XX,K'Z@}''@'A'C'z'|('}''@'A'C'XX,@h8k=cz G5{P$'m @'ndnddnA'ndndB'C'/=d+9ES[B2 yStandardStandardResultStandardResultf'g'h'Result2ResultResult2xe'HeadingStandardHeadinge'f'g'n'Heading1HeadingHeading1q'StandardStandard}''J'K'ReportStandardReport}''J'K'6t!gBEditEngineItemPool _6f 0y PFܘ@B4y  ®`VTextStarWriter 5.0SW5HDR.0|17!Outline0 #ZSWG, A< -BL!BStandard |,B$BB%BPB.BB/BB(B) GeneralGeneraleNC#,###.00#,###.00SystemNC #,##0.00 CCC#,##0.00 CCCNC$#,##0.--;[RED]-$#,##0.-- $#,##0.---$#,##0.--REDNC$ MM/DD/YYYYMM/DD/YYYY def/SystemNC%MM/DD/YYMM/DD/YY def/SystemNC&NNNNMMMM DD, YYYYNNNNMMMM  DD, YYYYSystemNC' MMM D, YYMMM D, YY def/SystemNC. [HH]:MM:SS.00 [HH ]:MM:SS .00NC3MM/DD/YYYY HH:MM:SS MM/DD/YYYY HH :MM:SS  NCK MMM D, YYYYMMM D, YYYY def/SystemNCL MMMM D, YYYYMMMM  D, YYYY def/SystemNCM NN, MMM D, YYNN, MMM D, YY def/SystemNCNNN, MMMM D, YYYYNN, MMMM  D, YYYY def/SystemNCONNNNMMMM D, YYYYNNNNMMMM  D, YYYY def/SystemNCP D. MMM. YYYYD. MMM. YYYYDIN 5008 (EN 28601)NCQ D. MMMM YYYYD. MMMM  YYYYDIN 5008 (EN 28601)NCRMM-DDMM-DDDIN 5008 (EN 28601)NCSYY-MM-DDYY-MM-DDDIN 5008 (EN 28601)NCT YYYY-MM-DDYYYY-MM-DDDIN 5008 (EN 28601)NCUWWWWNCe"$"#,##0.00;[RED]-"$"#,##0.00  [$$-409]#,##0.00COLOR -[$$-409]#,##0.00REDCOLORCOLOR)[$$-409]#,##0.00;[RED]-[$$-409]#,##0.00NCB\oeJ"B@B[PB signals containers namespacesmemory management GNOME classesWidget arrangementtypesafe signal handlersLicense  DevelopmentBRB |RB |PB gtkmmpure C++pure C++Yes normal C++YesContainer widgets compile-timeLGPL PublicBRB |PB QTmoc extends C++ QT-specificNopointers only, no delete.NoSeparate container and layoutruntimeGPL SecretBRB |BAB"jTN |}BB)Sheet1Default&BB)BdMbP? k*BC Grid color+BGeneric PrinterSGENPRT PostScriptH`Tl`Tld,,lprdefault_queueSGENPRT  #$%&'()*./0123456789:;<=>?@ABCDGHK  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFQRSTU 0WP $' '(. . p. @ . . . . . P. . . !. $. `'. 0*. -. /. 2. p5. @8. ;. =. @. 6')J2< vStandardStandard@SfxDocumentInfo  |1D7 |1D7 uK Info 0 Info 1 Info 2 Info 3 |1D7H <8:q_5 SW5HDR.0|17! Frameformat ZeichenformatTextformatvorlageStandardRoot 5Standard  Illustration Table TextDrawingY .Y .Y .Y  .Pp 2$99 SAAP/=APdddAPddSAAP/=APdddAPddZSW5HDR.0|17C(569a(Build:5169)(SV569)]D!Address Book Fileaddress! Frameformat ZeichenformatTextformatvorlageStandardRoot 5Standard  Illustration Table TextDrawingd !1 4 5*jK standard.dic soffice.dicXsun.dic@ IgnoreAllListY .Y .Y .Y  .6ND T #T T^SThe GTK+ C object model uses prefixed function names and cast macros. For instance:T T?4gtk_button_set_text(GTK_BUTTON(button), "sometext");T T?4gtkmm C++ code is shorter and clearer. For instance:T T'button.set_text("sometext");JGeneric PrinterSGENPRT PostScriptH`Tld,,lprdefault_queueSGENPRTU;U88:]3?F:]3P°:]3? B:] B :] B:] B$:] B0:] B<:] BH:] BT:] B`:]  ZOh+'0 h t 2@C@0:@nv@nv Root Entry!r\V)䰱@Object 1 ®`VCompObjEOle Object 2 aօ)䰱persist elements" SfxDocumentInfo uSfxWindowsSfxStyleSheetsRSummaryInformation( (StarDrawDocument3$1CompObj AOle persist elements"SfxDocumentInfo uSfxWindows,SfxStyleSheets|SummaryInformation(-(StarCalcDocument"ROle 2CompObj3<SfxWindows4SwNumRules5USfxStyleSheets7zSfxDocumentInfo Aupersist elements"OSwPageStyleSheets$PStarWriterDocument&WSummaryInformation(t(