Автор | Сообщение |
gfilatov
|
| модератор
|
Пост N: 699
Зарегистрирован: 25.05.05
|
|
Отправлено: 29.01.08 13:59. Заголовок: Новая версия Расширенного релиза библиотеки MiniGUI (часть V) (продолжение)
Начало темы находится здесь, а теперь АНОНС * АНОНС * АНОНС * АНОНС * АНОНС Готовится к опубликованию новая сборка №48, которая выйдет в конце недели. Если у Вас есть интересные наработки для включения в новый релиз, то сейчас самое удобное время для их отправки мне Кратко, что нового: - исправление обнаруженных ошибок и неточностей кода; - новый класс HEADERIMAGE для Grid и Browse; - свойство Address в Hyperlink может теперь открывать папку или файл на диске; - добавлен NOTABSTOP класс для Browse; - поддержка пользовательских компонентов (заимствована из оффициального релиза); - расширения и исправления в библиотеках TsBrowse и PropGrid; - обновлены сборки Харбор и HMGS-IDE; - новые и обновленные старые примеры (как обычно ).
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|
Петр
|
| постоянный участник
|
Пост N: 1273
Зарегистрирован: 09.10.06
|
|
Отправлено: 01.09.16 09:28. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Особая благодарность - Петру за оказанную помощь |
| Да не за что. А где бету можна скачать? Может к релизу что-то и дополнить можно было бы.
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 998
Зарегистрирован: 11.02.10
|
|
Отправлено: 01.09.16 10:19. Заголовок: Петр пишет: где бет..
Петр пишет: Отправил ссылку на бету по почте Да, до релиза еще далековато, поэтому с удовольствием рассмотрю Ваши дополнения
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1274
Зарегистрирован: 09.10.06
|
|
Отправлено: 01.09.16 12:22. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Отправил ссылку на бету по почте |
| Спасибо. А где можно посмотреть цитата: | * New: 'Enhanced CLASS TTaskDialogEx FUNCTION TaskDialogEx' sample. Contributed by Grigory Filatov <gfilatov@inbox.ru> (see in folder \samples\TaskDialogs\TaskDialogEx) |
|
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 999
Зарегистрирован: 11.02.10
|
|
Отправлено: 01.09.16 12:43. Заголовок: Петр пишет: А где м..
Петр пишет: Здесь Скрытый текст
/* TTaskDialogEx.prg - Using of the inheritance for class function TaskDialog() */ #include "minigui.ch" #include "hbclass.ch" #include "TaskDlgs.ch" CREATE CLASS TTaskDialogEx FUNCTION TaskDialogEx FROM TaskDialog EXPORTED: METHOD Flags( nFlags ) SETGET // 4 METHOD MainIcon( nIcon ) SETGET // 7 METHOD CustomButtons( aCustButton ) SETGET // 11 METHOD VerificationText( cText ) SETGET // 16 METHOD ExpandedInfo( cText ) SETGET // 17 METHOD ExpandedCtrlText( cText ) SETGET // 18 METHOD CollapsedCtrlText( cText ) SETGET // 19 METHOD FooterIcon( nIcon ) SETGET // 20 METHOD CallbackFunc( bFunc ) SETGET // 22 ENDCLASS /* */ METHOD Flags( nFlags ) CLASS TTaskDialogEx IF HB_ISNUMERIC( nFlags ) ::aConfig[ TDC_TASKDIALOG_FLAGS ] := nFlags ENDIF RETURN ::aConfig[ TDC_TASKDIALOG_FLAGS ] /* */ METHOD MainIcon( nIcon ) CLASS TTaskDialogEx IF HB_ISNUMERIC( nIcon ) ::aConfig[ TDC_MAINICON ] := nIcon ENDIF RETURN ::aConfig[ TDC_MAINICON ] /* */ METHOD FooterIcon( nIcon ) CLASS TTaskDialogEx IF HB_ISNUMERIC( nIcon ) ::aConfig[ TDC_FOOTERICON ] := nIcon ENDIF RETURN ::aConfig[ TDC_FOOTERICON ] /* */ METHOD VerificationText( cText ) CLASS TTaskDialogEx IF HB_ISSTRING( cText ) .OR. HB_ISNUMERIC( cText ) ::aConfig[ TDC_VERIFICATIONTEXT ] := cText ENDIF RETURN ::aConfig[ TDC_VERIFICATIONTEXT ] /* */ METHOD ExpandedInfo( cText ) CLASS TTaskDialogEx IF HB_ISSTRING( cText ) .OR. HB_ISNUMERIC( cText ) ::aConfig[ TDC_EXPANDEDINFORMATION ] := cText ENDIF RETURN ::aConfig[ TDC_EXPANDEDINFORMATION ] /* */ METHOD ExpandedCtrlText( cText ) CLASS TTaskDialogEx IF HB_ISSTRING( cText ) .OR. HB_ISNUMERIC( cText ) ::aConfig[ TDC_EXPANDEDCONTROLTEXT ] := cText ENDIF RETURN ::aConfig[ TDC_EXPANDEDCONTROLTEXT ] /* */ METHOD CollapsedCtrlText( cText ) CLASS TTaskDialogEx IF HB_ISSTRING( cText ) .OR. HB_ISNUMERIC( cText ) ::aConfig[ TDC_COLLAPSEDCONTROLTEXT ] := cText ENDIF RETURN ::aConfig[ TDC_COLLAPSEDCONTROLTEXT ] /* */ METHOD CustomButtons( aCustButton ) CLASS TTaskDialogEx IF HB_ISARRAY( aCustButton ) .AND. Len( aCustButton ) > 0 ::aConfig[ TDC_BUTTON ] := Len( aCustButton ) ::aConfig[ TDC_TASKDIALOG_BUTTON ] := aCustButton ENDIF RETURN ::aConfig[ TDC_TASKDIALOG_BUTTON ] /* */ METHOD CallbackFunc( bFunc ) CLASS TTaskDialogEx IF HB_ISBLOCK( bFunc ) ::aConfig[ TDC_CALLBACK ] := bFunc ENDIF RETURN ::aConfig[ TDC_CALLBACK ] /* */ PROCEDURE main() LOCAL nResult SET LOGFILE TO "_debug.txt" WITH OBJECT TaskDialogEx() :Title := 'TaskDialog with expandable text & footer with hyperlink' :Instruction := 'What do you think about of the Windows Vista TaskDialog?' :Content := 'The new TaskDialog provides a standard & enhanced way for interacting with the user' :Footer := "Optional footer text with an icon can be included" :MainIcon := TD_QUESTION :FooterIcon := TD_WARNING_ICON :ExpandedInfo := "Any expanded content text for the task dialog is shown " + ; "here and the text will automatically wrap as needed." :CollapsedCtrlText := "Click to see more" :ExpandedCtrlText := "Hide Expanded Text" :CallbackFunc := {|h,n,w,l| callback( h,n,w,l )} nResult := :Execute() IF nResult == 0 ? "Button ID is", :ButtonResult ENDIF ENDWITH RETURN STATIC FUNCTION callback( hWnd, nNotification, wParam, lParam ) LOCAL lResult := .F. /* To prevent the task dialog from closing, the application must return FALSE, otherwise the task dialog is closed */ LOCAL hResp := { 1=>"OK", 2=>"CANCEL", 3=>"ABORT", 4=>"RETRY", 5=>"IGNORE", 6=>"YES", 7=>"NO", 8=>"CLOSE" } SWITCH nNotification CASE TDN_BUTTON_CLICKED // wParam - an int that specifies the ID of the button or comand link that was selected IF hb_HPos( hResp, wParam ) != 0 IF wParam == IDOK ? "Button OK was pressed" ENDIF lResult := .T. ENDIF EXIT CASE TDN_HYPERLINK_CLICKED ShellExecute( hWnd, "open", lParam, , , SW_SHOW ) END SWITCH RETURN lResult
|
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1282
Зарегистрирован: 09.10.06
|
|
Отправлено: 04.09.16 11:54. Заголовок: Andrey пишет: А мож..
Andrey пишет: цитата: | А можно обновить MiniGUI\SOURCE\HbPgSql ? |
| Наверное для Андрея обновление уже не актуально Andrey пишет: цитата: | Может в Харборе взять новее библиотеки - hbpgsql ? |
| Функционально версии hbpgsql в MiniGUI и Harbour (https://github.com/harbour/core/) не отличаются. Более того, hbpgsql от MiniGUI есть старой версией harbour hbpgsql. Не учтены сл. важные поправки 2014-03-27 16:13 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl) * contrib/hbpgsql/rddcopy.c ! fixed typos in my recent modification and potential memory corruption and/or wrong output due to ugly hack for last field terminator in old code. Thanks to Aleksander Czajczynski for reporting the problem. К тому же rddcopy.c является юниксовым файлом (перевод строки LF вместо CRLF), что выглядит странно для MiniGUI 2011-10-20 15:21 UTC+0200 Viktor Szakats (vszakats.net/harbour) * contrib/hbpgsql/hbpgsql.hbx * contrib/hbpgsql/hbpgsql.hbp - contrib/hbpgsql/hdbcpg.prg - Deleted HDBC class layer due references to deprecated wrapper function which caused link errors in dynamic builds or HDBC apps. Please readd the file if interested in making this technially simple fix. Поэтому с чистой совестью можете копировать файлы из harbour\contrib\hbpgsql и пересобирать библиотеку, как я уже говорил, новой функциональности вы не получите. Работать должно стабильнее. Изменения в копирайтах и т.п. не в счет.
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1283
Зарегистрирован: 09.10.06
|
|
Отправлено: 04.09.16 12:10. Заголовок: Вот hbpgsql с harbou..
Вот hbpgsql с harbour-core (https://github.com/vszakats/harbour-core) выглядит сейчас более интересно, в основном за счет изменений в tpostgre.prg В часности, расширен METHOD New( cHost, cDatabase, cUser, cPass, nPort, cSchema, hCustom ) :New( ..., { 'timeout' => '10' } )
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5093
Зарегистрирован: 12.09.06
|
|
Отправлено: 08.09.16 16:45. Заголовок: Григорий, а нельзя л..
Григорий, а нельзя ли прикрутить показ иконок (ICO) для объекта MENUITEM ? SET MENUSTYLE EXTENDED SetMenuBitmapHeight( 48 ) DEFINE CONTEXT MENU OF &cForm MENUITEM "Меню..." ACTION .. IMAGE "W_add32х32"
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 1000
Зарегистрирован: 11.02.10
|
|
Отправлено: 08.09.16 22:04. Заголовок: Andrey пишет: нельз..
Andrey пишет: цитата: | нельзя ли прикрутить показ иконок (ICO) для объекта MENUITEM |
| Да, это возможно при добавлении в Ваш проект следующих 2-х функций цитата: | extern HBITMAP Icon2Bmp( HICON hIcon ); HB_FUNC( MENUITEM_SETICON ) { HBITMAP himage1; HICON hIcon; hIcon = ( HICON ) LoadImage( GetModuleHandle( NULL ), hb_parc( 3 ), IMAGE_ICON, 0, 0, LR_DEFAULTCOLOR ); if( hIcon == NULL ) hIcon = ( HICON ) LoadImage( 0, hb_parc( 3 ), IMAGE_ICON, 0, 0, LR_LOADFROMFILE | LR_DEFAULTCOLOR ); // convert icon to bitmap himage1 = Icon2Bmp( hIcon ); if( newStyle ) { MENUITEMINFO MenuItemInfo; MYMENUITEM * pmyMenuItem; MenuItemInfo.cbSize = sizeof( MENUITEMINFO ); MenuItemInfo.fMask = MIIM_DATA; if( GetMenuItemInfo( ( HMENU ) HB_PARNL( 1 ), hb_parni( 2 ), FALSE, &MenuItemInfo ) ) { pmyMenuItem = ( MYMENUITEM * ) MenuItemInfo.dwItemData; if( pmyMenuItem->hBitmap != NULL ) DeleteObject( pmyMenuItem->hBitmap ); pmyMenuItem->hBitmap = himage1; } } HB_RETNL( ( LONG_PTR ) himage1 ); } |
| и на PRG уровне цитата: | *-----------------------------------------------------------------------------* PROCEDURE _SetMenuItemIcon ( ItemName , FormName , Icon ) *-----------------------------------------------------------------------------* LOCAL a := _GetMenuIds ( ItemName , FormName ) _HMG_aControlBrushHandle [GetControlIndex ( ItemName , FormName )] := MenuItem_SetIcon ( a [1] , a [2] , Icon ) RETURN |
| Пример использования: цитата: | ... POPUP "&Help" FONT Font0 ITEM "Index" IMAGE "BMPHELP" ITEM "Using help" SEPARATOR ITEM "Online forum" IMAGE "WORLD" ITEM "Buy/register" IMAGE "CART_ADD" SEPARATOR ITEM "About" NAME SetIcon ACTION MsgInfo ( MiniGuiVersion() ) END POPUP END MENU _SetMenuItemIcon( "SetIcon" , "Form_1" , "demo.ico" ) |
|
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5096
Зарегистрирован: 12.09.06
|
|
Отправлено: 09.09.16 19:44. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Да, это возможно при добавлении в Ваш проект следующих 2-х функций |
| Спасибо БОЛЬШОЕ ! А по умолчанию в библиотеку добавить сразу нельзя ?
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 1001
Зарегистрирован: 11.02.10
|
|
Отправлено: 09.09.16 20:01. Заголовок: Andrey пишет: в биб..
Andrey пишет: цитата: | в библиотеку добавить сразу нельзя ? |
| Уже добавил эти функции в следующую сборку
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5097
Зарегистрирован: 12.09.06
|
|
Отправлено: 09.09.16 21:24. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Уже добавил эти функции в следующую сборку |
| Спасибо БОЛЬШОЕ !
|
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5102
Зарегистрирован: 12.09.06
|
|
Отправлено: 10.09.16 16:33. Заголовок: Приятно увидеть свои..
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 1002
Зарегистрирован: 11.02.10
|
|
Отправлено: 12.09.16 16:19. Заголовок: Просто к сведению. В..
Просто к сведению. Выпустил сегодня первый RC для новой сборки библиотеки. Полный список изменений см. ниже Скрытый текст
* Fixed: Wrong executing of a new debug logging at console or mixed appls. Problem was reported by Mitja Podgornik. You can enable the logging output if you uncommented the constant _HMG_OUTLOG in the minigui header file. By default this is turned off to preserve the proper Harbour functionality. (look at minigui.ch in folder \include) Syntax of the logging output is below: ? <explist,...> ?? <explist,...> ?a <arr> ?v <arr> There is also the optional command SET LOGFILE TO <filename>. (see demo in folder \samples\Basic\OptionBox) * New: The Task Dialog support is based upon the Vista's TaskDialog API: - win_TaskDialog0( ,, cWindowTitle, cMainMessage, cContent, ; dwCommonButtons, nIcon, @nButton ) -> nResult - win_TaskDialogIndirect0( aConfig, @nButton, @nRadioButton, ; @lVerificationFlagChecked ) -> nResult - simple CLASS TTaskDialog FUNCTION TaskDialog. Usage: WITH OBJECT TaskDialog() :Title := 'Simple TaskDialog' :Instruction := 'My Main Text here' :Content := 'A simple text only function TaskDialog()' IF :Execute() == 0 MsgInfo( :ButtonResult ) ENDIF ENDWITH Note: This feature works properly at Windows Vista or later only. Contributed by Petr Chornyj <myorg63@mail.ru> (see demos in folder \samples\Basic\TaskDialogs) * Enhanced: The OwnerDraw Menu style supports the optional function: - _SetMenuItemIcon( ItemName , FormName , Icon ). Contributed by Grigory Filatov <gfilatov@inbox.ru> (see demo in folder \samples\Advanced\MenuEx) * Enhanced: Added the following features to batch\Compile.bat file: - Descriptions of the syntax was moved to a separate file. - Added the reading of the variables from an external minigui.cfg in the batch files Compile.bat and MakeLibOpt.bat. The reading takes place if a variable MG_ROOT is not defined. If the configuration file is not present, the sequence of actions is the same as before. Contributed by Petr Chornyj <myorg63@mail.ru> * Updated: HbPgSQL harbour library: - update for using PostgreSQL version 9.5. Contributed by Petr Chornyj <myorg63@mail.ru> (see in folder \Source\HbPgSql) * Updated: HbSQLite3 library: - update for using SQLITE3 version 3.14.1. Contributed by Grigory Filatov <gfilatov@inbox.ru> * Updated: Harbour Compiler 3.2.0dev (SVN 2016-09-05 17:04): * Updated: HbSqlDD library source code (see in folder \Source\HbSqlDD). Contributed by Grigory Filatov <gfilatov@inbox.ru> (look at ReadMe.txt in folder \harbour) * New: 'MultiThread usage in HMG' sample. Based upon a contribution of Roberto Lopez <mail.box.hmg@gmail.com>. Enhanced by Pete D. <pete_westg/at/yahoo.gr> (see in folder \samples\Basic\MultiThread) * New: 'Enhanced CLASS TTaskDialogEx FUNCTION TaskDialogEx' sample. Contributed by Grigory Filatov <gfilatov@inbox.ru> (see in folder \samples\Basic\TaskDialogs\TaskDialogEx) * New: 'Quick Message functions are based on TaskDialog API' sample. Contributed by Grigory Filatov <gfilatov@inbox.ru> (see in folder \samples\Basic\TaskDialogs\ShowMessage) * New: 'Directory Watcher' sample is based on 'Change Notification' WinAPI. Based upon a contribution of Petr Chornyj <myorg63@mail.ru>. Adapted for Minigui Extended by Grigory Filatov <gfilatov@inbox.ru> (see in folder \samples\Advanced\DirWatcher) * Updated: 'Get Form Client Height' sample. Based upon a contribution of Russian user SergKis (see in folder \samples\Basic\GetClientSize) * Updated: The following samples are revised for compatibility with the latest Harbour changes: - \Utils\SqlDBU; - \samples\Basic\Charts_2; - \samples\Advanced\MSSQL; - \samples\Advanced\MySqlDD; - \samples\Advanced\OdbcDD; - \samples\Advanced\Sqlit3DD; - \samples\Advanced\Tsb_sqlite. Contributed by Grigory Filatov <gfilatov@inbox.ru>
| Благодарю за Ваше внимание
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1293
Зарегистрирован: 09.10.06
|
|
Отправлено: 17.09.16 17:35. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Выпустил сегодня первый RC для новой сборки библиотеки |
| Так и не понял куда вы их выкладываете..
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 1004
Зарегистрирован: 11.02.10
|
|
Отправлено: 17.09.16 18:44. Заголовок: Петр пишет: куда вы..
Петр пишет: Ссылку на новую сборку отправил Вам по почте Буду благодарен за любые комментарии...
|
|
|
Dima
|
| |
Пост N: 6017
Зарегистрирован: 17.05.05
|
|
Отправлено: 19.09.16 11:35. Заголовок: gfilatov2002 А нель..
gfilatov2002 А нельзя ли в модальном окне возле крестика закрытия окна добавить кнопку минимизации , при нажатии на которую сворачивалось бы все приложение ?
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1230
Зарегистрирован: 17.02.12
|
|
Отправлено: 19.09.16 11:54. Заголовок: Dima Зачем эти ручн..
Dima Зачем эти ручные манипуляции ? Андрей показал решение. Можно в любое окно сунуть такое: FUNC MinAll( lMinimize) LOCAL i, cWnd, cForm := ThisWindow.Name If lMinimize For i := 1 To Len(_HMG_aFormNames) cWnd := _HMG_aFormNames [ i ] If cWnd != cForm .and. _IsWindowDefined(cWnd) // что Андрей писал EndIf Next EndIf RETURN NIL
|
|
|
Dima
|
| |
Пост N: 6018
Зарегистрирован: 17.05.05
|
|
Отправлено: 19.09.16 12:23. Заголовок: SergKis я о кнопке ..
SergKis я о кнопке
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1231
Зарегистрирован: 17.02.12
|
|
Отправлено: 19.09.16 12:36. Заголовок: Dima пишет я о кнопк..
Dima пишет Если именно о кнопке, то делай стандартный заголовок с (Minimaize, Maximaize) кнопками и вешай на события блоки кода с обработчиками (ON MINIMAIZE ... ON MAXIMAIZE ...), но по мне решение на ON INIT MinAll( .T. ) и ON RELEASE MaxAll( .T. ) от внешнего управления (переменной) лучше. Можно и свой Title окна сделать (в примерах где то было) со своими кнопками\контролами ... и обрабатывать нажатия так же
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 1005
Зарегистрирован: 11.02.10
|
|
Отправлено: 19.09.16 13:20. Заголовок: Dima пишет: нельзя ..
Dima пишет: цитата: | нельзя ли в модальном окне возле крестика закрытия окна добавить кнопку минимизации |
| Можно, и это всего одна строчка в коде (см.пример ниже) Скрытый текст
#include "minigui.ch" Function Main SET DEFAULT ICON TO GetStartupFolder() + "\new.ico" SET CENTERWINDOW RELATIVE PARENT DEFINE WINDOW Form_1 ; AT 0,0 ; WIDTH 600 HEIGHT 400 ; TITLE 'MiniGUI StatusBar Demo (Based Upon a Contribution Of Janusz Pora)' ; MAIN ; FONT 'Arial' SIZE 10 DEFINE MAIN MENU POPUP '&StatusBar Test' ITEM 'Set StatusBar Item 1' ACTION Form_1.StatusBar.Item(1) := "New value 1" ITEM 'Set StatusBar Item 2' ACTION Form_1.StatusBar.Item(2) := "New value 2" ITEM 'Set StatusBar Item Icon' ; ACTION ( Form_1.StatusBar.Icon (3) := 'New.ico', Form_1.StatusBar.Item(3) := "A Smile!" ) ITEM 'Open Other Window...' ACTION Modal_Click() END POPUP POPUP '&Help' ITEM '&About' ACTION MsgInfo ("MiniGUI StatusBar Demo") END POPUP END MENU DEFINE STATUSBAR FONT 'MS Sans Serif' SIZE 8 STATUSITEM "Item 1" ACTION MsgInfo('Click! 1') STATUSITEM "Item 2" WIDTH 100 ACTION MsgInfo('Click! 2') STATUSITEM 'A Car!' WIDTH 100 ICON 'Car.Ico' CLOCK DATE END STATUSBAR END WINDOW CENTER WINDOW Form_1 ACTIVATE WINDOW Form_1 Return Nil *-----------------------------------------------------------------------------* Procedure Modal_Click *-----------------------------------------------------------------------------* DEFINE WINDOW Form_2 ; AT 0,0 ; WIDTH 400 HEIGHT 300 ; TITLE 'StatusBar Test' ; MODAL NOSIZE DEFINE STATUSBAR STATUSITEM "Modal 1" WIDTH 100 ACTION MsgInfo('Click! 1') STATUSITEM "Modal 2" WIDTH 100 ACTION MsgInfo('Click! 2') END STATUSBAR END WINDOW Form_2.MinButton := .T. CENTER WINDOW Form_2 ACTIVATE WINDOW Form_2 Return
|
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|