; Module/File: LIG_ColumnAlignmentSet2.pb ; Function: LIG: Ausrichtung des Spalteninhaltes - Linux gtk2/gtk3 ; Author: Omi + freak-example ; Date: Sep. 05, 2015 ; Version: 0.1 ; Target Compiler: PureBasic 5.22/5.31/5.40 ; Target OS: Linux: (X/K/L)ubuntu, Mint, 32/64, Ascii/Uni ;-------------------------------------------------------------- EnableExplicit ImportC "" g_object_set_double(*object, property.p-utf8, value.D, null) As "g_object_set" gtk_tree_view_column_set_alignment(*tree_column, xalign.f) gtk_cell_layout_get_cells(*cell_layout) EndImport ;Alignment: ; 0.0 = Left ; 0.5 = Center ; 1.0 = Right ; Object constants #MainWin= 0 #LIG = 0 #WinX= 300 #WinY= 200 #WinW= 500 #WinH= 400 Global.i gEvent, gQuit Procedure SetListIconColumnFormat(Gadget, Colmn, Alignment.d) Protected *Column, *CellRenderers Protected.l Count, Index *Column = gtk_tree_view_get_column_(GadgetID(Gadget), Colmn) If *Column gtk_tree_view_column_set_alignment(*Column, Alignment); title-alignment *CellRenderers= gtk_cell_layout_get_cells(*Column) If *CellRenderers Count = g_list_length_(*CellRenderers); number of columns For Index = 0 To Count-1 g_object_set_double(g_list_nth_data_(*CellRenderers, Index), "xalign", Alignment, #Null) Next Index g_list_free_(*CellRenderers) EndIf gtk_widget_queue_draw_(GadgetID(Gadget)); force Redraw EndIf EndProcedure ;- ;- Example Procedure CreateWindow_Main() Protected.l I, O Protected *Column If OpenWindow(#MainWin, #WinX, #WinY, #WinW, #WinH, "Column alignment gtk2/gtk3 ", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) ListIconGadget(#LIG, 5, 5, 480, 380, "Left", 70, #PB_ListIcon_AlwaysShowSelection | #PB_ListIcon_GridLines | #PB_ListIcon_CheckBoxes) AddGadgetColumn(#LIG, O, "Mid", 70) AddGadgetColumn(#LIG, O, "Right", 70) For O= 3 To 4 AddGadgetColumn(#LIG, O, "column "+Str(O+ 1), 70) Next O For I= 0 To 19 AddGadgetItem(#LIG, -1, Str(I)+"-0") For O= 1 To 4 SetGadgetItemText(#LIG, I, Str(I)+"-"+Str(O), O) Next O Next I EndIf EndProcedure CreateWindow_Main() SetListIconColumnFormat(#LIG, 0, 0.0); JustifyColumnLeft SetListIconColumnFormat(#LIG, 1, 0.5); JustifyColumnCenter SetListIconColumnFormat(#LIG, 2, 1.0); JustifyColumnRight Repeat gEvent= WaitWindowEvent() Select gEvent Case #PB_Event_CloseWindow gQuit= #True EndSelect Until gQuit ; IDE Options = PureBasic 5.44 LTS (Linux - x86) ; CursorPosition = 8 ; Folding = - ; EnableUnicode ; EnableXP